[INFO] fetching crate unionize 0.3.0...
[INFO] testing unionize-0.3.0 against 1.83.0 for beta-1.84.0-4-retry
[INFO] extracting crate unionize 0.3.0 into /workspace/builds/worker-5-tc1/source
[INFO] validating manifest of crates.io crate unionize 0.3.0 on toolchain 1.83.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.83.0" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] started tweaking crates.io crate unionize 0.3.0
[INFO] finished tweaking crates.io crate unionize 0.3.0
[INFO] tweaked toml for crates.io crate unionize 0.3.0 written to /workspace/builds/worker-5-tc1/source/Cargo.toml
[INFO] crate crates.io crate unionize 0.3.0 already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.83.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded xs233 v0.3.0
[INFO] [stderr]   Downloaded serde_cbor v0.10.2
[INFO] [stderr]   Downloaded sise v0.8.0
[INFO] [stderr]   Downloaded xs233-sys v0.2.0
[INFO] [stderr]   Downloaded prettyplease v0.2.5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 438ffbca2a7aafdf43285804d3820440da40110b19fbfe410117eaec8ff1b0b6
[INFO] running `Command { std: "docker" "start" "-a" "438ffbca2a7aafdf43285804d3820440da40110b19fbfe410117eaec8ff1b0b6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "438ffbca2a7aafdf43285804d3820440da40110b19fbfe410117eaec8ff1b0b6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "438ffbca2a7aafdf43285804d3820440da40110b19fbfe410117eaec8ff1b0b6", kill_on_drop: false }`
[INFO] [stdout] 438ffbca2a7aafdf43285804d3820440da40110b19fbfe410117eaec8ff1b0b6
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 3aa226bc42822e83adb794343990ec05f8ee49978edf1c5f0c9b1008231c8720
[INFO] running `Command { std: "docker" "start" "-a" "3aa226bc42822e83adb794343990ec05f8ee49978edf1c5f0c9b1008231c8720", 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 typenum v1.16.0
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling libloading v0.7.4
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling either v1.8.1
[INFO] [stderr]    Compiling regex-syntax v0.7.1
[INFO] [stderr]    Compiling bindgen v0.65.1
[INFO] [stderr]    Compiling io-lifetimes v1.0.10
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling rustix v0.37.11
[INFO] [stderr]    Compiling peeking_take_while v0.1.2
[INFO] [stderr]    Compiling lazycell v1.3.0
[INFO] [stderr]    Compiling shlex v1.1.0
[INFO] [stderr]    Compiling libm v0.2.6
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling cc v1.0.79
[INFO] [stderr]    Compiling linux-raw-sys v0.3.1
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling clang-sys v1.6.1
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling serde v1.0.164
[INFO] [stderr]    Compiling fastrand v1.9.0
[INFO] [stderr]    Compiling syn v2.0.16
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling which v4.4.0
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling byteorder v1.4.3
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling bit-vec v0.6.3
[INFO] [stderr]    Compiling cpufeatures v0.2.7
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling nom v2.2.1
[INFO] [stderr]    Compiling half v1.8.2
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling quick-error v2.0.1
[INFO] [stderr]    Compiling procinfo v0.4.2
[INFO] [stderr]    Compiling subtle v2.5.0
[INFO] [stderr]    Compiling sise v0.8.0
[INFO] [stderr]    Compiling bit-set v0.5.3
[INFO] [stderr]    Compiling regex v1.8.1
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling getrandom v0.2.9
[INFO] [stderr]    Compiling wait-timeout v0.2.0
[INFO] [stderr]    Compiling digest v0.10.6
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling sha2 v0.10.6
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling rand_xorshift v0.3.0
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling cexpr v0.6.0
[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 40.06s
[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" "3aa226bc42822e83adb794343990ec05f8ee49978edf1c5f0c9b1008231c8720", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "3aa226bc42822e83adb794343990ec05f8ee49978edf1c5f0c9b1008231c8720", kill_on_drop: false }`
[INFO] [stdout] 3aa226bc42822e83adb794343990ec05f8ee49978edf1c5f0c9b1008231c8720
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] e950985350b1e2f9ecadf20b366bdf9d1e3f27e610dd83437fa17327cad927a3
[INFO] running `Command { std: "docker" "start" "-a" "e950985350b1e2f9ecadf20b366bdf9d1e3f27e610dd83437fa17327cad927a3", 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 6.37s
[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" "e950985350b1e2f9ecadf20b366bdf9d1e3f27e610dd83437fa17327cad927a3", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e950985350b1e2f9ecadf20b366bdf9d1e3f27e610dd83437fa17327cad927a3", kill_on_drop: false }`
[INFO] [stdout] e950985350b1e2f9ecadf20b366bdf9d1e3f27e610dd83437fa17327cad927a3
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:f3a9d4ad9d972b27faf3965f35b62e55ba32bbce8f20bc8fe909558a86702fde" "/opt/rustwide/cargo-home/bin/cargo" "+1.83.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 4a09b0eac8b270e3996982521e806fce1c0ee9731c7790a14b26c26b3471edb3
[INFO] running `Command { std: "docker" "start" "-a" "4a09b0eac8b270e3996982521e806fce1c0ee9731c7790a14b26c26b3471edb3", 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.24s
[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-04d0b592955eb8bf)
[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 query::split::test::split_correctness ... ok
[INFO] [stdout] test range::tests::serialize_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: {40, 93, 94, 104, 116, 125, 163, 175, 206, 224, 244, 247, 254, 272, 279, 283, 297, 328, 333, 360, 362, 363, 364, 374, 386, 387, 410, 415, 416, 424, 442, 456, 495, 505, 511, 514, 554, 621, 633, 635, 637, 643, 649, 677, 683, 694, 752, 759, 764, 765, 770, 771, 798, 799, 835, 844, 871, 872, 884, 888, 890, 919, 940, 945, 993}
[INFO] [stdout] b items: {15, 25, 49, 53, 57, 66, 72, 82, 92, 96, 114, 135, 171, 172, 192, 203, 219, 222, 255, 269, 279, 299, 312, 323, 339, 372, 376, 380, 393, 405, 424, 434, 449, 455, 505, 527, 558, 564, 566, 573, 589, 606, 619, 643, 661, 667, 672, 674, 690, 705, 706, 710, 713, 729, 765, 799, 809, 830, 858, 868, 871, 875, 876, 877, 881, 887, 890, 892, 894, 904, 913, 927, 944, 946, 982}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(40, 994), fp: EncodedCountingMonoid(65, SumMonoid(33546)) }], item_sets: [ItemSet { range: Range(994, 40), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(40, 573), fp: EncodedCountingMonoid(37, SumMonoid(10479)) }, Fingerprint { range: Range(573, 994), fp: EncodedCountingMonoid(36, SumMonoid(28445)) }], item_sets: [ItemSet { range: Range(994, 40), items: [15, 25], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(40, 360), fp: EncodedCountingMonoid(19, SumMonoid(3877)) }, Fingerprint { range: Range(360, 573), fp: EncodedCountingMonoid(18, SumMonoid(7738)) }, Fingerprint { range: Range(573, 771), fp: EncodedCountingMonoid(14, SumMonoid(9682)) }, Fingerprint { range: Range(771, 994), fp: EncodedCountingMonoid(14, SumMonoid(12249)) }], item_sets: [], wants: [15, 25], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(40, 192), fp: EncodedCountingMonoid(12, SumMonoid(1159)) }, Fingerprint { range: Range(192, 360), fp: EncodedCountingMonoid(11, SumMonoid(2912)) }, Fingerprint { range: Range(360, 449), fp: EncodedCountingMonoid(7, SumMonoid(2784)) }, Fingerprint { range: Range(449, 573), fp: EncodedCountingMonoid(7, SumMonoid(3624)) }, Fingerprint { range: Range(573, 674), fp: EncodedCountingMonoid(8, SumMonoid(5030)) }, Fingerprint { range: Range(674, 771), fp: EncodedCountingMonoid(8, SumMonoid(5692)) }, Fingerprint { range: Range(771, 887), fp: EncodedCountingMonoid(10, SumMonoid(8544)) }, Fingerprint { range: Range(887, 994), fp: EncodedCountingMonoid(10, SumMonoid(9179)) }], item_sets: [], wants: [], provide: [(15, true), (25, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(40, 116), fp: EncodedCountingMonoid(4, SumMonoid(331)) }, Fingerprint { range: Range(116, 192), fp: EncodedCountingMonoid(4, SumMonoid(579)) }, Fingerprint { range: Range(192, 279), fp: EncodedCountingMonoid(6, SumMonoid(1447)) }, Fingerprint { range: Range(279, 360), fp: EncodedCountingMonoid(5, SumMonoid(1520)) }, Fingerprint { range: Range(360, 387), fp: EncodedCountingMonoid(6, SumMonoid(2209)) }, Fingerprint { range: Range(387, 449), fp: EncodedCountingMonoid(6, SumMonoid(2494)) }, Fingerprint { range: Range(449, 511), fp: EncodedCountingMonoid(3, SumMonoid(1456)) }, Fingerprint { range: Range(511, 573), fp: EncodedCountingMonoid(3, SumMonoid(1579)) }, Fingerprint { range: Range(573, 637), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(637, 674), fp: EncodedCountingMonoid(3, SumMonoid(1929)) }, Fingerprint { range: Range(674, 759), fp: EncodedCountingMonoid(4, SumMonoid(2806)) }, Fingerprint { range: Range(759, 771), fp: EncodedCountingMonoid(4, SumMonoid(3058)) }, Fingerprint { range: Range(771, 844), fp: EncodedCountingMonoid(4, SumMonoid(3203)) }, Fingerprint { range: Range(844, 887), fp: EncodedCountingMonoid(4, SumMonoid(3471)) }, Fingerprint { range: Range(887, 940), fp: EncodedCountingMonoid(3, SumMonoid(2697)) }, Fingerprint { range: Range(940, 994), fp: EncodedCountingMonoid(3, SumMonoid(2878)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(40, 82), fp: EncodedCountingMonoid(5, SumMonoid(297)) }, Fingerprint { range: Range(82, 116), fp: EncodedCountingMonoid(4, SumMonoid(384)) }, Fingerprint { range: Range(192, 222), fp: EncodedCountingMonoid(3, SumMonoid(614)) }, Fingerprint { range: Range(222, 279), fp: EncodedCountingMonoid(3, SumMonoid(746)) }, Fingerprint { range: Range(279, 323), fp: EncodedCountingMonoid(3, SumMonoid(890)) }, Fingerprint { range: Range(674, 710), fp: EncodedCountingMonoid(4, SumMonoid(2775)) }, Fingerprint { range: Range(710, 759), fp: EncodedCountingMonoid(3, SumMonoid(2152)) }, Fingerprint { range: Range(844, 876), fp: EncodedCountingMonoid(4, SumMonoid(3472)) }, Fingerprint { range: Range(876, 887), fp: EncodedCountingMonoid(3, SumMonoid(2634)) }, Fingerprint { range: Range(887, 904), fp: EncodedCountingMonoid(4, SumMonoid(3563)) }, Fingerprint { range: Range(904, 940), fp: EncodedCountingMonoid(3, SumMonoid(2744)) }], item_sets: [ItemSet { range: Range(116, 172), items: [135, 171], want_response: true }, ItemSet { range: Range(172, 192), items: [172], want_response: true }, ItemSet { range: Range(323, 360), items: [323, 339], want_response: true }, ItemSet { range: Range(360, 380), items: [372, 376], want_response: true }, ItemSet { range: Range(380, 387), items: [380], want_response: true }, ItemSet { range: Range(387, 424), items: [393, 405], want_response: true }, ItemSet { range: Range(424, 449), items: [424, 434], want_response: true }, ItemSet { range: Range(449, 505), items: [449, 455], want_response: true }, ItemSet { range: Range(505, 511), items: [505], want_response: true }, ItemSet { range: Range(511, 564), items: [527, 558], want_response: true }, ItemSet { range: Range(564, 573), items: [564, 566], want_response: true }, ItemSet { range: Range(573, 606), items: [573, 589], want_response: true }, ItemSet { range: Range(606, 637), items: [606, 619], want_response: true }, ItemSet { range: Range(637, 667), items: [643, 661], want_response: true }, ItemSet { range: Range(667, 674), items: [667, 672], want_response: true }, ItemSet { range: Range(759, 771), items: [765], want_response: true }, ItemSet { range: Range(771, 830), items: [799, 809], want_response: true }, ItemSet { range: Range(830, 844), items: [830], want_response: true }, ItemSet { range: Range(940, 982), items: [944, 946], want_response: true }, ItemSet { range: Range(982, 994), items: [982], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(222, 254), fp: EncodedCountingMonoid(3, SumMonoid(715)) }], item_sets: [ItemSet { range: Range(116, 172), items: [116, 125, 163], want_response: false }, ItemSet { range: Range(172, 192), items: [175], want_response: false }, ItemSet { range: Range(323, 360), items: [328, 333], want_response: false }, ItemSet { range: Range(360, 380), items: [360, 362, 363, 364, 374], want_response: false }, ItemSet { range: Range(380, 387), items: [386], want_response: false }, ItemSet { range: Range(387, 424), items: [387, 410, 415, 416], want_response: false }, ItemSet { range: Range(424, 449), items: [424, 442], want_response: false }, ItemSet { range: Range(449, 505), items: [456, 495], want_response: false }, ItemSet { range: Range(505, 511), items: [505], want_response: false }, ItemSet { range: Range(511, 564), items: [511, 514, 554], want_response: false }, ItemSet { range: Range(564, 573), items: [], want_response: false }, ItemSet { range: Range(573, 606), items: [], want_response: false }, ItemSet { range: Range(606, 637), items: [621, 633, 635], want_response: false }, ItemSet { range: Range(637, 667), items: [637, 643, 649], want_response: false }, ItemSet { range: Range(667, 674), items: [], want_response: false }, ItemSet { range: Range(759, 771), items: [759, 764, 765, 770], want_response: false }, ItemSet { range: Range(771, 830), items: [771, 798, 799], want_response: false }, ItemSet { range: Range(830, 844), items: [835], want_response: false }, ItemSet { range: Range(940, 982), items: [940, 945], want_response: false }, ItemSet { range: Range(982, 994), items: [993], want_response: false }, ItemSet { range: Range(40, 82), items: [40], want_response: true }, ItemSet { range: Range(82, 104), items: [93, 94], want_response: true }, ItemSet { range: Range(104, 116), items: [104], want_response: true }, ItemSet { range: Range(192, 222), items: [206], want_response: true }, ItemSet { range: Range(254, 279), items: [254, 272], want_response: true }, ItemSet { range: Range(279, 297), items: [279, 283], want_response: true }, ItemSet { range: Range(297, 323), items: [297], want_response: true }, ItemSet { range: Range(674, 694), items: [677, 683], want_response: true }, ItemSet { range: Range(694, 710), items: [694], want_response: true }, ItemSet { range: Range(710, 759), items: [752], want_response: true }, ItemSet { range: Range(844, 872), items: [844, 871], want_response: true }, ItemSet { range: Range(872, 876), items: [872], want_response: true }, ItemSet { range: Range(876, 887), items: [884], want_response: true }, ItemSet { range: Range(887, 904), items: [888, 890], want_response: true }, ItemSet { range: Range(904, 940), items: [919], want_response: true }], wants: [135, 171, 172, 323, 339, 372, 376, 380, 393, 405, 434, 449, 455, 527, 558, 564, 566, 573, 589, 606, 619, 661, 667, 672, 809, 830, 944, 946, 982], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(40, 82), items: [49, 53, 57, 66, 72], want_response: false }, ItemSet { range: Range(82, 104), items: [82, 92, 96], want_response: false }, ItemSet { range: Range(104, 116), items: [114], want_response: false }, ItemSet { range: Range(192, 222), items: [192, 203, 219], want_response: false }, ItemSet { range: Range(254, 279), items: [255, 269], want_response: false }, ItemSet { range: Range(279, 297), items: [279], want_response: false }, ItemSet { range: Range(297, 323), items: [299, 312], want_response: false }, ItemSet { range: Range(674, 694), items: [674, 690], want_response: false }, ItemSet { range: Range(694, 710), items: [705, 706], want_response: false }, ItemSet { range: Range(710, 759), items: [710, 713, 729], want_response: false }, ItemSet { range: Range(844, 872), items: [858, 868, 871], want_response: false }, ItemSet { range: Range(872, 876), items: [875], want_response: false }, ItemSet { range: Range(876, 887), items: [876, 877, 881], want_response: false }, ItemSet { range: Range(887, 904), items: [887, 890, 892, 894], want_response: false }, ItemSet { range: Range(904, 940), items: [904, 913, 927], want_response: false }, ItemSet { range: Range(222, 254), items: [222], want_response: true }], wants: [116, 125, 163, 175, 328, 333, 360, 362, 363, 364, 374, 386, 387, 410, 415, 416, 442, 456, 495, 511, 514, 554, 621, 633, 635, 637, 649, 759, 764, 770, 771, 798, 835, 940, 945, 993, 40, 93, 94, 104, 206, 254, 272, 283, 297, 677, 683, 694, 752, 844, 872, 884, 888, 919], provide: [(135, true), (171, true), (172, true), (323, true), (339, true), (372, true), (376, true), (380, true), (393, true), (405, true), (434, true), (449, true), (455, true), (527, true), (558, true), (564, true), (566, true), (573, true), (589, true), (606, true), (619, true), (661, true), (667, true), (672, true), (809, true), (830, true), (944, true), (946, true), (982, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(222, 254), items: [224, 244, 247], want_response: false }], wants: [49, 53, 57, 66, 72, 82, 92, 96, 114, 192, 203, 219, 255, 269, 299, 312, 674, 690, 705, 706, 710, 713, 729, 858, 868, 875, 876, 877, 881, 887, 892, 894, 904, 913, 927, 222], provide: [(116, true), (125, true), (163, true), (175, true), (328, true), (333, true), (360, true), (362, true), (363, true), (364, true), (374, true), (386, true), (387, true), (410, true), (415, true), (416, true), (442, true), (456, true), (495, true), (511, true), (514, true), (554, true), (621, true), (633, true), (635, true), (637, true), (649, true), (759, true), (764, true), (770, true), (771, true), (798, true), (835, true), (940, true), (945, true), (993, true), (40, true), (93, true), (94, true), (104, true), (206, true), (254, true), (272, true), (283, true), (297, true), (677, true), (683, true), (694, true), (752, true), (844, true), (872, true), (884, true), (888, true), (919, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [224, 244, 247], provide: [(49, true), (53, true), (57, true), (66, true), (72, true), (82, true), (92, true), (96, true), (114, true), (192, true), (203, true), (219, true), (255, true), (269, true), (299, true), (312, true), (674, true), (690, true), (705, true), (706, true), (710, true), (713, true), (729, true), (858, true), (868, true), (875, true), (876, true), (877, true), (881, true), (887, true), (892, true), (894, true), (904, true), (913, true), (927, true), (222, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(224, true), (244, true), (247, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {40, 93, 94, 104, 116, 125, 163, 175, 206, 224, 244, 247, 254, 272, 279, 283, 297, 328, 333, 360, 362, 363, 364, 374, 386, 387, 410, 415, 416, 424, 442, 456, 495, 505, 511, 514, 554, 621, 633, 635, 637, 643, 649, 677, 683, 694, 752, 759, 764, 765, 770, 771, 798, 799, 835, 844, 871, 872, 884, 888, 890, 919, 940, 945, 993} + [15, 25, 135, 171, 172, 323, 339, 372, 376, 380, 393, 405, 434, 449, 455, 527, 558, 564, 566, 573, 589, 606, 619, 661, 667, 672, 809, 830, 944, 946, 982, 49, 53, 57, 66, 72, 82, 92, 96, 114, 192, 203, 219, 255, 269, 299, 312, 674, 690, 705, 706, 710, 713, 729, 858, 868, 875, 876, 877, 881, 887, 892, 894, 904, 913, 927, 222]
[INFO] [stdout] b all: {15, 25, 49, 53, 57, 66, 72, 82, 92, 96, 114, 135, 171, 172, 192, 203, 219, 222, 255, 269, 279, 299, 312, 323, 339, 372, 376, 380, 393, 405, 424, 434, 449, 455, 505, 527, 558, 564, 566, 573, 589, 606, 619, 643, 661, 667, 672, 674, 690, 705, 706, 710, 713, 729, 765, 799, 809, 830, 858, 868, 871, 875, 876, 877, 881, 887, 890, 892, 894, 904, 913, 927, 944, 946, 982} + [116, 125, 163, 175, 328, 333, 360, 362, 363, 364, 374, 386, 387, 410, 415, 416, 442, 456, 495, 511, 514, 554, 621, 633, 635, 637, 649, 759, 764, 770, 771, 798, 835, 940, 945, 993, 40, 93, 94, 104, 206, 254, 272, 283, 297, 677, 683, 694, 752, 844, 872, 884, 888, 919, 224, 244, 247]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [15, 25, 40, 49, 53, 57, 66, 72, 82, 92, 93, 94, 96, 104, 114, 116, 125, 135, 163, 171, 172, 175, 192, 203, 206, 219, 222, 224, 244, 247, 254, 255, 269, 272, 279, 283, 297, 299, 312, 323, 328, 333, 339, 360, 362, 363, 364, 372, 374, 376, 380, 386, 387, 393, 405, 410, 415, 416, 424, 434, 442, 449, 455, 456, 495, 505, 511, 514, 527, 554, 558, 564, 566, 573, 589, 606, 619, 621, 633, 635, 637, 643, 649, 661, 667, 672, 674, 677, 683, 690, 694, 705, 706, 710, 713, 729, 752, 759, 764, 765, 770, 771, 798, 799, 809, 830, 835, 844, 858, 868, 871, 872, 875, 876, 877, 881, 884, 887, 888, 890, 892, 894, 904, 913, 919, 927, 940, 944, 945, 946, 982, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [15, 25, 40, 49, 53, 57, 66, 72, 82, 92, 93, 94, 96, 104, 114, 116, 125, 135, 163, 171, 172, 175, 192, 203, 206, 219, 222, 224, 244, 247, 254, 255, 269, 272, 279, 283, 297, 299, 312, 323, 328, 333, 339, 360, 362, 363, 364, 372, 374, 376, 380, 386, 387, 393, 405, 410, 415, 416, 424, 434, 442, 449, 455, 456, 495, 505, 511, 514, 527, 554, 558, 564, 566, 573, 589, 606, 619, 621, 633, 635, 637, 643, 649, 661, 667, 672, 674, 677, 683, 690, 694, 705, 706, 710, 713, 729, 752, 759, 764, 765, 770, 771, 798, 799, 809, 830, 835, 844, 858, 868, 871, 872, 875, 876, 877, 881, 884, 887, 888, 890, 892, 894, 904, 913, 919, 927, 940, 944, 945, 946, 982, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [15, 25, 40, 49, 53, 57, 66, 72, 82, 92, 93, 94, 96, 104, 114, 116, 125, 135, 163, 171, 172, 175, 192, 203, 206, 219, 222, 224, 244, 247, 254, 255, 269, 272, 279, 283, 297, 299, 312, 323, 328, 333, 339, 360, 362, 363, 364, 372, 374, 376, 380, 386, 387, 393, 405, 410, 415, 416, 424, 434, 442, 449, 455, 456, 495, 505, 511, 514, 527, 554, 558, 564, 566, 573, 589, 606, 619, 621, 633, 635, 637, 643, 649, 661, 667, 672, 674, 677, 683, 690, 694, 705, 706, 710, 713, 729, 752, 759, 764, 765, 770, 771, 798, 799, 809, 830, 835, 844, 858, 868, 871, 872, 875, 876, 877, 881, 884, 887, 888, 890, 892, 894, 904, 913, 919, 927, 940, 944, 945, 946, 982, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 37, 39, 75, 91, 101, 115, 119, 177, 181, 182, 219, 242, 254, 311, 315, 319, 320, 324, 342, 352, 390, 414, 438, 441, 454, 477, 498, 508, 557, 570, 571, 602, 627, 640, 657, 664, 695, 727, 735, 738, 745, 774, 808, 814, 818, 826, 829, 839, 845, 853, 877, 882, 900, 921, 937, 953, 954, 960, 971, 988}
[INFO] [stdout] b items: {9, 12, 21, 82, 91, 108, 115, 138, 181, 258, 274, 275, 276, 302, 305, 330, 334, 350, 358, 363, 364, 367, 375, 387, 410, 412, 471, 486, 487, 526, 528, 547, 570, 603, 608, 673, 693, 722, 742, 748, 785, 791, 801, 806, 810, 826, 839, 856, 895, 914, 930, 935, 957, 961, 964, 982}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 989), fp: EncodedCountingMonoid(61, SumMonoid(33018)) }], item_sets: [ItemSet { range: Range(989, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 487), fp: EncodedCountingMonoid(28, SumMonoid(7454)) }, Fingerprint { range: Range(487, 989), fp: EncodedCountingMonoid(28, SumMonoid(21499)) }], item_sets: [ItemSet { range: Range(989, 6), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 311), fp: EncodedCountingMonoid(14, SumMonoid(1838)) }, Fingerprint { range: Range(311, 487), fp: EncodedCountingMonoid(13, SumMonoid(4897)) }, Fingerprint { range: Range(487, 814), fp: EncodedCountingMonoid(17, SumMonoid(11116)) }, Fingerprint { range: Range(814, 989), fp: EncodedCountingMonoid(17, SumMonoid(15167)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 181), fp: EncodedCountingMonoid(8, SumMonoid(576)) }, Fingerprint { range: Range(181, 311), fp: EncodedCountingMonoid(7, SumMonoid(1871)) }, Fingerprint { range: Range(311, 375), fp: EncodedCountingMonoid(7, SumMonoid(2466)) }, Fingerprint { range: Range(375, 487), fp: EncodedCountingMonoid(6, SumMonoid(2541)) }, Fingerprint { range: Range(487, 722), fp: EncodedCountingMonoid(9, SumMonoid(5235)) }, Fingerprint { range: Range(722, 814), fp: EncodedCountingMonoid(8, SumMonoid(6205)) }, Fingerprint { range: Range(814, 935), fp: EncodedCountingMonoid(6, SumMonoid(5260)) }, Fingerprint { range: Range(935, 989), fp: EncodedCountingMonoid(5, SumMonoid(4799)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 101), fp: EncodedCountingMonoid(5, SumMonoid(248)) }, Fingerprint { range: Range(101, 181), fp: EncodedCountingMonoid(4, SumMonoid(512)) }, Fingerprint { range: Range(181, 242), fp: EncodedCountingMonoid(3, SumMonoid(582)) }, Fingerprint { range: Range(311, 324), fp: EncodedCountingMonoid(4, SumMonoid(1265)) }, Fingerprint { range: Range(324, 375), fp: EncodedCountingMonoid(3, SumMonoid(1018)) }, Fingerprint { range: Range(375, 441), fp: EncodedCountingMonoid(3, SumMonoid(1242)) }, Fingerprint { range: Range(441, 487), fp: EncodedCountingMonoid(3, SumMonoid(1372)) }, Fingerprint { range: Range(487, 627), fp: EncodedCountingMonoid(6, SumMonoid(3306)) }, Fingerprint { range: Range(627, 722), fp: EncodedCountingMonoid(5, SumMonoid(3283)) }, Fingerprint { range: Range(722, 745), fp: EncodedCountingMonoid(3, SumMonoid(2200)) }, Fingerprint { range: Range(745, 814), fp: EncodedCountingMonoid(3, SumMonoid(2327)) }, Fingerprint { range: Range(814, 853), fp: EncodedCountingMonoid(6, SumMonoid(4971)) }, Fingerprint { range: Range(853, 935), fp: EncodedCountingMonoid(5, SumMonoid(4433)) }, Fingerprint { range: Range(935, 960), fp: EncodedCountingMonoid(3, SumMonoid(2844)) }, Fingerprint { range: Range(960, 989), fp: EncodedCountingMonoid(3, SumMonoid(2919)) }], item_sets: [ItemSet { range: Range(242, 311), items: [242, 254], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 82), fp: EncodedCountingMonoid(3, SumMonoid(42)) }, Fingerprint { range: Range(324, 363), fp: EncodedCountingMonoid(4, SumMonoid(1372)) }, Fingerprint { range: Range(363, 375), fp: EncodedCountingMonoid(3, SumMonoid(1094)) }, Fingerprint { range: Range(487, 570), fp: EncodedCountingMonoid(4, SumMonoid(2088)) }, Fingerprint { range: Range(570, 627), fp: EncodedCountingMonoid(3, SumMonoid(1781)) }, Fingerprint { range: Range(745, 801), fp: EncodedCountingMonoid(3, SumMonoid(2324)) }, Fingerprint { range: Range(801, 814), fp: EncodedCountingMonoid(3, SumMonoid(2417)) }], item_sets: [ItemSet { range: Range(242, 311), items: [258, 274, 275, 276, 302, 305], want_response: false }, ItemSet { range: Range(82, 101), items: [82, 91], want_response: true }, ItemSet { range: Range(101, 138), items: [108, 115], want_response: true }, ItemSet { range: Range(138, 181), items: [138], want_response: true }, ItemSet { range: Range(181, 242), items: [181], want_response: true }, ItemSet { range: Range(311, 324), items: [], want_response: true }, ItemSet { range: Range(375, 410), items: [375, 387], want_response: true }, ItemSet { range: Range(410, 441), items: [410, 412], want_response: true }, ItemSet { range: Range(441, 487), items: [471, 486], want_response: true }, ItemSet { range: Range(627, 722), items: [673, 693], want_response: true }, ItemSet { range: Range(722, 745), items: [722, 742], want_response: true }, ItemSet { range: Range(814, 853), items: [826, 839], want_response: true }, ItemSet { range: Range(853, 914), items: [856, 895], want_response: true }, ItemSet { range: Range(914, 935), items: [914, 930], want_response: true }, ItemSet { range: Range(935, 960), items: [935, 957], want_response: true }, ItemSet { range: Range(960, 982), items: [961, 964], want_response: true }, ItemSet { range: Range(982, 989), items: [982], want_response: true }], wants: [242, 254], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(82, 101), items: [91], want_response: false }, ItemSet { range: Range(101, 138), items: [101, 115, 119], want_response: false }, ItemSet { range: Range(138, 181), items: [177], want_response: false }, ItemSet { range: Range(181, 242), items: [181, 182, 219], want_response: false }, ItemSet { range: Range(311, 324), items: [311, 315, 319, 320], want_response: false }, ItemSet { range: Range(375, 410), items: [390], want_response: false }, ItemSet { range: Range(410, 441), items: [414, 438], want_response: false }, ItemSet { range: Range(441, 487), items: [441, 454, 477], want_response: false }, ItemSet { range: Range(627, 722), items: [627, 640, 657, 664, 695], want_response: false }, ItemSet { range: Range(722, 745), items: [727, 735, 738], want_response: false }, ItemSet { range: Range(814, 853), items: [814, 818, 826, 829, 839, 845], want_response: false }, ItemSet { range: Range(853, 914), items: [853, 877, 882, 900], want_response: false }, ItemSet { range: Range(914, 935), items: [921], want_response: false }, ItemSet { range: Range(935, 960), items: [937, 953, 954], want_response: false }, ItemSet { range: Range(960, 982), items: [960, 971], want_response: false }, ItemSet { range: Range(982, 989), items: [988], want_response: false }, ItemSet { range: Range(6, 39), items: [6, 37], want_response: true }, ItemSet { range: Range(39, 82), items: [39, 75], want_response: true }, ItemSet { range: Range(324, 352), items: [324, 342], want_response: true }, ItemSet { range: Range(352, 363), items: [352], want_response: true }, ItemSet { range: Range(363, 375), items: [], want_response: true }, ItemSet { range: Range(487, 557), items: [498, 508], want_response: true }, ItemSet { range: Range(557, 570), items: [557], want_response: true }, ItemSet { range: Range(570, 602), items: [570, 571], want_response: true }, ItemSet { range: Range(602, 627), items: [602], want_response: true }, ItemSet { range: Range(745, 801), items: [745, 774], want_response: true }, ItemSet { range: Range(801, 814), items: [808], want_response: true }], wants: [258, 274, 275, 276, 302, 305, 82, 108, 138, 375, 387, 410, 412, 471, 486, 673, 693, 722, 742, 856, 895, 914, 930, 935, 957, 961, 964, 982], provide: [(242, true), (254, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 39), items: [9, 12, 21], want_response: false }, ItemSet { range: Range(39, 82), items: [], want_response: false }, ItemSet { range: Range(324, 352), items: [330, 334, 350], want_response: false }, ItemSet { range: Range(352, 363), items: [358], want_response: false }, ItemSet { range: Range(363, 375), items: [363, 364, 367], want_response: false }, ItemSet { range: Range(487, 557), items: [487, 526, 528, 547], want_response: false }, ItemSet { range: Range(557, 570), items: [], want_response: false }, ItemSet { range: Range(570, 602), items: [570], want_response: false }, ItemSet { range: Range(602, 627), items: [603, 608], want_response: false }, ItemSet { range: Range(745, 801), items: [748, 785, 791], want_response: false }, ItemSet { range: Range(801, 814), items: [801, 806, 810], want_response: false }], wants: [101, 119, 177, 182, 219, 311, 315, 319, 320, 390, 414, 438, 441, 454, 477, 627, 640, 657, 664, 695, 727, 735, 738, 814, 818, 829, 845, 853, 877, 882, 900, 921, 937, 953, 954, 960, 971, 988, 6, 37, 39, 75, 324, 342, 352, 498, 508, 557, 571, 602, 745, 774, 808], provide: [(258, true), (274, true), (275, true), (276, true), (302, true), (305, true), (82, true), (108, true), (138, true), (375, true), (387, true), (410, true), (412, true), (471, true), (486, true), (673, true), (693, true), (722, true), (742, true), (856, true), (895, true), (914, true), (930, true), (935, true), (957, true), (961, true), (964, true), (982, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [9, 12, 21, 330, 334, 350, 358, 363, 364, 367, 487, 526, 528, 547, 603, 608, 748, 785, 791, 801, 806, 810], provide: [(101, true), (119, true), (177, true), (182, true), (219, true), (311, true), (315, true), (319, true), (320, true), (390, true), (414, true), (438, true), (441, true), (454, true), (477, true), (627, true), (640, true), (657, true), (664, true), (695, true), (727, true), (735, true), (738, true), (814, true), (818, true), (829, true), (845, true), (853, true), (877, true), (882, true), (900, true), (921, true), (937, true), (953, true), (954, true), (960, true), (971, true), (988, true), (6, true), (37, true), (39, true), (75, true), (324, true), (342, true), (352, true), (498, true), (508, true), (557, true), (571, true), (602, true), (745, true), (774, true), (808, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(9, true), (12, true), (21, true), (330, true), (334, true), (350, true), (358, true), (363, true), (364, true), (367, true), (487, true), (526, true), (528, true), (547, true), (603, true), (608, true), (748, true), (785, true), (791, true), (801, true), (806, true), (810, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 37, 39, 75, 91, 101, 115, 119, 177, 181, 182, 219, 242, 254, 311, 315, 319, 320, 324, 342, 352, 390, 414, 438, 441, 454, 477, 498, 508, 557, 570, 571, 602, 627, 640, 657, 664, 695, 727, 735, 738, 745, 774, 808, 814, 818, 826, 829, 839, 845, 853, 877, 882, 900, 921, 937, 953, 954, 960, 971, 988} + [258, 274, 275, 276, 302, 305, 82, 108, 138, 375, 387, 410, 412, 471, 486, 673, 693, 722, 742, 856, 895, 914, 930, 935, 957, 961, 964, 982, 9, 12, 21, 330, 334, 350, 358, 363, 364, 367, 487, 526, 528, 547, 603, 608, 748, 785, 791, 801, 806, 810]
[INFO] [stdout] b all: {9, 12, 21, 82, 91, 108, 115, 138, 181, 258, 274, 275, 276, 302, 305, 330, 334, 350, 358, 363, 364, 367, 375, 387, 410, 412, 471, 486, 487, 526, 528, 547, 570, 603, 608, 673, 693, 722, 742, 748, 785, 791, 801, 806, 810, 826, 839, 856, 895, 914, 930, 935, 957, 961, 964, 982} + [242, 254, 101, 119, 177, 182, 219, 311, 315, 319, 320, 390, 414, 438, 441, 454, 477, 627, 640, 657, 664, 695, 727, 735, 738, 814, 818, 829, 845, 853, 877, 882, 900, 921, 937, 953, 954, 960, 971, 988, 6, 37, 39, 75, 324, 342, 352, 498, 508, 557, 571, 602, 745, 774, 808]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 9, 12, 21, 37, 39, 75, 82, 91, 101, 108, 115, 119, 138, 177, 181, 182, 219, 242, 254, 258, 274, 275, 276, 302, 305, 311, 315, 319, 320, 324, 330, 334, 342, 350, 352, 358, 363, 364, 367, 375, 387, 390, 410, 412, 414, 438, 441, 454, 471, 477, 486, 487, 498, 508, 526, 528, 547, 557, 570, 571, 602, 603, 608, 627, 640, 657, 664, 673, 693, 695, 722, 727, 735, 738, 742, 745, 748, 774, 785, 791, 801, 806, 808, 810, 814, 818, 826, 829, 839, 845, 853, 856, 877, 882, 895, 900, 914, 921, 930, 935, 937, 953, 954, 957, 960, 961, 964, 971, 982, 988]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 9, 12, 21, 37, 39, 75, 82, 91, 101, 108, 115, 119, 138, 177, 181, 182, 219, 242, 254, 258, 274, 275, 276, 302, 305, 311, 315, 319, 320, 324, 330, 334, 342, 350, 352, 358, 363, 364, 367, 375, 387, 390, 410, 412, 414, 438, 441, 454, 471, 477, 486, 487, 498, 508, 526, 528, 547, 557, 570, 571, 602, 603, 608, 627, 640, 657, 664, 673, 693, 695, 722, 727, 735, 738, 742, 745, 748, 774, 785, 791, 801, 806, 808, 810, 814, 818, 826, 829, 839, 845, 853, 856, 877, 882, 895, 900, 914, 921, 930, 935, 937, 953, 954, 957, 960, 961, 964, 971, 982, 988], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 9, 12, 21, 37, 39, 75, 82, 91, 101, 108, 115, 119, 138, 177, 181, 182, 219, 242, 254, 258, 274, 275, 276, 302, 305, 311, 315, 319, 320, 324, 330, 334, 342, 350, 352, 358, 363, 364, 367, 375, 387, 390, 410, 412, 414, 438, 441, 454, 471, 477, 486, 487, 498, 508, 526, 528, 547, 557, 570, 571, 602, 603, 608, 627, 640, 657, 664, 673, 693, 695, 722, 727, 735, 738, 742, 745, 748, 774, 785, 791, 801, 806, 808, 810, 814, 818, 826, 829, 839, 845, 853, 856, 877, 882, 895, 900, 914, 921, 930, 935, 937, 953, 954, 957, 960, 961, 964, 971, 982, 988], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {10, 55, 63, 66, 110, 135, 136, 203, 228, 290, 295, 300, 303, 362, 403, 448, 475, 505, 551, 662, 669, 723, 731, 786, 838, 840, 873, 875, 877, 889, 928}
[INFO] [stdout] b items: {24, 78, 194, 197, 258, 428, 652, 889, 949}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(10, 929), fp: EncodedCountingMonoid(31, SumMonoid(14629)) }], item_sets: [ItemSet { range: Range(929, 10), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(10, 258), fp: EncodedCountingMonoid(4, SumMonoid(493)) }, Fingerprint { range: Range(258, 929), fp: EncodedCountingMonoid(4, SumMonoid(2227)) }], item_sets: [ItemSet { range: Range(929, 10), items: [949], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(10, 135), fp: EncodedCountingMonoid(5, SumMonoid(304)) }, Fingerprint { range: Range(135, 258), fp: EncodedCountingMonoid(4, SumMonoid(702)) }, Fingerprint { range: Range(258, 669), fp: EncodedCountingMonoid(11, SumMonoid(4594)) }, Fingerprint { range: Range(669, 929), fp: EncodedCountingMonoid(11, SumMonoid(9029)) }], item_sets: [], wants: [949], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(10, 135), items: [24, 78], want_response: true }, ItemSet { range: Range(135, 258), items: [194, 197], want_response: true }, ItemSet { range: Range(258, 652), items: [258, 428], want_response: true }, ItemSet { range: Range(652, 669), items: [652], want_response: true }, ItemSet { range: Range(669, 929), items: [889], want_response: true }], wants: [], provide: [(949, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(10, 135), items: [10, 55, 63, 66, 110], want_response: false }, ItemSet { range: Range(135, 258), items: [135, 136, 203, 228], want_response: false }, ItemSet { range: Range(258, 652), items: [290, 295, 300, 303, 362, 403, 448, 475, 505, 551], want_response: false }, ItemSet { range: Range(652, 669), items: [662], want_response: false }, ItemSet { range: Range(669, 929), items: [669, 723, 731, 786, 838, 840, 873, 875, 877, 889, 928], want_response: false }], wants: [24, 78, 194, 197, 258, 428, 652], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [10, 55, 63, 66, 110, 135, 136, 203, 228, 290, 295, 300, 303, 362, 403, 448, 475, 505, 551, 662, 669, 723, 731, 786, 838, 840, 873, 875, 877, 928], provide: [(24, true), (78, true), (194, true), (197, true), (258, true), (428, true), (652, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(10, true), (55, true), (63, true), (66, true), (110, true), (135, true), (136, true), (203, true), (228, true), (290, true), (295, true), (300, true), (303, true), (362, true), (403, true), (448, true), (475, true), (505, true), (551, true), (662, true), (669, true), (723, true), (731, true), (786, true), (838, true), (840, true), (873, true), (875, true), (877, true), (928, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {10, 55, 63, 66, 110, 135, 136, 203, 228, 290, 295, 300, 303, 362, 403, 448, 475, 505, 551, 662, 669, 723, 731, 786, 838, 840, 873, 875, 877, 889, 928} + [949, 24, 78, 194, 197, 258, 428, 652]
[INFO] [stdout] b all: {24, 78, 194, 197, 258, 428, 652, 889, 949} + [10, 55, 63, 66, 110, 135, 136, 203, 228, 290, 295, 300, 303, 362, 403, 448, 475, 505, 551, 662, 669, 723, 731, 786, 838, 840, 873, 875, 877, 928]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 24, 55, 63, 66, 78, 110, 135, 136, 194, 197, 203, 228, 258, 290, 295, 300, 303, 362, 403, 428, 448, 475, 505, 551, 652, 662, 669, 723, 731, 786, 838, 840, 873, 875, 877, 889, 928, 949]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 24, 55, 63, 66, 78, 110, 135, 136, 194, 197, 203, 228, 258, 290, 295, 300, 303, 362, 403, 428, 448, 475, 505, 551, 652, 662, 669, 723, 731, 786, 838, 840, 873, 875, 877, 889, 928, 949], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 24, 55, 63, 66, 78, 110, 135, 136, 194, 197, 203, 228, 258, 290, 295, 300, 303, 362, 403, 428, 448, 475, 505, 551, 652, 662, 669, 723, 731, 786, 838, 840, 873, 875, 877, 889, 928, 949], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {4, 11, 20, 36, 37, 39, 56, 70, 114, 133, 140, 144, 154, 158, 161, 165, 178, 191, 196, 216, 232, 238, 260, 264, 285, 292, 293, 294, 309, 340, 343, 349, 356, 359, 368, 370, 384, 417, 422, 442, 482, 488, 526, 527, 553, 556, 575, 581, 591, 592, 604, 633, 636, 699, 703, 718, 726, 730, 739, 760, 763, 783, 787, 800, 841, 879, 903, 908, 913, 916, 920, 927, 937, 948, 954, 974, 983}
[INFO] [stdout] b items: {7, 64, 71, 99, 104, 156, 178, 219, 247, 251, 255, 270, 273, 287, 288, 308, 319, 322, 327, 338, 356, 368, 391, 406, 410, 471, 529, 540, 548, 569, 582, 591, 599, 605, 668, 711, 735, 743, 796, 804, 819, 833, 838, 841, 872, 894, 900, 930, 932, 948}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 984), fp: EncodedCountingMonoid(77, SumMonoid(36395)) }], item_sets: [ItemSet { range: Range(984, 4), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 471), fp: EncodedCountingMonoid(25, SumMonoid(6314)) }, Fingerprint { range: Range(471, 984), fp: EncodedCountingMonoid(25, SumMonoid(18298)) }], item_sets: [ItemSet { range: Range(984, 4), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 232), fp: EncodedCountingMonoid(20, SumMonoid(2223)) }, Fingerprint { range: Range(232, 471), fp: EncodedCountingMonoid(20, SumMonoid(6617)) }, Fingerprint { range: Range(471, 760), fp: EncodedCountingMonoid(19, SumMonoid(11659)) }, Fingerprint { range: Range(760, 984), fp: EncodedCountingMonoid(18, SumMonoid(15896)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 104), fp: EncodedCountingMonoid(4, SumMonoid(241)) }, Fingerprint { range: Range(104, 232), fp: EncodedCountingMonoid(4, SumMonoid(657)) }, Fingerprint { range: Range(232, 322), fp: EncodedCountingMonoid(9, SumMonoid(2498)) }, Fingerprint { range: Range(322, 471), fp: EncodedCountingMonoid(8, SumMonoid(2918)) }, Fingerprint { range: Range(471, 599), fp: EncodedCountingMonoid(7, SumMonoid(3830)) }, Fingerprint { range: Range(599, 760), fp: EncodedCountingMonoid(6, SumMonoid(4061)) }, Fingerprint { range: Range(760, 872), fp: EncodedCountingMonoid(6, SumMonoid(4931)) }, Fingerprint { range: Range(872, 984), fp: EncodedCountingMonoid(6, SumMonoid(5476)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 37), fp: EncodedCountingMonoid(4, SumMonoid(71)) }, Fingerprint { range: Range(37, 104), fp: EncodedCountingMonoid(4, SumMonoid(202)) }, Fingerprint { range: Range(104, 161), fp: EncodedCountingMonoid(6, SumMonoid(843)) }, Fingerprint { range: Range(161, 232), fp: EncodedCountingMonoid(6, SumMonoid(1107)) }, Fingerprint { range: Range(232, 292), fp: EncodedCountingMonoid(5, SumMonoid(1279)) }, Fingerprint { range: Range(292, 322), fp: EncodedCountingMonoid(4, SumMonoid(1188)) }, Fingerprint { range: Range(322, 370), fp: EncodedCountingMonoid(6, SumMonoid(2115)) }, Fingerprint { range: Range(370, 471), fp: EncodedCountingMonoid(5, SumMonoid(2035)) }, Fingerprint { range: Range(471, 556), fp: EncodedCountingMonoid(5, SumMonoid(2576)) }, Fingerprint { range: Range(556, 599), fp: EncodedCountingMonoid(5, SumMonoid(2895)) }, Fingerprint { range: Range(599, 718), fp: EncodedCountingMonoid(5, SumMonoid(3275)) }, Fingerprint { range: Range(718, 760), fp: EncodedCountingMonoid(4, SumMonoid(2913)) }, Fingerprint { range: Range(760, 787), fp: EncodedCountingMonoid(3, SumMonoid(2306)) }, Fingerprint { range: Range(787, 872), fp: EncodedCountingMonoid(3, SumMonoid(2428)) }, Fingerprint { range: Range(872, 927), fp: EncodedCountingMonoid(6, SumMonoid(5439)) }, Fingerprint { range: Range(927, 984), fp: EncodedCountingMonoid(6, SumMonoid(5723)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(232, 273), fp: EncodedCountingMonoid(4, SumMonoid(1023)) }, Fingerprint { range: Range(273, 292), fp: EncodedCountingMonoid(3, SumMonoid(848)) }, Fingerprint { range: Range(322, 356), fp: EncodedCountingMonoid(3, SumMonoid(987)) }, Fingerprint { range: Range(787, 833), fp: EncodedCountingMonoid(3, SumMonoid(2419)) }, Fingerprint { range: Range(833, 872), fp: EncodedCountingMonoid(3, SumMonoid(2512)) }], item_sets: [ItemSet { range: Range(4, 37), items: [7], want_response: true }, ItemSet { range: Range(37, 99), items: [64, 71], want_response: true }, ItemSet { range: Range(99, 104), items: [99], want_response: true }, ItemSet { range: Range(104, 161), items: [104, 156], want_response: true }, ItemSet { range: Range(161, 232), items: [178, 219], want_response: true }, ItemSet { range: Range(292, 322), items: [308, 319], want_response: true }, ItemSet { range: Range(356, 370), items: [356, 368], want_response: true }, ItemSet { range: Range(370, 410), items: [391, 406], want_response: true }, ItemSet { range: Range(410, 471), items: [410], want_response: true }, ItemSet { range: Range(471, 540), items: [471, 529], want_response: true }, ItemSet { range: Range(540, 556), items: [540, 548], want_response: true }, ItemSet { range: Range(556, 591), items: [569, 582], want_response: true }, ItemSet { range: Range(591, 599), items: [591], want_response: true }, ItemSet { range: Range(599, 668), items: [599, 605], want_response: true }, ItemSet { range: Range(668, 718), items: [668, 711], want_response: true }, ItemSet { range: Range(718, 760), items: [735, 743], want_response: true }, ItemSet { range: Range(760, 787), items: [], want_response: true }, ItemSet { range: Range(872, 900), items: [872, 894], want_response: true }, ItemSet { range: Range(900, 927), items: [900], want_response: true }, ItemSet { range: Range(927, 948), items: [930, 932], want_response: true }, ItemSet { range: Range(948, 984), items: [948], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(4, 37), items: [4, 11, 20, 36], want_response: false }, ItemSet { range: Range(37, 99), items: [37, 39, 56, 70], want_response: false }, ItemSet { range: Range(99, 104), items: [], want_response: false }, ItemSet { range: Range(104, 161), items: [114, 133, 140, 144, 154, 158], want_response: false }, ItemSet { range: Range(161, 232), items: [161, 165, 178, 191, 196, 216], want_response: false }, ItemSet { range: Range(292, 322), items: [292, 293, 294, 309], want_response: false }, ItemSet { range: Range(356, 370), items: [356, 359, 368], want_response: false }, ItemSet { range: Range(370, 410), items: [370, 384], want_response: false }, ItemSet { range: Range(410, 471), items: [417, 422, 442], want_response: false }, ItemSet { range: Range(471, 540), items: [482, 488, 526, 527], want_response: false }, ItemSet { range: Range(540, 556), items: [553], want_response: false }, ItemSet { range: Range(556, 591), items: [556, 575, 581], want_response: false }, ItemSet { range: Range(591, 599), items: [591, 592], want_response: false }, ItemSet { range: Range(599, 668), items: [604, 633, 636], want_response: false }, ItemSet { range: Range(668, 718), items: [699, 703], want_response: false }, ItemSet { range: Range(718, 760), items: [718, 726, 730, 739], want_response: false }, ItemSet { range: Range(760, 787), items: [760, 763, 783], want_response: false }, ItemSet { range: Range(872, 900), items: [879], want_response: false }, ItemSet { range: Range(900, 927), items: [903, 908, 913, 916, 920], want_response: false }, ItemSet { range: Range(927, 948), items: [927, 937], want_response: false }, ItemSet { range: Range(948, 984), items: [948, 954, 974, 983], want_response: false }, ItemSet { range: Range(232, 260), items: [232, 238], want_response: true }, ItemSet { range: Range(260, 273), items: [260, 264], want_response: true }, ItemSet { range: Range(273, 292), items: [285], want_response: true }, ItemSet { range: Range(322, 349), items: [340, 343], want_response: true }, ItemSet { range: Range(349, 356), items: [349], want_response: true }, ItemSet { range: Range(787, 833), items: [787, 800], want_response: true }, ItemSet { range: Range(833, 872), items: [841], want_response: true }], wants: [7, 64, 71, 99, 104, 156, 219, 308, 319, 391, 406, 410, 471, 529, 540, 548, 569, 582, 599, 605, 668, 711, 735, 743, 872, 894, 900, 930, 932], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(232, 260), items: [247, 251, 255], want_response: false }, ItemSet { range: Range(260, 273), items: [270], want_response: false }, ItemSet { range: Range(273, 292), items: [273, 287, 288], want_response: false }, ItemSet { range: Range(322, 349), items: [322, 327, 338], want_response: false }, ItemSet { range: Range(349, 356), items: [], want_response: false }, ItemSet { range: Range(787, 833), items: [796, 804, 819], want_response: false }, ItemSet { range: Range(833, 872), items: [833, 838, 841], want_response: false }], wants: [4, 11, 20, 36, 37, 39, 56, 70, 114, 133, 140, 144, 154, 158, 161, 165, 191, 196, 216, 292, 293, 294, 309, 359, 370, 384, 417, 422, 442, 482, 488, 526, 527, 553, 556, 575, 581, 592, 604, 633, 636, 699, 703, 718, 726, 730, 739, 760, 763, 783, 879, 903, 908, 913, 916, 920, 927, 937, 954, 974, 983, 232, 238, 260, 264, 285, 340, 343, 349, 787, 800], provide: [(7, true), (64, true), (71, true), (99, true), (104, true), (156, true), (219, true), (308, true), (319, true), (391, true), (406, true), (410, true), (471, true), (529, true), (540, true), (548, true), (569, true), (582, true), (599, true), (605, true), (668, true), (711, true), (735, true), (743, true), (872, true), (894, true), (900, true), (930, true), (932, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [247, 251, 255, 270, 273, 287, 288, 322, 327, 338, 796, 804, 819, 833, 838], provide: [(4, true), (11, true), (20, true), (36, true), (37, true), (39, true), (56, true), (70, true), (114, true), (133, true), (140, true), (144, true), (154, true), (158, true), (161, true), (165, true), (191, true), (196, true), (216, true), (292, true), (293, true), (294, true), (309, true), (359, true), (370, true), (384, true), (417, true), (422, true), (442, true), (482, true), (488, true), (526, true), (527, true), (553, true), (556, true), (575, true), (581, true), (592, true), (604, true), (633, true), (636, true), (699, true), (703, true), (718, true), (726, true), (730, true), (739, true), (760, true), (763, true), (783, true), (879, true), (903, true), (908, true), (913, true), (916, true), (920, true), (927, true), (937, true), (954, true), (974, true), (983, true), (232, true), (238, true), (260, true), (264, true), (285, true), (340, true), (343, true), (349, true), (787, true), (800, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(247, true), (251, true), (255, true), (270, true), (273, true), (287, true), (288, true), (322, true), (327, true), (338, true), (796, true), (804, true), (819, true), (833, true), (838, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {4, 11, 20, 36, 37, 39, 56, 70, 114, 133, 140, 144, 154, 158, 161, 165, 178, 191, 196, 216, 232, 238, 260, 264, 285, 292, 293, 294, 309, 340, 343, 349, 356, 359, 368, 370, 384, 417, 422, 442, 482, 488, 526, 527, 553, 556, 575, 581, 591, 592, 604, 633, 636, 699, 703, 718, 726, 730, 739, 760, 763, 783, 787, 800, 841, 879, 903, 908, 913, 916, 920, 927, 937, 948, 954, 974, 983} + [7, 64, 71, 99, 104, 156, 219, 308, 319, 391, 406, 410, 471, 529, 540, 548, 569, 582, 599, 605, 668, 711, 735, 743, 872, 894, 900, 930, 932, 247, 251, 255, 270, 273, 287, 288, 322, 327, 338, 796, 804, 819, 833, 838]
[INFO] [stdout] b all: {7, 64, 71, 99, 104, 156, 178, 219, 247, 251, 255, 270, 273, 287, 288, 308, 319, 322, 327, 338, 356, 368, 391, 406, 410, 471, 529, 540, 548, 569, 582, 591, 599, 605, 668, 711, 735, 743, 796, 804, 819, 833, 838, 841, 872, 894, 900, 930, 932, 948} + [4, 11, 20, 36, 37, 39, 56, 70, 114, 133, 140, 144, 154, 158, 161, 165, 191, 196, 216, 292, 293, 294, 309, 359, 370, 384, 417, 422, 442, 482, 488, 526, 527, 553, 556, 575, 581, 592, 604, 633, 636, 699, 703, 718, 726, 730, 739, 760, 763, 783, 879, 903, 908, 913, 916, 920, 927, 937, 954, 974, 983, 232, 238, 260, 264, 285, 340, 343, 349, 787, 800]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [4, 7, 11, 20, 36, 37, 39, 56, 64, 70, 71, 99, 104, 114, 133, 140, 144, 154, 156, 158, 161, 165, 178, 191, 196, 216, 219, 232, 238, 247, 251, 255, 260, 264, 270, 273, 285, 287, 288, 292, 293, 294, 308, 309, 319, 322, 327, 338, 340, 343, 349, 356, 359, 368, 370, 384, 391, 406, 410, 417, 422, 442, 471, 482, 488, 526, 527, 529, 540, 548, 553, 556, 569, 575, 581, 582, 591, 592, 599, 604, 605, 633, 636, 668, 699, 703, 711, 718, 726, 730, 735, 739, 743, 760, 763, 783, 787, 796, 800, 804, 819, 833, 838, 841, 872, 879, 894, 900, 903, 908, 913, 916, 920, 927, 930, 932, 937, 948, 954, 974, 983]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [4, 7, 11, 20, 36, 37, 39, 56, 64, 70, 71, 99, 104, 114, 133, 140, 144, 154, 156, 158, 161, 165, 178, 191, 196, 216, 219, 232, 238, 247, 251, 255, 260, 264, 270, 273, 285, 287, 288, 292, 293, 294, 308, 309, 319, 322, 327, 338, 340, 343, 349, 356, 359, 368, 370, 384, 391, 406, 410, 417, 422, 442, 471, 482, 488, 526, 527, 529, 540, 548, 553, 556, 569, 575, 581, 582, 591, 592, 599, 604, 605, 633, 636, 668, 699, 703, 711, 718, 726, 730, 735, 739, 743, 760, 763, 783, 787, 796, 800, 804, 819, 833, 838, 841, 872, 879, 894, 900, 903, 908, 913, 916, 920, 927, 930, 932, 937, 948, 954, 974, 983], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [4, 7, 11, 20, 36, 37, 39, 56, 64, 70, 71, 99, 104, 114, 133, 140, 144, 154, 156, 158, 161, 165, 178, 191, 196, 216, 219, 232, 238, 247, 251, 255, 260, 264, 270, 273, 285, 287, 288, 292, 293, 294, 308, 309, 319, 322, 327, 338, 340, 343, 349, 356, 359, 368, 370, 384, 391, 406, 410, 417, 422, 442, 471, 482, 488, 526, 527, 529, 540, 548, 553, 556, 569, 575, 581, 582, 591, 592, 599, 604, 605, 633, 636, 668, 699, 703, 711, 718, 726, 730, 735, 739, 743, 760, 763, 783, 787, 796, 800, 804, 819, 833, 838, 841, 872, 879, 894, 900, 903, 908, 913, 916, 920, 927, 930, 932, 937, 948, 954, 974, 983], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {15, 20, 45, 104, 131, 159, 166, 174, 181, 191, 192, 232, 241, 250, 264, 286, 318, 321, 327, 335, 354, 368, 392, 398, 418, 433, 436, 438, 469, 496, 499, 507, 547, 548, 554, 571, 576, 593, 621, 628, 629, 634, 669, 671, 674, 697, 719, 723, 727, 729, 749, 754, 791, 797, 828, 837, 858, 868, 874, 880, 882, 889, 913, 921, 924, 981}
[INFO] [stdout] b items: {8, 58, 72, 73, 140, 166, 182, 184, 204, 222, 237, 248, 256, 262, 268, 298, 316, 350, 358, 365, 387, 388, 406, 420, 441, 456, 457, 506, 509, 511, 515, 520, 544, 583, 605, 608, 637, 659, 692, 705, 728, 734, 735, 738, 747, 750, 752, 770, 781, 791, 798, 818, 831, 846, 857, 880, 910, 933, 944, 955, 977, 981}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(15, 982), fp: EncodedCountingMonoid(66, SumMonoid(34416)) }], item_sets: [ItemSet { range: Range(982, 15), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(15, 544), fp: EncodedCountingMonoid(31, SumMonoid(9775)) }, Fingerprint { range: Range(544, 982), fp: EncodedCountingMonoid(30, SumMonoid(23289)) }], item_sets: [ItemSet { range: Range(982, 15), items: [8], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(15, 318), fp: EncodedCountingMonoid(16, SumMonoid(2651)) }, Fingerprint { range: Range(318, 544), fp: EncodedCountingMonoid(16, SumMonoid(6509)) }, Fingerprint { range: Range(544, 729), fp: EncodedCountingMonoid(17, SumMonoid(10781)) }, Fingerprint { range: Range(729, 982), fp: EncodedCountingMonoid(17, SumMonoid(14475)) }], item_sets: [], wants: [8], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(15, 222), fp: EncodedCountingMonoid(8, SumMonoid(1079)) }, Fingerprint { range: Range(222, 318), fp: EncodedCountingMonoid(8, SumMonoid(2107)) }, Fingerprint { range: Range(318, 456), fp: EncodedCountingMonoid(8, SumMonoid(3115)) }, Fingerprint { range: Range(456, 544), fp: EncodedCountingMonoid(7, SumMonoid(3474)) }, Fingerprint { range: Range(544, 659), fp: EncodedCountingMonoid(5, SumMonoid(2977)) }, Fingerprint { range: Range(659, 729), fp: EncodedCountingMonoid(4, SumMonoid(2784)) }, Fingerprint { range: Range(729, 831), fp: EncodedCountingMonoid(11, SumMonoid(8414)) }, Fingerprint { range: Range(831, 982), fp: EncodedCountingMonoid(10, SumMonoid(9114)) }], item_sets: [], wants: [], provide: [(8, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(15, 166), fp: EncodedCountingMonoid(6, SumMonoid(474)) }, Fingerprint { range: Range(166, 222), fp: EncodedCountingMonoid(5, SumMonoid(904)) }, Fingerprint { range: Range(222, 264), fp: EncodedCountingMonoid(3, SumMonoid(723)) }, Fingerprint { range: Range(318, 392), fp: EncodedCountingMonoid(6, SumMonoid(2023)) }, Fingerprint { range: Range(392, 456), fp: EncodedCountingMonoid(6, SumMonoid(2515)) }, Fingerprint { range: Range(544, 593), fp: EncodedCountingMonoid(5, SumMonoid(2796)) }, Fingerprint { range: Range(593, 659), fp: EncodedCountingMonoid(5, SumMonoid(3105)) }, Fingerprint { range: Range(659, 719), fp: EncodedCountingMonoid(4, SumMonoid(2711)) }, Fingerprint { range: Range(719, 729), fp: EncodedCountingMonoid(3, SumMonoid(2169)) }, Fingerprint { range: Range(729, 791), fp: EncodedCountingMonoid(3, SumMonoid(2232)) }, Fingerprint { range: Range(791, 831), fp: EncodedCountingMonoid(3, SumMonoid(2416)) }, Fingerprint { range: Range(831, 889), fp: EncodedCountingMonoid(6, SumMonoid(5199)) }, Fingerprint { range: Range(889, 982), fp: EncodedCountingMonoid(5, SumMonoid(4628)) }], item_sets: [ItemSet { range: Range(264, 318), items: [264, 286], want_response: true }, ItemSet { range: Range(456, 499), items: [469, 496], want_response: true }, ItemSet { range: Range(499, 544), items: [499, 507], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(222, 256), fp: EncodedCountingMonoid(3, SumMonoid(707)) }, Fingerprint { range: Range(318, 387), fp: EncodedCountingMonoid(3, SumMonoid(1073)) }, Fingerprint { range: Range(729, 750), fp: EncodedCountingMonoid(4, SumMonoid(2954)) }, Fingerprint { range: Range(750, 791), fp: EncodedCountingMonoid(4, SumMonoid(3053)) }, Fingerprint { range: Range(889, 955), fp: EncodedCountingMonoid(3, SumMonoid(2787)) }, Fingerprint { range: Range(955, 982), fp: EncodedCountingMonoid(3, SumMonoid(2913)) }], item_sets: [ItemSet { range: Range(264, 318), items: [268, 298, 316], want_response: false }, ItemSet { range: Range(456, 499), items: [456, 457], want_response: false }, ItemSet { range: Range(499, 544), items: [506, 509, 511, 515, 520], want_response: false }, ItemSet { range: Range(15, 73), items: [58, 72], want_response: true }, ItemSet { range: Range(73, 166), items: [73, 140], want_response: true }, ItemSet { range: Range(166, 184), items: [166, 182], want_response: true }, ItemSet { range: Range(184, 222), items: [184, 204], want_response: true }, ItemSet { range: Range(256, 264), items: [256, 262], want_response: true }, ItemSet { range: Range(387, 392), items: [387, 388], want_response: true }, ItemSet { range: Range(392, 441), items: [406, 420], want_response: true }, ItemSet { range: Range(441, 456), items: [441], want_response: true }, ItemSet { range: Range(544, 593), items: [544, 583], want_response: true }, ItemSet { range: Range(593, 637), items: [605, 608], want_response: true }, ItemSet { range: Range(637, 659), items: [637], want_response: true }, ItemSet { range: Range(659, 705), items: [659, 692], want_response: true }, ItemSet { range: Range(705, 719), items: [705], want_response: true }, ItemSet { range: Range(719, 729), items: [728], want_response: true }, ItemSet { range: Range(791, 818), items: [791, 798], want_response: true }, ItemSet { range: Range(818, 831), items: [818], want_response: true }, ItemSet { range: Range(831, 857), items: [831, 846], want_response: true }, ItemSet { range: Range(857, 889), items: [857, 880], want_response: true }], wants: [264, 286, 469, 496, 499, 507], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(318, 335), fp: EncodedCountingMonoid(3, SumMonoid(966)) }, Fingerprint { range: Range(335, 387), fp: EncodedCountingMonoid(3, SumMonoid(1057)) }], item_sets: [ItemSet { range: Range(15, 73), items: [15, 20, 45], want_response: false }, ItemSet { range: Range(73, 166), items: [104, 131, 159], want_response: false }, ItemSet { range: Range(166, 184), items: [166, 174, 181], want_response: false }, ItemSet { range: Range(184, 222), items: [191, 192], want_response: false }, ItemSet { range: Range(256, 264), items: [], want_response: false }, ItemSet { range: Range(387, 392), items: [], want_response: false }, ItemSet { range: Range(392, 441), items: [392, 398, 418, 433, 436, 438], want_response: false }, ItemSet { range: Range(441, 456), items: [], want_response: false }, ItemSet { range: Range(544, 593), items: [547, 548, 554, 571, 576], want_response: false }, ItemSet { range: Range(593, 637), items: [593, 621, 628, 629, 634], want_response: false }, ItemSet { range: Range(637, 659), items: [], want_response: false }, ItemSet { range: Range(659, 705), items: [669, 671, 674, 697], want_response: false }, ItemSet { range: Range(705, 719), items: [], want_response: false }, ItemSet { range: Range(719, 729), items: [719, 723, 727], want_response: false }, ItemSet { range: Range(791, 818), items: [791, 797], want_response: false }, ItemSet { range: Range(818, 831), items: [828], want_response: false }, ItemSet { range: Range(831, 857), items: [837], want_response: false }, ItemSet { range: Range(857, 889), items: [858, 868, 874, 880, 882], want_response: false }, ItemSet { range: Range(222, 250), items: [232, 241], want_response: true }, ItemSet { range: Range(250, 256), items: [250], want_response: true }, ItemSet { range: Range(729, 750), items: [729, 749], want_response: true }, ItemSet { range: Range(750, 791), items: [754], want_response: true }, ItemSet { range: Range(889, 921), items: [889, 913], want_response: true }, ItemSet { range: Range(921, 955), items: [921, 924], want_response: true }, ItemSet { range: Range(955, 982), items: [981], want_response: true }], wants: [268, 298, 316, 456, 457, 506, 509, 511, 515, 520, 58, 72, 73, 140, 182, 184, 204, 256, 262, 387, 388, 406, 420, 441, 544, 583, 605, 608, 637, 659, 692, 705, 728, 798, 818, 831, 846, 857], provide: [(264, true), (286, true), (469, true), (496, true), (499, true), (507, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(222, 250), items: [222, 237, 248], want_response: false }, ItemSet { range: Range(250, 256), items: [], want_response: false }, ItemSet { range: Range(729, 750), items: [734, 735, 738, 747], want_response: false }, ItemSet { range: Range(750, 791), items: [750, 752, 770, 781], want_response: false }, ItemSet { range: Range(889, 921), items: [910], want_response: false }, ItemSet { range: Range(921, 955), items: [933, 944], want_response: false }, ItemSet { range: Range(955, 982), items: [955, 977, 981], want_response: false }, ItemSet { range: Range(318, 335), items: [], want_response: true }, ItemSet { range: Range(335, 365), items: [350, 358], want_response: true }, ItemSet { range: Range(365, 387), items: [365], want_response: true }], wants: [15, 20, 45, 104, 131, 159, 174, 181, 191, 192, 392, 398, 418, 433, 436, 438, 547, 548, 554, 571, 576, 593, 621, 628, 629, 634, 669, 671, 674, 697, 719, 723, 727, 797, 828, 837, 858, 868, 874, 882, 232, 241, 250, 729, 749, 754, 889, 913, 921, 924], provide: [(268, true), (298, true), (316, true), (456, true), (457, true), (506, true), (509, true), (511, true), (515, true), (520, true), (58, true), (72, true), (73, true), (140, true), (182, true), (184, true), (204, true), (256, true), (262, true), (387, true), (388, true), (406, true), (420, true), (441, true), (544, true), (583, true), (605, true), (608, true), (637, true), (659, true), (692, true), (705, true), (728, true), (798, true), (818, true), (831, true), (846, true), (857, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(318, 335), items: [318, 321, 327], want_response: false }, ItemSet { range: Range(335, 365), items: [335, 354], want_response: false }, ItemSet { range: Range(365, 387), items: [368], want_response: false }], wants: [222, 237, 248, 734, 735, 738, 747, 750, 752, 770, 781, 910, 933, 944, 955, 977, 350, 358, 365], provide: [(15, true), (20, true), (45, true), (104, true), (131, true), (159, true), (174, true), (181, true), (191, true), (192, true), (392, true), (398, true), (418, true), (433, true), (436, true), (438, true), (547, true), (548, true), (554, true), (571, true), (576, true), (593, true), (621, true), (628, true), (629, true), (634, true), (669, true), (671, true), (674, true), (697, true), (719, true), (723, true), (727, true), (797, true), (828, true), (837, true), (858, true), (868, true), (874, true), (882, true), (232, true), (241, true), (250, true), (729, true), (749, true), (754, true), (889, true), (913, true), (921, true), (924, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [318, 321, 327, 335, 354, 368], provide: [(222, true), (237, true), (248, true), (734, true), (735, true), (738, true), (747, true), (750, true), (752, true), (770, true), (781, true), (910, true), (933, true), (944, true), (955, true), (977, true), (350, true), (358, true), (365, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(318, true), (321, true), (327, true), (335, true), (354, true), (368, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {15, 20, 45, 104, 131, 159, 166, 174, 181, 191, 192, 232, 241, 250, 264, 286, 318, 321, 327, 335, 354, 368, 392, 398, 418, 433, 436, 438, 469, 496, 499, 507, 547, 548, 554, 571, 576, 593, 621, 628, 629, 634, 669, 671, 674, 697, 719, 723, 727, 729, 749, 754, 791, 797, 828, 837, 858, 868, 874, 880, 882, 889, 913, 921, 924, 981} + [8, 268, 298, 316, 456, 457, 506, 509, 511, 515, 520, 58, 72, 73, 140, 182, 184, 204, 256, 262, 387, 388, 406, 420, 441, 544, 583, 605, 608, 637, 659, 692, 705, 728, 798, 818, 831, 846, 857, 222, 237, 248, 734, 735, 738, 747, 750, 752, 770, 781, 910, 933, 944, 955, 977, 350, 358, 365]
[INFO] [stdout] b all: {8, 58, 72, 73, 140, 166, 182, 184, 204, 222, 237, 248, 256, 262, 268, 298, 316, 350, 358, 365, 387, 388, 406, 420, 441, 456, 457, 506, 509, 511, 515, 520, 544, 583, 605, 608, 637, 659, 692, 705, 728, 734, 735, 738, 747, 750, 752, 770, 781, 791, 798, 818, 831, 846, 857, 880, 910, 933, 944, 955, 977, 981} + [264, 286, 469, 496, 499, 507, 15, 20, 45, 104, 131, 159, 174, 181, 191, 192, 392, 398, 418, 433, 436, 438, 547, 548, 554, 571, 576, 593, 621, 628, 629, 634, 669, 671, 674, 697, 719, 723, 727, 797, 828, 837, 858, 868, 874, 882, 232, 241, 250, 729, 749, 754, 889, 913, 921, 924, 318, 321, 327, 335, 354, 368]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [8, 15, 20, 45, 58, 72, 73, 104, 131, 140, 159, 166, 174, 181, 182, 184, 191, 192, 204, 222, 232, 237, 241, 248, 250, 256, 262, 264, 268, 286, 298, 316, 318, 321, 327, 335, 350, 354, 358, 365, 368, 387, 388, 392, 398, 406, 418, 420, 433, 436, 438, 441, 456, 457, 469, 496, 499, 506, 507, 509, 511, 515, 520, 544, 547, 548, 554, 571, 576, 583, 593, 605, 608, 621, 628, 629, 634, 637, 659, 669, 671, 674, 692, 697, 705, 719, 723, 727, 728, 729, 734, 735, 738, 747, 749, 750, 752, 754, 770, 781, 791, 797, 798, 818, 828, 831, 837, 846, 857, 858, 868, 874, 880, 882, 889, 910, 913, 921, 924, 933, 944, 955, 977, 981]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [8, 15, 20, 45, 58, 72, 73, 104, 131, 140, 159, 166, 174, 181, 182, 184, 191, 192, 204, 222, 232, 237, 241, 248, 250, 256, 262, 264, 268, 286, 298, 316, 318, 321, 327, 335, 350, 354, 358, 365, 368, 387, 388, 392, 398, 406, 418, 420, 433, 436, 438, 441, 456, 457, 469, 496, 499, 506, 507, 509, 511, 515, 520, 544, 547, 548, 554, 571, 576, 583, 593, 605, 608, 621, 628, 629, 634, 637, 659, 669, 671, 674, 692, 697, 705, 719, 723, 727, 728, 729, 734, 735, 738, 747, 749, 750, 752, 754, 770, 781, 791, 797, 798, 818, 828, 831, 837, 846, 857, 858, 868, 874, 880, 882, 889, 910, 913, 921, 924, 933, 944, 955, 977, 981], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [8, 15, 20, 45, 58, 72, 73, 104, 131, 140, 159, 166, 174, 181, 182, 184, 191, 192, 204, 222, 232, 237, 241, 248, 250, 256, 262, 264, 268, 286, 298, 316, 318, 321, 327, 335, 350, 354, 358, 365, 368, 387, 388, 392, 398, 406, 418, 420, 433, 436, 438, 441, 456, 457, 469, 496, 499, 506, 507, 509, 511, 515, 520, 544, 547, 548, 554, 571, 576, 583, 593, 605, 608, 621, 628, 629, 634, 637, 659, 669, 671, 674, 692, 697, 705, 719, 723, 727, 728, 729, 734, 735, 738, 747, 749, 750, 752, 754, 770, 781, 791, 797, 798, 818, 828, 831, 837, 846, 857, 858, 868, 874, 880, 882, 889, 910, 913, 921, 924, 933, 944, 955, 977, 981], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 19, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 244, 246, 251, 265, 277, 282, 285, 287, 301, 313, 361, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 743, 748, 760, 772, 813, 830, 856, 866, 888, 891, 901, 921, 931, 952, 966, 971, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 993), fp: EncodedCountingMonoid(78, SumMonoid(37915)) }], 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, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 12), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 380), fp: EncodedCountingMonoid(28, SumMonoid(5327)) }, Fingerprint { range: Range(380, 640), fp: EncodedCountingMonoid(27, SumMonoid(13433)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(12, SumMonoid(8899)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(11, SumMonoid(10256)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 227), fp: EncodedCountingMonoid(10, SumMonoid(1513)) }, Fingerprint { range: Range(227, 380), fp: EncodedCountingMonoid(10, SumMonoid(2882)) }, Fingerprint { range: Range(380, 496), fp: EncodedCountingMonoid(6, SumMonoid(2549)) }, Fingerprint { range: Range(496, 640), fp: EncodedCountingMonoid(6, SumMonoid(3182)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 94), fp: EncodedCountingMonoid(8, SumMonoid(391)) }, Fingerprint { range: Range(94, 227), fp: EncodedCountingMonoid(7, SumMonoid(1079)) }, Fingerprint { range: Range(227, 287), fp: EncodedCountingMonoid(7, SumMonoid(1850)) }, Fingerprint { range: Range(287, 380), fp: EncodedCountingMonoid(6, SumMonoid(2007)) }, Fingerprint { range: Range(380, 458), fp: EncodedCountingMonoid(7, SumMonoid(2957)) }, Fingerprint { range: Range(458, 496), fp: EncodedCountingMonoid(6, SumMonoid(2812)) }, Fingerprint { range: Range(496, 540), fp: EncodedCountingMonoid(7, SumMonoid(3593)) }, Fingerprint { range: Range(540, 640), fp: EncodedCountingMonoid(7, SumMonoid(4071)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(4, SumMonoid(2971)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }, Fingerprint { range: Range(947, 977), fp: EncodedCountingMonoid(3, SumMonoid(2889)) }], item_sets: [ItemSet { range: Range(772, 830), items: [772, 813], want_response: true }, ItemSet { range: Range(830, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(977, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(94, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 227), fp: EncodedCountingMonoid(4, SumMonoid(802)) }, Fingerprint { range: Range(227, 244), fp: EncodedCountingMonoid(3, SumMonoid(687)) }, Fingerprint { range: Range(244, 287), fp: EncodedCountingMonoid(3, SumMonoid(803)) }, Fingerprint { range: Range(496, 523), fp: EncodedCountingMonoid(3, SumMonoid(1508)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(947, 969), fp: EncodedCountingMonoid(3, SumMonoid(2854)) }, Fingerprint { range: Range(969, 977), fp: EncodedCountingMonoid(3, SumMonoid(2912)) }], item_sets: [ItemSet { range: Range(772, 830), items: [772, 777, 788, 807], want_response: false }, ItemSet { range: Range(830, 866), items: [838, 847, 854, 862], want_response: false }, ItemSet { range: Range(977, 993), items: [990], want_response: false }, ItemSet { range: Range(12, 94), items: [43], want_response: true }, ItemSet { range: Range(287, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 380), items: [366, 371], want_response: true }, ItemSet { range: Range(380, 413), items: [382, 389], want_response: true }, ItemSet { range: Range(413, 458), items: [413, 439], want_response: true }, ItemSet { range: Range(458, 496), items: [458, 468], want_response: true }, ItemSet { range: Range(523, 540), items: [523, 527], want_response: true }, ItemSet { range: Range(540, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [813, 830, 856, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(244, 277), fp: EncodedCountingMonoid(4, SumMonoid(1006)) }, Fingerprint { range: Range(277, 287), fp: EncodedCountingMonoid(3, SumMonoid(844)) }, Fingerprint { range: Range(496, 515), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(515, 523), fp: EncodedCountingMonoid(3, SumMonoid(1551)) }], item_sets: [ItemSet { range: Range(12, 94), items: [12, 19, 33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(287, 366), items: [287, 301, 313, 361], want_response: false }, ItemSet { range: Range(366, 380), items: [372, 373], want_response: false }, ItemSet { range: Range(380, 413), items: [380, 395], want_response: false }, ItemSet { range: Range(413, 458), items: [419, 427, 442, 444, 450], want_response: false }, ItemSet { range: Range(458, 496), items: [458, 462, 466, 473, 476, 477], want_response: false }, ItemSet { range: Range(523, 540), items: [524], want_response: false }, ItemSet { range: Range(540, 640), items: [540, 543, 552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 743, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 125), items: [94, 107], want_response: true }, ItemSet { range: Range(125, 167), items: [125, 136], want_response: true }, ItemSet { range: Range(167, 211), items: [202, 204], want_response: true }, ItemSet { range: Range(211, 227), items: [211], want_response: true }, ItemSet { range: Range(227, 244), items: [], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(947, 969), items: [952, 966], want_response: true }, ItemSet { range: Range(969, 977), items: [971], want_response: true }], wants: [777, 788, 807, 838, 847, 854, 862, 990, 43, 342, 366, 371, 382, 389, 413, 439, 468, 523, 527, 624, 737, 742, 879, 897], provide: [(813, true), (830, true), (856, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 125), items: [102, 105], want_response: false }, ItemSet { range: Range(125, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 211), items: [167, 203, 209], want_response: false }, ItemSet { range: Range(211, 227), items: [223], want_response: false }, ItemSet { range: Range(227, 244), items: [227, 229, 231], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(947, 969), items: [947, 953, 954], want_response: false }, ItemSet { range: Range(969, 977), items: [969, 970, 973], want_response: false }, ItemSet { range: Range(244, 277), items: [244], want_response: true }, ItemSet { range: Range(277, 287), items: [277, 282], want_response: true }, ItemSet { range: Range(496, 509), items: [496, 503], want_response: true }, ItemSet { range: Range(509, 515), items: [509], want_response: true }, ItemSet { range: Range(515, 523), items: [], want_response: true }], wants: [12, 19, 33, 40, 46, 73, 80, 88, 287, 301, 361, 372, 373, 380, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 524, 540, 543, 552, 598, 602, 604, 632, 720, 743, 748, 888, 891, 94, 107, 125, 136, 202, 204, 211, 660, 670, 674, 866, 952, 966, 971], provide: [(777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (990, true), (43, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (468, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(244, 277), items: [244, 246, 251, 265], want_response: false }, ItemSet { range: Range(277, 287), items: [277, 282, 285], want_response: false }, ItemSet { range: Range(496, 509), items: [500, 504], want_response: false }, ItemSet { range: Range(509, 515), items: [514], want_response: false }, ItemSet { range: Range(515, 523), items: [515, 516, 520], want_response: false }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 640, 666, 682, 689, 705, 867, 869, 873, 947, 953, 954, 969, 970, 973, 496, 503, 509], provide: [(12, true), (19, true), (33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (287, true), (301, true), (361, true), (372, true), (373, true), (380, true), (395, true), (419, true), (427, true), (442, true), (444, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (743, true), (748, true), (888, true), (891, true), (94, true), (107, true), (125, true), (136, true), (202, true), (204, true), (211, true), (660, true), (670, true), (674, true), (866, true), (952, true), (966, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [246, 251, 265, 285, 500, 504, 514, 515, 516, 520], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (496, true), (503, true), (509, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(246, true), (251, true), (265, true), (285, true), (500, true), (504, true), (514, true), (515, true), (516, true), (520, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 19, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 244, 246, 251, 265, 277, 282, 285, 287, 301, 313, 361, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 743, 748, 760, 772, 813, 830, 856, 866, 888, 891, 901, 921, 931, 952, 966, 971, 977, 992} + [996, 10, 777, 788, 807, 838, 847, 854, 862, 990, 43, 342, 366, 371, 382, 389, 413, 439, 468, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 640, 666, 682, 689, 705, 867, 869, 873, 947, 953, 954, 969, 970, 973, 496, 503, 509]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [813, 830, 856, 977, 992, 12, 19, 33, 40, 46, 73, 80, 88, 287, 301, 361, 372, 373, 380, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 524, 540, 543, 552, 598, 602, 604, 632, 720, 743, 748, 888, 891, 94, 107, 125, 136, 202, 204, 211, 660, 670, 674, 866, 952, 966, 971, 246, 251, 265, 285, 500, 504, 514, 515, 516, 520]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 244, 246, 251, 265, 277, 282, 285, 287, 301, 313, 361, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 743, 748, 760, 772, 813, 830, 856, 866, 888, 891, 901, 921, 931, 952, 966, 971, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 993), fp: EncodedCountingMonoid(77, SumMonoid(37896)) }], 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, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 12), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 380), fp: EncodedCountingMonoid(27, SumMonoid(5308)) }, Fingerprint { range: Range(380, 640), fp: EncodedCountingMonoid(27, SumMonoid(13433)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(12, SumMonoid(8899)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(11, SumMonoid(10256)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 227), fp: EncodedCountingMonoid(10, SumMonoid(1513)) }, Fingerprint { range: Range(227, 380), fp: EncodedCountingMonoid(10, SumMonoid(2882)) }, Fingerprint { range: Range(380, 496), fp: EncodedCountingMonoid(6, SumMonoid(2549)) }, Fingerprint { range: Range(496, 640), fp: EncodedCountingMonoid(6, SumMonoid(3182)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 94), fp: EncodedCountingMonoid(7, SumMonoid(372)) }, Fingerprint { range: Range(94, 227), fp: EncodedCountingMonoid(7, SumMonoid(1079)) }, Fingerprint { range: Range(227, 287), fp: EncodedCountingMonoid(7, SumMonoid(1850)) }, Fingerprint { range: Range(287, 380), fp: EncodedCountingMonoid(6, SumMonoid(2007)) }, Fingerprint { range: Range(380, 458), fp: EncodedCountingMonoid(7, SumMonoid(2957)) }, Fingerprint { range: Range(458, 496), fp: EncodedCountingMonoid(6, SumMonoid(2812)) }, Fingerprint { range: Range(496, 540), fp: EncodedCountingMonoid(7, SumMonoid(3593)) }, Fingerprint { range: Range(540, 640), fp: EncodedCountingMonoid(7, SumMonoid(4071)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(4, SumMonoid(2971)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }, Fingerprint { range: Range(947, 977), fp: EncodedCountingMonoid(3, SumMonoid(2889)) }], item_sets: [ItemSet { range: Range(772, 830), items: [772, 813], want_response: true }, ItemSet { range: Range(830, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(977, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(94, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 227), fp: EncodedCountingMonoid(4, SumMonoid(802)) }, Fingerprint { range: Range(227, 244), fp: EncodedCountingMonoid(3, SumMonoid(687)) }, Fingerprint { range: Range(244, 287), fp: EncodedCountingMonoid(3, SumMonoid(803)) }, Fingerprint { range: Range(496, 523), fp: EncodedCountingMonoid(3, SumMonoid(1508)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(947, 969), fp: EncodedCountingMonoid(3, SumMonoid(2854)) }, Fingerprint { range: Range(969, 977), fp: EncodedCountingMonoid(3, SumMonoid(2912)) }], item_sets: [ItemSet { range: Range(772, 830), items: [772, 777, 788, 807], want_response: false }, ItemSet { range: Range(830, 866), items: [838, 847, 854, 862], want_response: false }, ItemSet { range: Range(977, 993), items: [990], want_response: false }, ItemSet { range: Range(12, 94), items: [43], want_response: true }, ItemSet { range: Range(287, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 380), items: [366, 371], want_response: true }, ItemSet { range: Range(380, 413), items: [382, 389], want_response: true }, ItemSet { range: Range(413, 458), items: [413, 439], want_response: true }, ItemSet { range: Range(458, 496), items: [458, 468], want_response: true }, ItemSet { range: Range(523, 540), items: [523, 527], want_response: true }, ItemSet { range: Range(540, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [813, 830, 856, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(244, 277), fp: EncodedCountingMonoid(4, SumMonoid(1006)) }, Fingerprint { range: Range(277, 287), fp: EncodedCountingMonoid(3, SumMonoid(844)) }, Fingerprint { range: Range(496, 515), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(515, 523), fp: EncodedCountingMonoid(3, SumMonoid(1551)) }], item_sets: [ItemSet { range: Range(12, 94), items: [12, 33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(287, 366), items: [287, 301, 313, 361], want_response: false }, ItemSet { range: Range(366, 380), items: [372, 373], want_response: false }, ItemSet { range: Range(380, 413), items: [380, 395], want_response: false }, ItemSet { range: Range(413, 458), items: [419, 427, 442, 444, 450], want_response: false }, ItemSet { range: Range(458, 496), items: [458, 462, 466, 473, 476, 477], want_response: false }, ItemSet { range: Range(523, 540), items: [524], want_response: false }, ItemSet { range: Range(540, 640), items: [540, 543, 552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 743, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 125), items: [94, 107], want_response: true }, ItemSet { range: Range(125, 167), items: [125, 136], want_response: true }, ItemSet { range: Range(167, 211), items: [202, 204], want_response: true }, ItemSet { range: Range(211, 227), items: [211], want_response: true }, ItemSet { range: Range(227, 244), items: [], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(947, 969), items: [952, 966], want_response: true }, ItemSet { range: Range(969, 977), items: [971], want_response: true }], wants: [777, 788, 807, 838, 847, 854, 862, 990, 43, 342, 366, 371, 382, 389, 413, 439, 468, 523, 527, 624, 737, 742, 879, 897], provide: [(813, true), (830, true), (856, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 125), items: [102, 105], want_response: false }, ItemSet { range: Range(125, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 211), items: [167, 203, 209], want_response: false }, ItemSet { range: Range(211, 227), items: [223], want_response: false }, ItemSet { range: Range(227, 244), items: [227, 229, 231], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(947, 969), items: [947, 953, 954], want_response: false }, ItemSet { range: Range(969, 977), items: [969, 970, 973], want_response: false }, ItemSet { range: Range(244, 277), items: [244], want_response: true }, ItemSet { range: Range(277, 287), items: [277, 282], want_response: true }, ItemSet { range: Range(496, 509), items: [496, 503], want_response: true }, ItemSet { range: Range(509, 515), items: [509], want_response: true }, ItemSet { range: Range(515, 523), items: [], want_response: true }], wants: [12, 33, 40, 46, 73, 80, 88, 287, 301, 361, 372, 373, 380, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 524, 540, 543, 552, 598, 602, 604, 632, 720, 743, 748, 888, 891, 94, 107, 125, 136, 202, 204, 211, 660, 670, 674, 866, 952, 966, 971], provide: [(777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (990, true), (43, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (468, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(244, 277), items: [244, 246, 251, 265], want_response: false }, ItemSet { range: Range(277, 287), items: [277, 282, 285], want_response: false }, ItemSet { range: Range(496, 509), items: [500, 504], want_response: false }, ItemSet { range: Range(509, 515), items: [514], want_response: false }, ItemSet { range: Range(515, 523), items: [515, 516, 520], want_response: false }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 640, 666, 682, 689, 705, 867, 869, 873, 947, 953, 954, 969, 970, 973, 496, 503, 509], provide: [(12, true), (33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (287, true), (301, true), (361, true), (372, true), (373, true), (380, true), (395, true), (419, true), (427, true), (442, true), (444, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (743, true), (748, true), (888, true), (891, true), (94, true), (107, true), (125, true), (136, true), (202, true), (204, true), (211, true), (660, true), (670, true), (674, true), (866, true), (952, true), (966, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [246, 251, 265, 285, 500, 504, 514, 515, 516, 520], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (496, true), (503, true), (509, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(246, true), (251, true), (265, true), (285, true), (500, true), (504, true), (514, true), (515, true), (516, true), (520, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 244, 246, 251, 265, 277, 282, 285, 287, 301, 313, 361, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 743, 748, 760, 772, 813, 830, 856, 866, 888, 891, 901, 921, 931, 952, 966, 971, 977, 992} + [996, 10, 777, 788, 807, 838, 847, 854, 862, 990, 43, 342, 366, 371, 382, 389, 413, 439, 468, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 640, 666, 682, 689, 705, 867, 869, 873, 947, 953, 954, 969, 970, 973, 496, 503, 509]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [813, 830, 856, 977, 992, 12, 33, 40, 46, 73, 80, 88, 287, 301, 361, 372, 373, 380, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 524, 540, 543, 552, 598, 602, 604, 632, 720, 743, 748, 888, 891, 94, 107, 125, 136, 202, 204, 211, 660, 670, 674, 866, 952, 966, 971, 246, 251, 265, 285, 500, 504, 514, 515, 516, 520]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 244, 246, 251, 265, 277, 282, 285, 287, 301, 313, 361, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 743, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 952, 966, 971, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 993), fp: EncodedCountingMonoid(76, SumMonoid(37083)) }], 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, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 12), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 380), fp: EncodedCountingMonoid(27, SumMonoid(5308)) }, Fingerprint { range: Range(380, 640), fp: EncodedCountingMonoid(27, SumMonoid(13433)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(11, SumMonoid(8086)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(11, SumMonoid(10256)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 227), fp: EncodedCountingMonoid(10, SumMonoid(1513)) }, Fingerprint { range: Range(227, 380), fp: EncodedCountingMonoid(10, SumMonoid(2882)) }, Fingerprint { range: Range(380, 496), fp: EncodedCountingMonoid(6, SumMonoid(2549)) }, Fingerprint { range: Range(496, 640), fp: EncodedCountingMonoid(6, SumMonoid(3182)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 94), fp: EncodedCountingMonoid(7, SumMonoid(372)) }, Fingerprint { range: Range(94, 227), fp: EncodedCountingMonoid(7, SumMonoid(1079)) }, Fingerprint { range: Range(227, 287), fp: EncodedCountingMonoid(7, SumMonoid(1850)) }, Fingerprint { range: Range(287, 380), fp: EncodedCountingMonoid(6, SumMonoid(2007)) }, Fingerprint { range: Range(380, 458), fp: EncodedCountingMonoid(7, SumMonoid(2957)) }, Fingerprint { range: Range(458, 496), fp: EncodedCountingMonoid(6, SumMonoid(2812)) }, Fingerprint { range: Range(496, 540), fp: EncodedCountingMonoid(7, SumMonoid(3593)) }, Fingerprint { range: Range(540, 640), fp: EncodedCountingMonoid(7, SumMonoid(4071)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(4, SumMonoid(2971)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }, Fingerprint { range: Range(947, 977), fp: EncodedCountingMonoid(3, SumMonoid(2889)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 830], want_response: true }, ItemSet { range: Range(856, 866), items: [856], want_response: true }, ItemSet { range: Range(977, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(94, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 227), fp: EncodedCountingMonoid(4, SumMonoid(802)) }, Fingerprint { range: Range(227, 244), fp: EncodedCountingMonoid(3, SumMonoid(687)) }, Fingerprint { range: Range(244, 287), fp: EncodedCountingMonoid(3, SumMonoid(803)) }, Fingerprint { range: Range(496, 523), fp: EncodedCountingMonoid(3, SumMonoid(1508)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(947, 969), fp: EncodedCountingMonoid(3, SumMonoid(2854)) }, Fingerprint { range: Range(969, 977), fp: EncodedCountingMonoid(3, SumMonoid(2912)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(856, 866), items: [862], want_response: false }, ItemSet { range: Range(977, 993), items: [990], want_response: false }, ItemSet { range: Range(12, 94), items: [43], want_response: true }, ItemSet { range: Range(287, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 380), items: [366, 371], want_response: true }, ItemSet { range: Range(380, 413), items: [382, 389], want_response: true }, ItemSet { range: Range(413, 458), items: [413, 439], want_response: true }, ItemSet { range: Range(458, 496), items: [458, 468], want_response: true }, ItemSet { range: Range(523, 540), items: [523, 527], want_response: true }, ItemSet { range: Range(540, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(244, 277), fp: EncodedCountingMonoid(4, SumMonoid(1006)) }, Fingerprint { range: Range(277, 287), fp: EncodedCountingMonoid(3, SumMonoid(844)) }, Fingerprint { range: Range(496, 515), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(515, 523), fp: EncodedCountingMonoid(3, SumMonoid(1551)) }], item_sets: [ItemSet { range: Range(12, 94), items: [12, 33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(287, 366), items: [287, 301, 313, 361], want_response: false }, ItemSet { range: Range(366, 380), items: [372, 373], want_response: false }, ItemSet { range: Range(380, 413), items: [380, 395], want_response: false }, ItemSet { range: Range(413, 458), items: [419, 427, 442, 444, 450], want_response: false }, ItemSet { range: Range(458, 496), items: [458, 462, 466, 473, 476, 477], want_response: false }, ItemSet { range: Range(523, 540), items: [524], want_response: false }, ItemSet { range: Range(540, 640), items: [540, 543, 552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 743, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 125), items: [94, 107], want_response: true }, ItemSet { range: Range(125, 167), items: [125, 136], want_response: true }, ItemSet { range: Range(167, 211), items: [202, 204], want_response: true }, ItemSet { range: Range(211, 227), items: [211], want_response: true }, ItemSet { range: Range(227, 244), items: [], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(947, 969), items: [952, 966], want_response: true }, ItemSet { range: Range(969, 977), items: [971], want_response: true }], wants: [777, 788, 807, 838, 847, 854, 862, 990, 43, 342, 366, 371, 382, 389, 413, 439, 468, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 125), items: [102, 105], want_response: false }, ItemSet { range: Range(125, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 211), items: [167, 203, 209], want_response: false }, ItemSet { range: Range(211, 227), items: [223], want_response: false }, ItemSet { range: Range(227, 244), items: [227, 229, 231], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(947, 969), items: [947, 953, 954], want_response: false }, ItemSet { range: Range(969, 977), items: [969, 970, 973], want_response: false }, ItemSet { range: Range(244, 277), items: [244], want_response: true }, ItemSet { range: Range(277, 287), items: [277, 282], want_response: true }, ItemSet { range: Range(496, 509), items: [496, 503], want_response: true }, ItemSet { range: Range(509, 515), items: [509], want_response: true }, ItemSet { range: Range(515, 523), items: [], want_response: true }], wants: [12, 33, 40, 46, 73, 80, 88, 287, 301, 361, 372, 373, 380, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 524, 540, 543, 552, 598, 602, 604, 632, 720, 743, 748, 888, 891, 94, 107, 125, 136, 202, 204, 211, 660, 670, 674, 866, 952, 966, 971], provide: [(777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (990, true), (43, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (468, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(244, 277), items: [244, 246, 251, 265], want_response: false }, ItemSet { range: Range(277, 287), items: [277, 282, 285], want_response: false }, ItemSet { range: Range(496, 509), items: [500, 504], want_response: false }, ItemSet { range: Range(509, 515), items: [514], want_response: false }, ItemSet { range: Range(515, 523), items: [515, 516, 520], want_response: false }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 640, 666, 682, 689, 705, 867, 869, 873, 947, 953, 954, 969, 970, 973, 496, 503, 509], provide: [(12, true), (33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (287, true), (301, true), (361, true), (372, true), (373, true), (380, true), (395, true), (419, true), (427, true), (442, true), (444, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (743, true), (748, true), (888, true), (891, true), (94, true), (107, true), (125, true), (136, true), (202, true), (204, true), (211, true), (660, true), (670, true), (674, true), (866, true), (952, true), (966, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [246, 251, 265, 285, 500, 504, 514, 515, 516, 520], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (496, true), (503, true), (509, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(246, true), (251, true), (265, true), (285, true), (500, true), (504, true), (514, true), (515, true), (516, true), (520, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 244, 246, 251, 265, 277, 282, 285, 287, 301, 313, 361, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 743, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 952, 966, 971, 977, 992} + [996, 10, 777, 788, 807, 838, 847, 854, 862, 990, 43, 342, 366, 371, 382, 389, 413, 439, 468, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 640, 666, 682, 689, 705, 867, 869, 873, 947, 953, 954, 969, 970, 973, 496, 503, 509]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 977, 992, 12, 33, 40, 46, 73, 80, 88, 287, 301, 361, 372, 373, 380, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 524, 540, 543, 552, 598, 602, 604, 632, 720, 743, 748, 888, 891, 94, 107, 125, 136, 202, 204, 211, 660, 670, 674, 866, 952, 966, 971, 246, 251, 265, 285, 500, 504, 514, 515, 516, 520]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 244, 246, 251, 265, 277, 282, 285, 287, 301, 313, 361, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 743, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 952, 966, 971, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 993), fp: EncodedCountingMonoid(76, SumMonoid(37083)) }], 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, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 12), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 380), fp: EncodedCountingMonoid(27, SumMonoid(5308)) }, Fingerprint { range: Range(380, 640), fp: EncodedCountingMonoid(27, SumMonoid(13433)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(11, SumMonoid(8086)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(11, SumMonoid(10256)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 227), fp: EncodedCountingMonoid(10, SumMonoid(1513)) }, Fingerprint { range: Range(227, 380), fp: EncodedCountingMonoid(10, SumMonoid(2882)) }, Fingerprint { range: Range(380, 496), fp: EncodedCountingMonoid(6, SumMonoid(2549)) }, Fingerprint { range: Range(496, 640), fp: EncodedCountingMonoid(6, SumMonoid(3182)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 94), fp: EncodedCountingMonoid(7, SumMonoid(372)) }, Fingerprint { range: Range(94, 227), fp: EncodedCountingMonoid(7, SumMonoid(1079)) }, Fingerprint { range: Range(227, 287), fp: EncodedCountingMonoid(7, SumMonoid(1850)) }, Fingerprint { range: Range(287, 380), fp: EncodedCountingMonoid(6, SumMonoid(2007)) }, Fingerprint { range: Range(380, 458), fp: EncodedCountingMonoid(7, SumMonoid(2957)) }, Fingerprint { range: Range(458, 496), fp: EncodedCountingMonoid(6, SumMonoid(2812)) }, Fingerprint { range: Range(496, 540), fp: EncodedCountingMonoid(7, SumMonoid(3593)) }, Fingerprint { range: Range(540, 640), fp: EncodedCountingMonoid(7, SumMonoid(4071)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(4, SumMonoid(2971)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }, Fingerprint { range: Range(947, 977), fp: EncodedCountingMonoid(3, SumMonoid(2889)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 830], want_response: true }, ItemSet { range: Range(856, 866), items: [856], want_response: true }, ItemSet { range: Range(977, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(94, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 227), fp: EncodedCountingMonoid(4, SumMonoid(802)) }, Fingerprint { range: Range(227, 244), fp: EncodedCountingMonoid(3, SumMonoid(687)) }, Fingerprint { range: Range(244, 287), fp: EncodedCountingMonoid(3, SumMonoid(803)) }, Fingerprint { range: Range(496, 523), fp: EncodedCountingMonoid(3, SumMonoid(1508)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(947, 969), fp: EncodedCountingMonoid(3, SumMonoid(2854)) }, Fingerprint { range: Range(969, 977), fp: EncodedCountingMonoid(3, SumMonoid(2912)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(856, 866), items: [862], want_response: false }, ItemSet { range: Range(977, 993), items: [990], want_response: false }, ItemSet { range: Range(12, 94), items: [43], want_response: true }, ItemSet { range: Range(287, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 380), items: [366, 371], want_response: true }, ItemSet { range: Range(380, 413), items: [382, 389], want_response: true }, ItemSet { range: Range(413, 458), items: [413, 439], want_response: true }, ItemSet { range: Range(458, 496), items: [458, 468], want_response: true }, ItemSet { range: Range(523, 540), items: [523, 527], want_response: true }, ItemSet { range: Range(540, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(244, 277), fp: EncodedCountingMonoid(4, SumMonoid(1006)) }, Fingerprint { range: Range(277, 287), fp: EncodedCountingMonoid(3, SumMonoid(844)) }, Fingerprint { range: Range(496, 515), fp: EncodedCountingMonoid(3, SumMonoid(1518)) }, Fingerprint { range: Range(515, 523), fp: EncodedCountingMonoid(3, SumMonoid(1551)) }], item_sets: [ItemSet { range: Range(12, 94), items: [12, 33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(287, 366), items: [287, 301, 313, 361], want_response: false }, ItemSet { range: Range(366, 380), items: [372, 373], want_response: false }, ItemSet { range: Range(380, 413), items: [380, 395], want_response: false }, ItemSet { range: Range(413, 458), items: [419, 427, 442, 444, 450], want_response: false }, ItemSet { range: Range(458, 496), items: [458, 462, 466, 473, 476, 477], want_response: false }, ItemSet { range: Range(523, 540), items: [524], want_response: false }, ItemSet { range: Range(540, 640), items: [540, 543, 552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 743, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 125), items: [94, 107], want_response: true }, ItemSet { range: Range(125, 167), items: [125, 136], want_response: true }, ItemSet { range: Range(167, 211), items: [202, 204], want_response: true }, ItemSet { range: Range(211, 227), items: [211], want_response: true }, ItemSet { range: Range(227, 244), items: [], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(947, 969), items: [952, 966], want_response: true }, ItemSet { range: Range(969, 977), items: [971], want_response: true }], wants: [777, 788, 807, 838, 847, 854, 862, 990, 43, 342, 366, 371, 382, 389, 413, 439, 468, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 125), items: [102, 105], want_response: false }, ItemSet { range: Range(125, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 211), items: [167, 203, 209], want_response: false }, ItemSet { range: Range(211, 227), items: [223], want_response: false }, ItemSet { range: Range(227, 244), items: [227, 229, 231], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(947, 969), items: [947, 953, 954], want_response: false }, ItemSet { range: Range(969, 977), items: [969, 970, 973], want_response: false }, ItemSet { range: Range(244, 277), items: [244], want_response: true }, ItemSet { range: Range(277, 287), items: [277, 282], want_response: true }, ItemSet { range: Range(496, 509), items: [496, 503], want_response: true }, ItemSet { range: Range(509, 515), items: [509], want_response: true }, ItemSet { range: Range(515, 523), items: [], want_response: true }], wants: [12, 33, 40, 46, 73, 80, 88, 287, 301, 361, 372, 373, 380, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 524, 540, 543, 552, 598, 602, 604, 632, 720, 743, 748, 888, 891, 94, 107, 125, 136, 202, 204, 211, 660, 670, 674, 866, 952, 966, 971], provide: [(777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (990, true), (43, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (468, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(244, 277), items: [244, 246, 251, 265], want_response: false }, ItemSet { range: Range(277, 287), items: [277, 282, 285], want_response: false }, ItemSet { range: Range(496, 509), items: [500, 504], want_response: false }, ItemSet { range: Range(509, 515), items: [514], want_response: false }, ItemSet { range: Range(515, 523), items: [515, 516, 520], want_response: false }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 640, 666, 682, 689, 705, 867, 869, 873, 947, 953, 954, 969, 970, 973, 496, 503, 509], provide: [(12, true), (33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (287, true), (301, true), (361, true), (372, true), (373, true), (380, true), (395, true), (419, true), (427, true), (442, true), (444, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (743, true), (748, true), (888, true), (891, true), (94, true), (107, true), (125, true), (136, true), (202, true), (204, true), (211, true), (660, true), (670, true), (674, true), (866, true), (952, true), (966, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [246, 251, 265, 285, 500, 504, 514, 515, 516, 520], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (496, true), (503, true), (509, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(246, true), (251, true), (265, true), (285, true), (500, true), (504, true), (514, true), (515, true), (516, true), (520, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 244, 246, 251, 265, 277, 282, 285, 287, 301, 313, 361, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 743, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 952, 966, 971, 977, 992} + [996, 10, 777, 788, 807, 838, 847, 854, 862, 990, 43, 342, 366, 371, 382, 389, 413, 439, 468, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 640, 666, 682, 689, 705, 867, 869, 873, 947, 953, 954, 969, 970, 973, 496, 503, 509]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 977, 992, 12, 33, 40, 46, 73, 80, 88, 287, 301, 361, 372, 373, 380, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 524, 540, 543, 552, 598, 602, 604, 632, 720, 743, 748, 888, 891, 94, 107, 125, 136, 202, 204, 211, 660, 670, 674, 866, 952, 966, 971, 246, 251, 265, 285, 500, 504, 514, 515, 516, 520]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 244, 246, 251, 265, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 743, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 952, 966, 971, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 993), fp: EncodedCountingMonoid(75, SumMonoid(36722)) }], 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, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 12), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 395), fp: EncodedCountingMonoid(27, SumMonoid(5327)) }, Fingerprint { range: Range(395, 640), fp: EncodedCountingMonoid(26, SumMonoid(13053)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(11, SumMonoid(8086)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(11, SumMonoid(10256)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 229), fp: EncodedCountingMonoid(11, SumMonoid(1740)) }, Fingerprint { range: Range(229, 395), fp: EncodedCountingMonoid(11, SumMonoid(3426)) }, Fingerprint { range: Range(395, 503), fp: EncodedCountingMonoid(5, SumMonoid(2274)) }, Fingerprint { range: Range(503, 640), fp: EncodedCountingMonoid(5, SumMonoid(2686)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 94), fp: EncodedCountingMonoid(7, SumMonoid(372)) }, Fingerprint { range: Range(94, 229), fp: EncodedCountingMonoid(7, SumMonoid(1079)) }, Fingerprint { range: Range(229, 287), fp: EncodedCountingMonoid(7, SumMonoid(1850)) }, Fingerprint { range: Range(287, 395), fp: EncodedCountingMonoid(6, SumMonoid(2026)) }, Fingerprint { range: Range(395, 462), fp: EncodedCountingMonoid(7, SumMonoid(3035)) }, Fingerprint { range: Range(462, 503), fp: EncodedCountingMonoid(6, SumMonoid(2854)) }, Fingerprint { range: Range(503, 543), fp: EncodedCountingMonoid(7, SumMonoid(3633)) }, Fingerprint { range: Range(543, 640), fp: EncodedCountingMonoid(6, SumMonoid(3531)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(4, SumMonoid(2971)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }, Fingerprint { range: Range(947, 977), fp: EncodedCountingMonoid(3, SumMonoid(2889)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 830], want_response: true }, ItemSet { range: Range(856, 866), items: [856], want_response: true }, ItemSet { range: Range(977, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(94, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 229), fp: EncodedCountingMonoid(5, SumMonoid(1029)) }, Fingerprint { range: Range(229, 277), fp: EncodedCountingMonoid(3, SumMonoid(704)) }, Fingerprint { range: Range(287, 371), fp: EncodedCountingMonoid(3, SumMonoid(1021)) }, Fingerprint { range: Range(371, 395), fp: EncodedCountingMonoid(3, SumMonoid(1142)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(947, 969), fp: EncodedCountingMonoid(3, SumMonoid(2854)) }, Fingerprint { range: Range(969, 977), fp: EncodedCountingMonoid(3, SumMonoid(2912)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(856, 866), items: [862], want_response: false }, ItemSet { range: Range(977, 993), items: [990], want_response: false }, ItemSet { range: Range(12, 94), items: [43], want_response: true }, ItemSet { range: Range(277, 287), items: [277, 282], want_response: true }, ItemSet { range: Range(395, 458), items: [413, 439], want_response: true }, ItemSet { range: Range(458, 462), items: [458], want_response: true }, ItemSet { range: Range(462, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 523), items: [503, 509], want_response: true }, ItemSet { range: Range(523, 543), items: [523, 527], want_response: true }, ItemSet { range: Range(543, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(12, 94), items: [12, 33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(277, 287), items: [277, 282, 285], want_response: false }, ItemSet { range: Range(395, 458), items: [395, 419, 427, 442, 444, 450], want_response: false }, ItemSet { range: Range(458, 462), items: [458], want_response: false }, ItemSet { range: Range(462, 503), items: [462, 466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 523), items: [504, 514, 515, 516, 520], want_response: false }, ItemSet { range: Range(523, 543), items: [524, 540], want_response: false }, ItemSet { range: Range(543, 640), items: [543, 552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 743, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 125), items: [94, 107], want_response: true }, ItemSet { range: Range(125, 167), items: [125, 136], want_response: true }, ItemSet { range: Range(167, 211), items: [202, 204], want_response: true }, ItemSet { range: Range(211, 229), items: [211], want_response: true }, ItemSet { range: Range(229, 251), items: [244, 246], want_response: true }, ItemSet { range: Range(251, 277), items: [251, 265], want_response: true }, ItemSet { range: Range(287, 313), items: [287, 301], want_response: true }, ItemSet { range: Range(313, 371), items: [313], want_response: true }, ItemSet { range: Range(371, 380), items: [372, 373], want_response: true }, ItemSet { range: Range(380, 395), items: [380], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(947, 969), items: [952, 966], want_response: true }, ItemSet { range: Range(969, 977), items: [971], want_response: true }], wants: [777, 788, 807, 838, 847, 854, 862, 990, 43, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 125), items: [102, 105], want_response: false }, ItemSet { range: Range(125, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 211), items: [167, 203, 209], want_response: false }, ItemSet { range: Range(211, 229), items: [223, 227], want_response: false }, ItemSet { range: Range(229, 251), items: [229, 231, 244], want_response: false }, ItemSet { range: Range(251, 277), items: [], want_response: false }, ItemSet { range: Range(287, 313), items: [], want_response: false }, ItemSet { range: Range(313, 371), items: [313, 342, 366], want_response: false }, ItemSet { range: Range(371, 380), items: [371], want_response: false }, ItemSet { range: Range(380, 395), items: [382, 389], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(947, 969), items: [947, 953, 954], want_response: false }, ItemSet { range: Range(969, 977), items: [969, 970, 973], want_response: false }], wants: [12, 33, 40, 46, 73, 80, 88, 285, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 720, 743, 748, 888, 891, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 287, 301, 372, 373, 380, 660, 670, 674, 866, 952, 966, 971], provide: [(777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (990, true), (43, true), (413, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 342, 366, 371, 382, 389, 640, 666, 682, 689, 705, 867, 869, 873, 947, 953, 954, 969, 970, 973], provide: [(12, true), (33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (285, true), (395, true), (419, true), (427, true), (442, true), (444, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (520, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (743, true), (748, true), (888, true), (891, true), (94, true), (107, true), (125, true), (136, true), (202, true), (204, true), (211, true), (246, true), (251, true), (265, true), (287, true), (301, true), (372, true), (373, true), (380, true), (660, true), (670, true), (674, true), (866, true), (952, true), (966, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (342, true), (366, true), (371, true), (382, true), (389, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 244, 246, 251, 265, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 743, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 952, 966, 971, 977, 992} + [996, 10, 777, 788, 807, 838, 847, 854, 862, 990, 43, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 342, 366, 371, 382, 389, 640, 666, 682, 689, 705, 867, 869, 873, 947, 953, 954, 969, 970, 973]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 977, 992, 12, 33, 40, 46, 73, 80, 88, 285, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 720, 743, 748, 888, 891, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 287, 301, 372, 373, 380, 660, 670, 674, 866, 952, 966, 971]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 743, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 952, 966, 971, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 993), fp: EncodedCountingMonoid(74, SumMonoid(36478)) }], 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, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 12), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 395), fp: EncodedCountingMonoid(26, SumMonoid(5083)) }, Fingerprint { range: Range(395, 640), fp: EncodedCountingMonoid(26, SumMonoid(13053)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(11, SumMonoid(8086)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(11, SumMonoid(10256)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 229), fp: EncodedCountingMonoid(11, SumMonoid(1740)) }, Fingerprint { range: Range(229, 395), fp: EncodedCountingMonoid(11, SumMonoid(3426)) }, Fingerprint { range: Range(395, 503), fp: EncodedCountingMonoid(5, SumMonoid(2274)) }, Fingerprint { range: Range(503, 640), fp: EncodedCountingMonoid(5, SumMonoid(2686)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 94), fp: EncodedCountingMonoid(7, SumMonoid(372)) }, Fingerprint { range: Range(94, 229), fp: EncodedCountingMonoid(7, SumMonoid(1079)) }, Fingerprint { range: Range(229, 287), fp: EncodedCountingMonoid(6, SumMonoid(1606)) }, Fingerprint { range: Range(287, 395), fp: EncodedCountingMonoid(6, SumMonoid(2026)) }, Fingerprint { range: Range(395, 462), fp: EncodedCountingMonoid(7, SumMonoid(3035)) }, Fingerprint { range: Range(462, 503), fp: EncodedCountingMonoid(6, SumMonoid(2854)) }, Fingerprint { range: Range(503, 543), fp: EncodedCountingMonoid(7, SumMonoid(3633)) }, Fingerprint { range: Range(543, 640), fp: EncodedCountingMonoid(6, SumMonoid(3531)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(4, SumMonoid(2971)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }, Fingerprint { range: Range(947, 977), fp: EncodedCountingMonoid(3, SumMonoid(2889)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 830], want_response: true }, ItemSet { range: Range(856, 866), items: [856], want_response: true }, ItemSet { range: Range(977, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(94, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 229), fp: EncodedCountingMonoid(5, SumMonoid(1029)) }, Fingerprint { range: Range(229, 277), fp: EncodedCountingMonoid(3, SumMonoid(704)) }, Fingerprint { range: Range(287, 371), fp: EncodedCountingMonoid(3, SumMonoid(1021)) }, Fingerprint { range: Range(371, 395), fp: EncodedCountingMonoid(3, SumMonoid(1142)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(947, 969), fp: EncodedCountingMonoid(3, SumMonoid(2854)) }, Fingerprint { range: Range(969, 977), fp: EncodedCountingMonoid(3, SumMonoid(2912)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(856, 866), items: [862], want_response: false }, ItemSet { range: Range(977, 993), items: [990], want_response: false }, ItemSet { range: Range(12, 94), items: [43], want_response: true }, ItemSet { range: Range(277, 287), items: [277, 282], want_response: true }, ItemSet { range: Range(395, 458), items: [413, 439], want_response: true }, ItemSet { range: Range(458, 462), items: [458], want_response: true }, ItemSet { range: Range(462, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 523), items: [503, 509], want_response: true }, ItemSet { range: Range(523, 543), items: [523, 527], want_response: true }, ItemSet { range: Range(543, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(12, 94), items: [12, 33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(277, 287), items: [277, 282, 285], want_response: false }, ItemSet { range: Range(395, 458), items: [395, 419, 427, 442, 444, 450], want_response: false }, ItemSet { range: Range(458, 462), items: [458], want_response: false }, ItemSet { range: Range(462, 503), items: [462, 466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 523), items: [504, 514, 515, 516, 520], want_response: false }, ItemSet { range: Range(523, 543), items: [524, 540], want_response: false }, ItemSet { range: Range(543, 640), items: [543, 552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 743, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 125), items: [94, 107], want_response: true }, ItemSet { range: Range(125, 167), items: [125, 136], want_response: true }, ItemSet { range: Range(167, 211), items: [202, 204], want_response: true }, ItemSet { range: Range(211, 229), items: [211], want_response: true }, ItemSet { range: Range(229, 265), items: [246, 251], want_response: true }, ItemSet { range: Range(265, 277), items: [265], want_response: true }, ItemSet { range: Range(287, 313), items: [287, 301], want_response: true }, ItemSet { range: Range(313, 371), items: [313], want_response: true }, ItemSet { range: Range(371, 380), items: [372, 373], want_response: true }, ItemSet { range: Range(380, 395), items: [380], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(947, 969), items: [952, 966], want_response: true }, ItemSet { range: Range(969, 977), items: [971], want_response: true }], wants: [777, 788, 807, 838, 847, 854, 862, 990, 43, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 125), items: [102, 105], want_response: false }, ItemSet { range: Range(125, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 211), items: [167, 203, 209], want_response: false }, ItemSet { range: Range(211, 229), items: [223, 227], want_response: false }, ItemSet { range: Range(229, 265), items: [229, 231, 244], want_response: false }, ItemSet { range: Range(265, 277), items: [], want_response: false }, ItemSet { range: Range(287, 313), items: [], want_response: false }, ItemSet { range: Range(313, 371), items: [313, 342, 366], want_response: false }, ItemSet { range: Range(371, 380), items: [371], want_response: false }, ItemSet { range: Range(380, 395), items: [382, 389], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(947, 969), items: [947, 953, 954], want_response: false }, ItemSet { range: Range(969, 977), items: [969, 970, 973], want_response: false }], wants: [12, 33, 40, 46, 73, 80, 88, 285, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 720, 743, 748, 888, 891, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 287, 301, 372, 373, 380, 660, 670, 674, 866, 952, 966, 971], provide: [(777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (990, true), (43, true), (413, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 382, 389, 640, 666, 682, 689, 705, 867, 869, 873, 947, 953, 954, 969, 970, 973], provide: [(12, true), (33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (285, true), (395, true), (419, true), (427, true), (442, true), (444, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (520, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (743, true), (748, true), (888, true), (891, true), (94, true), (107, true), (125, true), (136, true), (202, true), (204, true), (211, true), (246, true), (251, true), (265, true), (287, true), (301, true), (372, true), (373, true), (380, true), (660, true), (670, true), (674, true), (866, true), (952, true), (966, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (342, true), (366, true), (371, true), (382, true), (389, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 743, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 952, 966, 971, 977, 992} + [996, 10, 777, 788, 807, 838, 847, 854, 862, 990, 43, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 382, 389, 640, 666, 682, 689, 705, 867, 869, 873, 947, 953, 954, 969, 970, 973]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 977, 992, 12, 33, 40, 46, 73, 80, 88, 285, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 720, 743, 748, 888, 891, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 287, 301, 372, 373, 380, 660, 670, 674, 866, 952, 966, 971]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 743, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 966, 971, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 993), fp: EncodedCountingMonoid(73, SumMonoid(35526)) }], 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, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 12), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 395), fp: EncodedCountingMonoid(26, SumMonoid(5083)) }, Fingerprint { range: Range(395, 640), fp: EncodedCountingMonoid(26, SumMonoid(13053)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(11, SumMonoid(8086)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(10, SumMonoid(9304)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 229), fp: EncodedCountingMonoid(11, SumMonoid(1740)) }, Fingerprint { range: Range(229, 395), fp: EncodedCountingMonoid(11, SumMonoid(3426)) }, Fingerprint { range: Range(395, 503), fp: EncodedCountingMonoid(5, SumMonoid(2274)) }, Fingerprint { range: Range(503, 640), fp: EncodedCountingMonoid(5, SumMonoid(2686)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 94), fp: EncodedCountingMonoid(7, SumMonoid(372)) }, Fingerprint { range: Range(94, 229), fp: EncodedCountingMonoid(7, SumMonoid(1079)) }, Fingerprint { range: Range(229, 287), fp: EncodedCountingMonoid(6, SumMonoid(1606)) }, Fingerprint { range: Range(287, 395), fp: EncodedCountingMonoid(6, SumMonoid(2026)) }, Fingerprint { range: Range(395, 462), fp: EncodedCountingMonoid(7, SumMonoid(3035)) }, Fingerprint { range: Range(462, 503), fp: EncodedCountingMonoid(6, SumMonoid(2854)) }, Fingerprint { range: Range(503, 543), fp: EncodedCountingMonoid(7, SumMonoid(3633)) }, Fingerprint { range: Range(543, 640), fp: EncodedCountingMonoid(6, SumMonoid(3531)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(4, SumMonoid(2971)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 830], want_response: true }, ItemSet { range: Range(856, 866), items: [856], want_response: true }, ItemSet { range: Range(947, 977), items: [966, 971], want_response: true }, ItemSet { range: Range(977, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(94, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 229), fp: EncodedCountingMonoid(5, SumMonoid(1029)) }, Fingerprint { range: Range(229, 277), fp: EncodedCountingMonoid(3, SumMonoid(704)) }, Fingerprint { range: Range(287, 371), fp: EncodedCountingMonoid(3, SumMonoid(1021)) }, Fingerprint { range: Range(371, 395), fp: EncodedCountingMonoid(3, SumMonoid(1142)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(856, 866), items: [862], want_response: false }, ItemSet { range: Range(947, 977), items: [947, 953, 954, 969, 970, 973], want_response: false }, ItemSet { range: Range(977, 993), items: [990], want_response: false }, ItemSet { range: Range(12, 94), items: [43], want_response: true }, ItemSet { range: Range(277, 287), items: [277, 282], want_response: true }, ItemSet { range: Range(395, 458), items: [413, 439], want_response: true }, ItemSet { range: Range(458, 462), items: [458], want_response: true }, ItemSet { range: Range(462, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 523), items: [503, 509], want_response: true }, ItemSet { range: Range(523, 543), items: [523, 527], want_response: true }, ItemSet { range: Range(543, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 971, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(12, 94), items: [12, 33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(277, 287), items: [277, 282, 285], want_response: false }, ItemSet { range: Range(395, 458), items: [395, 419, 427, 442, 444, 450], want_response: false }, ItemSet { range: Range(458, 462), items: [458], want_response: false }, ItemSet { range: Range(462, 503), items: [462, 466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 523), items: [504, 514, 515, 516, 520], want_response: false }, ItemSet { range: Range(523, 543), items: [524, 540], want_response: false }, ItemSet { range: Range(543, 640), items: [543, 552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 743, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 125), items: [94, 107], want_response: true }, ItemSet { range: Range(125, 167), items: [125, 136], want_response: true }, ItemSet { range: Range(167, 211), items: [202, 204], want_response: true }, ItemSet { range: Range(211, 229), items: [211], want_response: true }, ItemSet { range: Range(229, 265), items: [246, 251], want_response: true }, ItemSet { range: Range(265, 277), items: [265], want_response: true }, ItemSet { range: Range(287, 313), items: [287, 301], want_response: true }, ItemSet { range: Range(313, 371), items: [313], want_response: true }, ItemSet { range: Range(371, 380), items: [372, 373], want_response: true }, ItemSet { range: Range(380, 395), items: [380], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (971, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 125), items: [102, 105], want_response: false }, ItemSet { range: Range(125, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 211), items: [167, 203, 209], want_response: false }, ItemSet { range: Range(211, 229), items: [223, 227], want_response: false }, ItemSet { range: Range(229, 265), items: [229, 231, 244], want_response: false }, ItemSet { range: Range(265, 277), items: [], want_response: false }, ItemSet { range: Range(287, 313), items: [], want_response: false }, ItemSet { range: Range(313, 371), items: [313, 342, 366], want_response: false }, ItemSet { range: Range(371, 380), items: [371], want_response: false }, ItemSet { range: Range(380, 395), items: [382, 389], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [12, 33, 40, 46, 73, 80, 88, 285, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 720, 743, 748, 888, 891, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 287, 301, 372, 373, 380, 660, 670, 674, 866], provide: [(777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (413, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 382, 389, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(12, true), (33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (285, true), (395, true), (419, true), (427, true), (442, true), (444, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (520, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (743, true), (748, true), (888, true), (891, true), (94, true), (107, true), (125, true), (136, true), (202, true), (204, true), (211, true), (246, true), (251, true), (265, true), (287, true), (301, true), (372, true), (373, true), (380, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (342, true), (366, true), (371, true), (382, true), (389, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 743, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 966, 971, 977, 992} + [996, 10, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 382, 389, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 971, 977, 992, 12, 33, 40, 46, 73, 80, 88, 285, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 720, 743, 748, 888, 891, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 287, 301, 372, 373, 380, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 743, 748, 760, 772, 830, 856, 866, 888, 891, 921, 931, 966, 971, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 993), fp: EncodedCountingMonoid(72, SumMonoid(34625)) }], 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, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 12), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 395), fp: EncodedCountingMonoid(26, SumMonoid(5083)) }, Fingerprint { range: Range(395, 640), fp: EncodedCountingMonoid(26, SumMonoid(13053)) }, Fingerprint { range: Range(640, 856), fp: EncodedCountingMonoid(10, SumMonoid(7230)) }, Fingerprint { range: Range(856, 993), fp: EncodedCountingMonoid(10, SumMonoid(9259)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 229), fp: EncodedCountingMonoid(11, SumMonoid(1740)) }, Fingerprint { range: Range(229, 395), fp: EncodedCountingMonoid(11, SumMonoid(3426)) }, Fingerprint { range: Range(395, 503), fp: EncodedCountingMonoid(5, SumMonoid(2274)) }, Fingerprint { range: Range(503, 640), fp: EncodedCountingMonoid(5, SumMonoid(2686)) }, Fingerprint { range: Range(640, 760), fp: EncodedCountingMonoid(8, SumMonoid(5514)) }, Fingerprint { range: Range(760, 856), fp: EncodedCountingMonoid(8, SumMonoid(6443)) }, Fingerprint { range: Range(856, 926), fp: EncodedCountingMonoid(8, SumMonoid(7074)) }, Fingerprint { range: Range(926, 993), fp: EncodedCountingMonoid(8, SumMonoid(7682)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 94), fp: EncodedCountingMonoid(7, SumMonoid(372)) }, Fingerprint { range: Range(94, 229), fp: EncodedCountingMonoid(7, SumMonoid(1079)) }, Fingerprint { range: Range(229, 287), fp: EncodedCountingMonoid(6, SumMonoid(1606)) }, Fingerprint { range: Range(287, 395), fp: EncodedCountingMonoid(6, SumMonoid(2026)) }, Fingerprint { range: Range(395, 462), fp: EncodedCountingMonoid(7, SumMonoid(3035)) }, Fingerprint { range: Range(462, 503), fp: EncodedCountingMonoid(6, SumMonoid(2854)) }, Fingerprint { range: Range(503, 543), fp: EncodedCountingMonoid(7, SumMonoid(3633)) }, Fingerprint { range: Range(543, 640), fp: EncodedCountingMonoid(6, SumMonoid(3531)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 760), fp: EncodedCountingMonoid(3, SumMonoid(2211)) }, Fingerprint { range: Range(856, 891), fp: EncodedCountingMonoid(3, SumMonoid(2610)) }, Fingerprint { range: Range(926, 977), fp: EncodedCountingMonoid(3, SumMonoid(2868)) }], item_sets: [ItemSet { range: Range(760, 830), items: [760, 772], want_response: true }, ItemSet { range: Range(830, 856), items: [830], want_response: true }, ItemSet { range: Range(891, 926), items: [891, 921], want_response: true }, ItemSet { range: Range(977, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(94, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 229), fp: EncodedCountingMonoid(5, SumMonoid(1029)) }, Fingerprint { range: Range(229, 277), fp: EncodedCountingMonoid(3, SumMonoid(704)) }, Fingerprint { range: Range(287, 371), fp: EncodedCountingMonoid(3, SumMonoid(1021)) }, Fingerprint { range: Range(371, 395), fp: EncodedCountingMonoid(3, SumMonoid(1142)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(856, 873), fp: EncodedCountingMonoid(3, SumMonoid(2598)) }, Fingerprint { range: Range(926, 969), fp: EncodedCountingMonoid(4, SumMonoid(3780)) }, Fingerprint { range: Range(969, 977), fp: EncodedCountingMonoid(3, SumMonoid(2912)) }], item_sets: [ItemSet { range: Range(760, 830), items: [760, 772, 777, 788, 807], want_response: false }, ItemSet { range: Range(830, 856), items: [838, 847, 854], want_response: false }, ItemSet { range: Range(891, 926), items: [897, 902, 925], want_response: false }, ItemSet { range: Range(977, 993), items: [990], want_response: false }, ItemSet { range: Range(12, 94), items: [43], want_response: true }, ItemSet { range: Range(277, 287), items: [277, 282], want_response: true }, ItemSet { range: Range(395, 458), items: [413, 439], want_response: true }, ItemSet { range: Range(458, 462), items: [458], want_response: true }, ItemSet { range: Range(462, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 523), items: [503, 509], want_response: true }, ItemSet { range: Range(523, 543), items: [523, 527], want_response: true }, ItemSet { range: Range(543, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(873, 891), items: [873, 879], want_response: true }], wants: [830, 891, 921, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(12, 94), items: [12, 33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(277, 287), items: [277, 282, 285], want_response: false }, ItemSet { range: Range(395, 458), items: [395, 419, 427, 442, 444, 450], want_response: false }, ItemSet { range: Range(458, 462), items: [458], want_response: false }, ItemSet { range: Range(462, 503), items: [462, 466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 523), items: [504, 514, 515, 516, 520], want_response: false }, ItemSet { range: Range(523, 543), items: [524, 540], want_response: false }, ItemSet { range: Range(543, 640), items: [543, 552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 743, 748], want_response: false }, ItemSet { range: Range(873, 891), items: [888], want_response: false }, ItemSet { range: Range(94, 125), items: [94, 107], want_response: true }, ItemSet { range: Range(125, 167), items: [125, 136], want_response: true }, ItemSet { range: Range(167, 211), items: [202, 204], want_response: true }, ItemSet { range: Range(211, 229), items: [211], want_response: true }, ItemSet { range: Range(229, 265), items: [246, 251], want_response: true }, ItemSet { range: Range(265, 277), items: [265], want_response: true }, ItemSet { range: Range(287, 313), items: [287, 301], want_response: true }, ItemSet { range: Range(313, 371), items: [313], want_response: true }, ItemSet { range: Range(371, 380), items: [372, 373], want_response: true }, ItemSet { range: Range(380, 395), items: [380], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(856, 873), items: [856, 866], want_response: true }, ItemSet { range: Range(926, 969), items: [931, 966], want_response: true }, ItemSet { range: Range(969, 977), items: [971], want_response: true }], wants: [777, 788, 807, 838, 847, 854, 897, 902, 925, 990, 43, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 873, 879], provide: [(830, true), (891, true), (921, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 125), items: [102, 105], want_response: false }, ItemSet { range: Range(125, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 211), items: [167, 203, 209], want_response: false }, ItemSet { range: Range(211, 229), items: [223, 227], want_response: false }, ItemSet { range: Range(229, 265), items: [229, 231, 244], want_response: false }, ItemSet { range: Range(265, 277), items: [], want_response: false }, ItemSet { range: Range(287, 313), items: [], want_response: false }, ItemSet { range: Range(313, 371), items: [313, 342, 366], want_response: false }, ItemSet { range: Range(371, 380), items: [371], want_response: false }, ItemSet { range: Range(380, 395), items: [382, 389], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(856, 873), items: [862, 867, 869], want_response: false }, ItemSet { range: Range(926, 969), items: [926, 947, 953, 954], want_response: false }, ItemSet { range: Range(969, 977), items: [969, 970, 973], want_response: false }], wants: [12, 33, 40, 46, 73, 80, 88, 285, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 720, 743, 748, 888, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 287, 301, 372, 373, 380, 660, 670, 674, 856, 866, 931, 966, 971], provide: [(777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (897, true), (902, true), (925, true), (990, true), (43, true), (413, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (873, true), (879, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 382, 389, 640, 666, 682, 689, 705, 862, 867, 869, 926, 947, 953, 954, 969, 970, 973], provide: [(12, true), (33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (285, true), (395, true), (419, true), (427, true), (442, true), (444, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (520, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (743, true), (748, true), (888, true), (94, true), (107, true), (125, true), (136, true), (202, true), (204, true), (211, true), (246, true), (251, true), (265, true), (287, true), (301, true), (372, true), (373, true), (380, true), (660, true), (670, true), (674, true), (856, true), (866, true), (931, true), (966, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (342, true), (366, true), (371, true), (382, true), (389, true), (640, true), (666, true), (682, true), (689, true), (705, true), (862, true), (867, true), (869, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 743, 748, 760, 772, 830, 856, 866, 888, 891, 921, 931, 966, 971, 977, 992} + [996, 10, 777, 788, 807, 838, 847, 854, 897, 902, 925, 990, 43, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 873, 879, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 382, 389, 640, 666, 682, 689, 705, 862, 867, 869, 926, 947, 953, 954, 969, 970, 973]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 891, 921, 977, 992, 12, 33, 40, 46, 73, 80, 88, 285, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 720, 743, 748, 888, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 287, 301, 372, 373, 380, 660, 670, 674, 856, 866, 931, 966, 971]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 12, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 107, 125, 136, 143, 153, 165, 167, 202, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 251, 265, 277, 282, 285, 287, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 395, 413, 419, 427, 439, 442, 444, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 504, 509, 514, 515, 516, 520, 523, 524, 527, 540, 543, 552, 598, 602, 604, 624, 632, 640, 653, 660, 666, 670, 674, 682, 689, 705, 720, 737, 742, 743, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 966, 969, 970, 971, 973, 977, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 12, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 107, 125, 136, 143, 153, 165, 167, 202, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 251, 265, 277, 282, 285, 287, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 395, 413, 419, 427, 439, 442, 444, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 504, 509, 514, 515, 516, 520, 523, 524, 527, 540, 543, 552, 598, 602, 604, 624, 632, 640, 653, 660, 666, 670, 674, 682, 689, 705, 720, 737, 742, 743, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 966, 969, 970, 971, 973, 977, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 12, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 107, 125, 136, 143, 153, 165, 167, 202, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 251, 265, 277, 282, 285, 287, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 395, 413, 419, 427, 439, 442, 444, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 504, 509, 514, 515, 516, 520, 523, 524, 527, 540, 543, 552, 598, 602, 604, 624, 632, 640, 653, 660, 666, 670, 674, 682, 689, 705, 720, 737, 742, 743, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 966, 969, 970, 971, 973, 977, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 743, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 966, 971, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 993), fp: EncodedCountingMonoid(73, SumMonoid(35526)) }], 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, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 12), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 395), fp: EncodedCountingMonoid(26, SumMonoid(5083)) }, Fingerprint { range: Range(395, 640), fp: EncodedCountingMonoid(26, SumMonoid(13053)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(11, SumMonoid(8086)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(10, SumMonoid(9304)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 229), fp: EncodedCountingMonoid(11, SumMonoid(1740)) }, Fingerprint { range: Range(229, 395), fp: EncodedCountingMonoid(11, SumMonoid(3426)) }, Fingerprint { range: Range(395, 503), fp: EncodedCountingMonoid(5, SumMonoid(2274)) }, Fingerprint { range: Range(503, 640), fp: EncodedCountingMonoid(5, SumMonoid(2686)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 94), fp: EncodedCountingMonoid(7, SumMonoid(372)) }, Fingerprint { range: Range(94, 229), fp: EncodedCountingMonoid(7, SumMonoid(1079)) }, Fingerprint { range: Range(229, 287), fp: EncodedCountingMonoid(6, SumMonoid(1606)) }, Fingerprint { range: Range(287, 395), fp: EncodedCountingMonoid(6, SumMonoid(2026)) }, Fingerprint { range: Range(395, 462), fp: EncodedCountingMonoid(7, SumMonoid(3035)) }, Fingerprint { range: Range(462, 503), fp: EncodedCountingMonoid(6, SumMonoid(2854)) }, Fingerprint { range: Range(503, 543), fp: EncodedCountingMonoid(7, SumMonoid(3633)) }, Fingerprint { range: Range(543, 640), fp: EncodedCountingMonoid(6, SumMonoid(3531)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(4, SumMonoid(2971)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 830], want_response: true }, ItemSet { range: Range(856, 866), items: [856], want_response: true }, ItemSet { range: Range(947, 977), items: [966, 971], want_response: true }, ItemSet { range: Range(977, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(94, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 229), fp: EncodedCountingMonoid(5, SumMonoid(1029)) }, Fingerprint { range: Range(229, 277), fp: EncodedCountingMonoid(3, SumMonoid(704)) }, Fingerprint { range: Range(287, 371), fp: EncodedCountingMonoid(3, SumMonoid(1021)) }, Fingerprint { range: Range(371, 395), fp: EncodedCountingMonoid(3, SumMonoid(1142)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(856, 866), items: [862], want_response: false }, ItemSet { range: Range(947, 977), items: [947, 953, 954, 969, 970, 973], want_response: false }, ItemSet { range: Range(977, 993), items: [990], want_response: false }, ItemSet { range: Range(12, 94), items: [43], want_response: true }, ItemSet { range: Range(277, 287), items: [277, 282], want_response: true }, ItemSet { range: Range(395, 458), items: [413, 439], want_response: true }, ItemSet { range: Range(458, 462), items: [458], want_response: true }, ItemSet { range: Range(462, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 523), items: [503, 509], want_response: true }, ItemSet { range: Range(523, 543), items: [523, 527], want_response: true }, ItemSet { range: Range(543, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 971, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(12, 94), items: [12, 33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(277, 287), items: [277, 282, 285], want_response: false }, ItemSet { range: Range(395, 458), items: [395, 419, 427, 442, 444, 450], want_response: false }, ItemSet { range: Range(458, 462), items: [458], want_response: false }, ItemSet { range: Range(462, 503), items: [462, 466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 523), items: [504, 514, 515, 516, 520], want_response: false }, ItemSet { range: Range(523, 543), items: [524, 540], want_response: false }, ItemSet { range: Range(543, 640), items: [543, 552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 743, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 125), items: [94, 107], want_response: true }, ItemSet { range: Range(125, 167), items: [125, 136], want_response: true }, ItemSet { range: Range(167, 211), items: [202, 204], want_response: true }, ItemSet { range: Range(211, 229), items: [211], want_response: true }, ItemSet { range: Range(229, 265), items: [246, 251], want_response: true }, ItemSet { range: Range(265, 277), items: [265], want_response: true }, ItemSet { range: Range(287, 313), items: [287, 301], want_response: true }, ItemSet { range: Range(313, 371), items: [313], want_response: true }, ItemSet { range: Range(371, 380), items: [372, 373], want_response: true }, ItemSet { range: Range(380, 395), items: [380], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (971, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 125), items: [102, 105], want_response: false }, ItemSet { range: Range(125, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 211), items: [167, 203, 209], want_response: false }, ItemSet { range: Range(211, 229), items: [223, 227], want_response: false }, ItemSet { range: Range(229, 265), items: [229, 231, 244], want_response: false }, ItemSet { range: Range(265, 277), items: [], want_response: false }, ItemSet { range: Range(287, 313), items: [], want_response: false }, ItemSet { range: Range(313, 371), items: [313, 342, 366], want_response: false }, ItemSet { range: Range(371, 380), items: [371], want_response: false }, ItemSet { range: Range(380, 395), items: [382, 389], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [12, 33, 40, 46, 73, 80, 88, 285, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 720, 743, 748, 888, 891, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 287, 301, 372, 373, 380, 660, 670, 674, 866], provide: [(777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (413, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 382, 389, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(12, true), (33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (285, true), (395, true), (419, true), (427, true), (442, true), (444, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (520, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (743, true), (748, true), (888, true), (891, true), (94, true), (107, true), (125, true), (136, true), (202, true), (204, true), (211, true), (246, true), (251, true), (265, true), (287, true), (301, true), (372, true), (373, true), (380, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (342, true), (366, true), (371, true), (382, true), (389, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 743, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 966, 971, 977, 992} + [996, 10, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 382, 389, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 971, 977, 992, 12, 33, 40, 46, 73, 80, 88, 285, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 720, 743, 748, 888, 891, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 287, 301, 372, 373, 380, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 966, 971, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 993), fp: EncodedCountingMonoid(72, SumMonoid(34783)) }], 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, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 12), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 395), fp: EncodedCountingMonoid(26, SumMonoid(5083)) }, Fingerprint { range: Range(395, 640), fp: EncodedCountingMonoid(26, SumMonoid(13053)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(10, SumMonoid(7343)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(10, SumMonoid(9304)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 229), fp: EncodedCountingMonoid(11, SumMonoid(1740)) }, Fingerprint { range: Range(229, 395), fp: EncodedCountingMonoid(11, SumMonoid(3426)) }, Fingerprint { range: Range(395, 503), fp: EncodedCountingMonoid(5, SumMonoid(2274)) }, Fingerprint { range: Range(503, 640), fp: EncodedCountingMonoid(5, SumMonoid(2686)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 94), fp: EncodedCountingMonoid(7, SumMonoid(372)) }, Fingerprint { range: Range(94, 229), fp: EncodedCountingMonoid(7, SumMonoid(1079)) }, Fingerprint { range: Range(229, 287), fp: EncodedCountingMonoid(6, SumMonoid(1606)) }, Fingerprint { range: Range(287, 395), fp: EncodedCountingMonoid(6, SumMonoid(2026)) }, Fingerprint { range: Range(395, 462), fp: EncodedCountingMonoid(7, SumMonoid(3035)) }, Fingerprint { range: Range(462, 503), fp: EncodedCountingMonoid(6, SumMonoid(2854)) }, Fingerprint { range: Range(503, 543), fp: EncodedCountingMonoid(7, SumMonoid(3633)) }, Fingerprint { range: Range(543, 640), fp: EncodedCountingMonoid(6, SumMonoid(3531)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 830], want_response: true }, ItemSet { range: Range(856, 866), items: [856], want_response: true }, ItemSet { range: Range(947, 977), items: [966, 971], want_response: true }, ItemSet { range: Range(977, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(94, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 229), fp: EncodedCountingMonoid(5, SumMonoid(1029)) }, Fingerprint { range: Range(229, 277), fp: EncodedCountingMonoid(3, SumMonoid(704)) }, Fingerprint { range: Range(287, 371), fp: EncodedCountingMonoid(3, SumMonoid(1021)) }, Fingerprint { range: Range(371, 395), fp: EncodedCountingMonoid(3, SumMonoid(1142)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(856, 866), items: [862], want_response: false }, ItemSet { range: Range(947, 977), items: [947, 953, 954, 969, 970, 973], want_response: false }, ItemSet { range: Range(977, 993), items: [990], want_response: false }, ItemSet { range: Range(12, 94), items: [43], want_response: true }, ItemSet { range: Range(277, 287), items: [277, 282], want_response: true }, ItemSet { range: Range(395, 458), items: [413, 439], want_response: true }, ItemSet { range: Range(458, 462), items: [458], want_response: true }, ItemSet { range: Range(462, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 523), items: [503, 509], want_response: true }, ItemSet { range: Range(523, 543), items: [523, 527], want_response: true }, ItemSet { range: Range(543, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 971, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(12, 94), items: [12, 33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(277, 287), items: [277, 282, 285], want_response: false }, ItemSet { range: Range(395, 458), items: [395, 419, 427, 442, 444, 450], want_response: false }, ItemSet { range: Range(458, 462), items: [458], want_response: false }, ItemSet { range: Range(462, 503), items: [462, 466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 523), items: [504, 514, 515, 516, 520], want_response: false }, ItemSet { range: Range(523, 543), items: [524, 540], want_response: false }, ItemSet { range: Range(543, 640), items: [543, 552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 125), items: [94, 107], want_response: true }, ItemSet { range: Range(125, 167), items: [125, 136], want_response: true }, ItemSet { range: Range(167, 211), items: [202, 204], want_response: true }, ItemSet { range: Range(211, 229), items: [211], want_response: true }, ItemSet { range: Range(229, 265), items: [246, 251], want_response: true }, ItemSet { range: Range(265, 277), items: [265], want_response: true }, ItemSet { range: Range(287, 313), items: [287, 301], want_response: true }, ItemSet { range: Range(313, 371), items: [313], want_response: true }, ItemSet { range: Range(371, 380), items: [372, 373], want_response: true }, ItemSet { range: Range(380, 395), items: [380], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (971, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 125), items: [102, 105], want_response: false }, ItemSet { range: Range(125, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 211), items: [167, 203, 209], want_response: false }, ItemSet { range: Range(211, 229), items: [223, 227], want_response: false }, ItemSet { range: Range(229, 265), items: [229, 231, 244], want_response: false }, ItemSet { range: Range(265, 277), items: [], want_response: false }, ItemSet { range: Range(287, 313), items: [], want_response: false }, ItemSet { range: Range(313, 371), items: [313, 342, 366], want_response: false }, ItemSet { range: Range(371, 380), items: [371], want_response: false }, ItemSet { range: Range(380, 395), items: [382, 389], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [12, 33, 40, 46, 73, 80, 88, 285, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 287, 301, 372, 373, 380, 660, 670, 674, 866], provide: [(777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (413, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 382, 389, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(12, true), (33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (285, true), (395, true), (419, true), (427, true), (442, true), (444, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (520, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (107, true), (125, true), (136, true), (202, true), (204, true), (211, true), (246, true), (251, true), (265, true), (287, true), (301, true), (372, true), (373, true), (380, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (342, true), (366, true), (371, true), (382, true), (389, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 966, 971, 977, 992} + [996, 10, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 382, 389, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 971, 977, 992, 12, 33, 40, 46, 73, 80, 88, 285, 395, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 107, 125, 136, 202, 204, 211, 246, 251, 265, 287, 301, 372, 373, 380, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 246, 251, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 966, 971, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 993), fp: EncodedCountingMonoid(71, SumMonoid(34518)) }], 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, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 12), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 419), fp: EncodedCountingMonoid(26, SumMonoid(5213)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(25, SumMonoid(12658)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(10, SumMonoid(7343)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(10, SumMonoid(9304)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 94), fp: EncodedCountingMonoid(7, SumMonoid(372)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(7, SumMonoid(1079)) }, Fingerprint { range: Range(231, 301), fp: EncodedCountingMonoid(6, SumMonoid(1628)) }, Fingerprint { range: Range(301, 419), fp: EncodedCountingMonoid(6, SumMonoid(2134)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(7, SumMonoid(3102)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 543), fp: EncodedCountingMonoid(6, SumMonoid(3129)) }, Fingerprint { range: Range(543, 640), fp: EncodedCountingMonoid(6, SumMonoid(3531)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 830], want_response: true }, ItemSet { range: Range(856, 866), items: [856], want_response: true }, ItemSet { range: Range(947, 977), items: [966, 971], want_response: true }, ItemSet { range: Range(977, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(301, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(856, 866), items: [862], want_response: false }, ItemSet { range: Range(947, 977), items: [947, 953, 954, 969, 970, 973], want_response: false }, ItemSet { range: Range(977, 993), items: [990], want_response: false }, ItemSet { range: Range(12, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 301), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 543), items: [527], want_response: true }, ItemSet { range: Range(543, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 971, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(94, 136), fp: EncodedCountingMonoid(3, SumMonoid(326)) }, Fingerprint { range: Range(301, 373), fp: EncodedCountingMonoid(3, SumMonoid(986)) }], item_sets: [ItemSet { range: Range(12, 94), items: [12, 33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246, 251], want_response: false }, ItemSet { range: Range(277, 301), items: [277, 282, 285, 287], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 444, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [514, 515, 516, 520, 524], want_response: false }, ItemSet { range: Range(527, 543), items: [540], want_response: false }, ItemSet { range: Range(543, 640), items: [543, 552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(136, 203), items: [136, 202], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (971, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(94, 136), items: [102, 105], want_response: true }, ItemSet { range: Range(301, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 373), items: [366, 371], want_response: true }], wants: [12, 33, 40, 46, 73, 80, 88, 246, 251, 285, 287, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 136, 202, 204, 211, 373, 380, 395, 660, 670, 674, 866], provide: [(777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [94, 107, 125], want_response: false }, ItemSet { range: Range(301, 366), items: [301, 313], want_response: false }, ItemSet { range: Range(366, 373), items: [372], want_response: false }], wants: [143, 153, 165, 167, 203, 209, 223, 227, 229, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873, 102, 105, 342, 366, 371], provide: [(12, true), (33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (251, true), (285, true), (287, true), (419, true), (427, true), (442, true), (444, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (520, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (136, true), (202, true), (204, true), (211, true), (373, true), (380, true), (395, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [94, 107, 125, 301, 372], provide: [(143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true), (102, true), (105, true), (342, true), (366, true), (371, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(94, true), (107, true), (125, true), (301, true), (372, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 33, 40, 46, 73, 80, 88, 94, 107, 125, 136, 202, 204, 211, 246, 251, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 966, 971, 977, 992} + [996, 10, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 143, 153, 165, 167, 203, 209, 223, 227, 229, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873, 102, 105, 342, 366, 371]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 971, 977, 992, 12, 33, 40, 46, 73, 80, 88, 246, 251, 285, 287, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 136, 202, 204, 211, 373, 380, 395, 660, 670, 674, 866, 94, 107, 125, 301, 372]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 251, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 966, 971, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 993), fp: EncodedCountingMonoid(70, SumMonoid(34411)) }], 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, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 12), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 419), fp: EncodedCountingMonoid(25, SumMonoid(5106)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(25, SumMonoid(12658)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(10, SumMonoid(7343)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(10, SumMonoid(9304)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 94), fp: EncodedCountingMonoid(7, SumMonoid(372)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(6, SumMonoid(972)) }, Fingerprint { range: Range(231, 301), fp: EncodedCountingMonoid(6, SumMonoid(1628)) }, Fingerprint { range: Range(301, 419), fp: EncodedCountingMonoid(6, SumMonoid(2134)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(7, SumMonoid(3102)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 543), fp: EncodedCountingMonoid(6, SumMonoid(3129)) }, Fingerprint { range: Range(543, 640), fp: EncodedCountingMonoid(6, SumMonoid(3531)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 830], want_response: true }, ItemSet { range: Range(856, 866), items: [856], want_response: true }, ItemSet { range: Range(947, 977), items: [966, 971], want_response: true }, ItemSet { range: Range(977, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(301, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(856, 866), items: [862], want_response: false }, ItemSet { range: Range(947, 977), items: [947, 953, 954, 969, 970, 973], want_response: false }, ItemSet { range: Range(977, 993), items: [990], want_response: false }, ItemSet { range: Range(12, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 301), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 543), items: [527], want_response: true }, ItemSet { range: Range(543, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 971, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(301, 373), fp: EncodedCountingMonoid(3, SumMonoid(986)) }], item_sets: [ItemSet { range: Range(12, 94), items: [12, 33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246, 251], want_response: false }, ItemSet { range: Range(277, 301), items: [277, 282, 285, 287], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 444, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [514, 515, 516, 520, 524], want_response: false }, ItemSet { range: Range(527, 543), items: [540], want_response: false }, ItemSet { range: Range(543, 640), items: [543, 552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136, 202], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (971, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(301, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 373), items: [366, 371], want_response: true }], wants: [12, 33, 40, 46, 73, 80, 88, 246, 251, 285, 287, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 373, 380, 395, 660, 670, 674, 866], provide: [(777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(301, 366), items: [301, 313], want_response: false }, ItemSet { range: Range(366, 373), items: [372], want_response: false }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873, 342, 366, 371], provide: [(12, true), (33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (251, true), (285, true), (287, true), (419, true), (427, true), (442, true), (444, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (520, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (125, true), (136, true), (202, true), (204, true), (211, true), (373, true), (380, true), (395, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [301, 372], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true), (342, true), (366, true), (371, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(301, true), (372, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 251, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 966, 971, 977, 992} + [996, 10, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873, 342, 366, 371]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 971, 977, 992, 12, 33, 40, 46, 73, 80, 88, 246, 251, 285, 287, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 520, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 373, 380, 395, 660, 670, 674, 866, 301, 372]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 251, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 966, 971, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 993), fp: EncodedCountingMonoid(69, SumMonoid(33891)) }], 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, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 12), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 419), fp: EncodedCountingMonoid(25, SumMonoid(5106)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(24, SumMonoid(12138)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(10, SumMonoid(7343)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(10, SumMonoid(9304)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 94), fp: EncodedCountingMonoid(7, SumMonoid(372)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(6, SumMonoid(972)) }, Fingerprint { range: Range(231, 301), fp: EncodedCountingMonoid(6, SumMonoid(1628)) }, Fingerprint { range: Range(301, 419), fp: EncodedCountingMonoid(6, SumMonoid(2134)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(7, SumMonoid(3102)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 552), fp: EncodedCountingMonoid(6, SumMonoid(3152)) }, Fingerprint { range: Range(552, 640), fp: EncodedCountingMonoid(5, SumMonoid(2988)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 830], want_response: true }, ItemSet { range: Range(856, 866), items: [856], want_response: true }, ItemSet { range: Range(947, 977), items: [966, 971], want_response: true }, ItemSet { range: Range(977, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(301, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(856, 866), items: [862], want_response: false }, ItemSet { range: Range(947, 977), items: [947, 953, 954, 969, 970, 973], want_response: false }, ItemSet { range: Range(977, 993), items: [990], want_response: false }, ItemSet { range: Range(12, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 301), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 552), items: [527], want_response: true }, ItemSet { range: Range(552, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 971, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(301, 373), fp: EncodedCountingMonoid(3, SumMonoid(986)) }], item_sets: [ItemSet { range: Range(12, 94), items: [12, 33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246, 251], want_response: false }, ItemSet { range: Range(277, 301), items: [277, 282, 285, 287], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 444, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [514, 515, 516, 524], want_response: false }, ItemSet { range: Range(527, 552), items: [540, 543], want_response: false }, ItemSet { range: Range(552, 640), items: [552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136, 202], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (971, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(301, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 373), items: [366, 371], want_response: true }], wants: [12, 33, 40, 46, 73, 80, 88, 246, 251, 285, 287, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 373, 380, 395, 660, 670, 674, 866], provide: [(777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(301, 366), items: [301, 313], want_response: false }, ItemSet { range: Range(366, 373), items: [372], want_response: false }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873, 342, 366, 371], provide: [(12, true), (33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (251, true), (285, true), (287, true), (419, true), (427, true), (442, true), (444, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (125, true), (136, true), (202, true), (204, true), (211, true), (373, true), (380, true), (395, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [301, 372], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true), (342, true), (366, true), (371, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(301, true), (372, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 251, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 966, 971, 977, 992} + [996, 10, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873, 342, 366, 371]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 971, 977, 992, 12, 33, 40, 46, 73, 80, 88, 246, 251, 285, 287, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 373, 380, 395, 660, 670, 674, 866, 301, 372]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 251, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 772, 830, 866, 888, 891, 901, 921, 931, 966, 971, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 993), fp: EncodedCountingMonoid(68, SumMonoid(33035)) }], 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, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 12), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 419), fp: EncodedCountingMonoid(25, SumMonoid(5106)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(24, SumMonoid(12138)) }, Fingerprint { range: Range(640, 888), fp: EncodedCountingMonoid(10, SumMonoid(7353)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(9, SumMonoid(8438)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 788), fp: EncodedCountingMonoid(11, SumMonoid(7823)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 94), fp: EncodedCountingMonoid(7, SumMonoid(372)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(6, SumMonoid(972)) }, Fingerprint { range: Range(231, 301), fp: EncodedCountingMonoid(6, SumMonoid(1628)) }, Fingerprint { range: Range(301, 419), fp: EncodedCountingMonoid(6, SumMonoid(2134)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(7, SumMonoid(3102)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 552), fp: EncodedCountingMonoid(6, SumMonoid(3152)) }, Fingerprint { range: Range(552, 640), fp: EncodedCountingMonoid(5, SumMonoid(2988)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 788), fp: EncodedCountingMonoid(4, SumMonoid(3000)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(788, 888), items: [830, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 977), items: [966, 971], want_response: true }, ItemSet { range: Range(977, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(301, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }], item_sets: [ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 977), items: [954, 969, 970, 973], want_response: false }, ItemSet { range: Range(977, 993), items: [990], want_response: false }, ItemSet { range: Range(12, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 301), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 552), items: [527], want_response: true }, ItemSet { range: Range(552, 640), items: [624], want_response: true }, ItemSet { range: Range(772, 788), items: [772, 777], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [830, 866, 921, 931, 966, 971, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(301, 373), fp: EncodedCountingMonoid(3, SumMonoid(986)) }], item_sets: [ItemSet { range: Range(12, 94), items: [12, 33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246, 251], want_response: false }, ItemSet { range: Range(277, 301), items: [277, 282, 285, 287], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 444, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [514, 515, 516, 524], want_response: false }, ItemSet { range: Range(527, 552), items: [540, 543], want_response: false }, ItemSet { range: Range(552, 640), items: [552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(772, 788), items: [772], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136, 202], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }], wants: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 777, 897, 902], provide: [(830, true), (866, true), (921, true), (931, true), (966, true), (971, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(301, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 373), items: [366, 371], want_response: true }], wants: [12, 33, 40, 46, 73, 80, 88, 246, 251, 285, 287, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 888, 891, 901, 94, 125, 136, 202, 204, 211, 373, 380, 395, 660, 670, 674, 720, 748], provide: [(788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (777, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(301, 366), items: [301, 313], want_response: false }, ItemSet { range: Range(366, 373), items: [372], want_response: false }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 382, 389, 413, 640, 666, 682, 689, 705, 737, 742, 342, 366, 371], provide: [(12, true), (33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (251, true), (285, true), (287, true), (419, true), (427, true), (442, true), (444, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (888, true), (891, true), (901, true), (94, true), (125, true), (136, true), (202, true), (204, true), (211, true), (373, true), (380, true), (395, true), (660, true), (670, true), (674, true), (720, true), (748, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [301, 372], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (342, true), (366, true), (371, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(301, true), (372, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 251, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 772, 830, 866, 888, 891, 901, 921, 931, 966, 971, 977, 992} + [996, 10, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 777, 897, 902, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 382, 389, 413, 640, 666, 682, 689, 705, 737, 742, 342, 366, 371]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 866, 921, 931, 966, 971, 977, 992, 12, 33, 40, 46, 73, 80, 88, 246, 251, 285, 287, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 888, 891, 901, 94, 125, 136, 202, 204, 211, 373, 380, 395, 660, 670, 674, 720, 748, 301, 372]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 12, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 125, 136, 143, 153, 165, 167, 202, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 251, 277, 282, 285, 287, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 395, 413, 419, 427, 439, 442, 444, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 504, 509, 514, 515, 516, 523, 524, 527, 540, 543, 552, 598, 602, 604, 624, 632, 640, 653, 660, 666, 670, 674, 682, 689, 705, 720, 737, 742, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 966, 969, 970, 971, 973, 977, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 12, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 125, 136, 143, 153, 165, 167, 202, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 251, 277, 282, 285, 287, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 395, 413, 419, 427, 439, 442, 444, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 504, 509, 514, 515, 516, 523, 524, 527, 540, 543, 552, 598, 602, 604, 624, 632, 640, 653, 660, 666, 670, 674, 682, 689, 705, 720, 737, 742, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 966, 969, 970, 971, 973, 977, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 12, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 125, 136, 143, 153, 165, 167, 202, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 251, 277, 282, 285, 287, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 395, 413, 419, 427, 439, 442, 444, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 504, 509, 514, 515, 516, 523, 524, 527, 540, 543, 552, 598, 602, 604, 624, 632, 640, 653, 660, 666, 670, 674, 682, 689, 705, 720, 737, 742, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 966, 969, 970, 971, 973, 977, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 251, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 966, 971, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 993), fp: EncodedCountingMonoid(69, SumMonoid(33891)) }], 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, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 12), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 419), fp: EncodedCountingMonoid(25, SumMonoid(5106)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(24, SumMonoid(12138)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(10, SumMonoid(7343)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(10, SumMonoid(9304)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 94), fp: EncodedCountingMonoid(7, SumMonoid(372)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(6, SumMonoid(972)) }, Fingerprint { range: Range(231, 301), fp: EncodedCountingMonoid(6, SumMonoid(1628)) }, Fingerprint { range: Range(301, 419), fp: EncodedCountingMonoid(6, SumMonoid(2134)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(7, SumMonoid(3102)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 552), fp: EncodedCountingMonoid(6, SumMonoid(3152)) }, Fingerprint { range: Range(552, 640), fp: EncodedCountingMonoid(5, SumMonoid(2988)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 830], want_response: true }, ItemSet { range: Range(856, 866), items: [856], want_response: true }, ItemSet { range: Range(947, 977), items: [966, 971], want_response: true }, ItemSet { range: Range(977, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(301, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(856, 866), items: [862], want_response: false }, ItemSet { range: Range(947, 977), items: [947, 953, 954, 969, 970, 973], want_response: false }, ItemSet { range: Range(977, 993), items: [990], want_response: false }, ItemSet { range: Range(12, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 301), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 552), items: [527], want_response: true }, ItemSet { range: Range(552, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 971, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(301, 373), fp: EncodedCountingMonoid(3, SumMonoid(986)) }], item_sets: [ItemSet { range: Range(12, 94), items: [12, 33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246, 251], want_response: false }, ItemSet { range: Range(277, 301), items: [277, 282, 285, 287], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 444, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [514, 515, 516, 524], want_response: false }, ItemSet { range: Range(527, 552), items: [540, 543], want_response: false }, ItemSet { range: Range(552, 640), items: [552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136, 202], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (971, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(301, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 373), items: [366, 371], want_response: true }], wants: [12, 33, 40, 46, 73, 80, 88, 246, 251, 285, 287, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 373, 380, 395, 660, 670, 674, 866], provide: [(777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(301, 366), items: [301, 313], want_response: false }, ItemSet { range: Range(366, 373), items: [372], want_response: false }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873, 342, 366, 371], provide: [(12, true), (33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (251, true), (285, true), (287, true), (419, true), (427, true), (442, true), (444, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (125, true), (136, true), (202, true), (204, true), (211, true), (373, true), (380, true), (395, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [301, 372], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true), (342, true), (366, true), (371, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(301, true), (372, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 251, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 966, 971, 977, 992} + [996, 10, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873, 342, 366, 371]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 971, 977, 992, 12, 33, 40, 46, 73, 80, 88, 246, 251, 285, 287, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 373, 380, 395, 660, 670, 674, 866, 301, 372]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 251, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 993), fp: EncodedCountingMonoid(68, SumMonoid(32920)) }], 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, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 12), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 419), fp: EncodedCountingMonoid(25, SumMonoid(5106)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(24, SumMonoid(12138)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(10, SumMonoid(7343)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(9, SumMonoid(8333)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 94), fp: EncodedCountingMonoid(7, SumMonoid(372)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(6, SumMonoid(972)) }, Fingerprint { range: Range(231, 301), fp: EncodedCountingMonoid(6, SumMonoid(1628)) }, Fingerprint { range: Range(301, 419), fp: EncodedCountingMonoid(6, SumMonoid(2134)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(7, SumMonoid(3102)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 552), fp: EncodedCountingMonoid(6, SumMonoid(3152)) }, Fingerprint { range: Range(552, 640), fp: EncodedCountingMonoid(5, SumMonoid(2988)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 830], want_response: true }, ItemSet { range: Range(856, 866), items: [856], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(301, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(856, 866), items: [862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(12, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 301), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 552), items: [527], want_response: true }, ItemSet { range: Range(552, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(301, 373), fp: EncodedCountingMonoid(3, SumMonoid(986)) }], item_sets: [ItemSet { range: Range(12, 94), items: [12, 33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246, 251], want_response: false }, ItemSet { range: Range(277, 301), items: [277, 282, 285, 287], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 444, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [514, 515, 516, 524], want_response: false }, ItemSet { range: Range(527, 552), items: [540, 543], want_response: false }, ItemSet { range: Range(552, 640), items: [552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136, 202], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(301, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 373), items: [366, 371], want_response: true }], wants: [12, 33, 40, 46, 73, 80, 88, 246, 251, 285, 287, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 373, 380, 395, 660, 670, 674, 866], provide: [(777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(301, 366), items: [301, 313], want_response: false }, ItemSet { range: Range(366, 373), items: [372], want_response: false }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873, 342, 366, 371], provide: [(12, true), (33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (251, true), (285, true), (287, true), (419, true), (427, true), (442, true), (444, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (125, true), (136, true), (202, true), (204, true), (211, true), (373, true), (380, true), (395, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [301, 372], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true), (342, true), (366, true), (371, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(301, true), (372, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 251, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873, 342, 366, 371]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 977, 992, 12, 33, 40, 46, 73, 80, 88, 246, 251, 285, 287, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 373, 380, 395, 660, 670, 674, 866, 301, 372]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 251, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(67, SumMonoid(32908)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(24, SumMonoid(5094)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(24, SumMonoid(12138)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(10, SumMonoid(7343)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(9, SumMonoid(8333)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 94), fp: EncodedCountingMonoid(6, SumMonoid(360)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(6, SumMonoid(972)) }, Fingerprint { range: Range(231, 301), fp: EncodedCountingMonoid(6, SumMonoid(1628)) }, Fingerprint { range: Range(301, 419), fp: EncodedCountingMonoid(6, SumMonoid(2134)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(7, SumMonoid(3102)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 552), fp: EncodedCountingMonoid(6, SumMonoid(3152)) }, Fingerprint { range: Range(552, 640), fp: EncodedCountingMonoid(5, SumMonoid(2988)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 830], want_response: true }, ItemSet { range: Range(856, 866), items: [856], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(301, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(856, 866), items: [862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 301), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 552), items: [527], want_response: true }, ItemSet { range: Range(552, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(301, 373), fp: EncodedCountingMonoid(3, SumMonoid(986)) }], item_sets: [ItemSet { range: Range(33, 94), items: [33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246, 251], want_response: false }, ItemSet { range: Range(277, 301), items: [277, 282, 285, 287], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 444, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [514, 515, 516, 524], want_response: false }, ItemSet { range: Range(527, 552), items: [540, 543], want_response: false }, ItemSet { range: Range(552, 640), items: [552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136, 202], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(301, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 373), items: [366, 371], want_response: true }], wants: [33, 40, 46, 73, 80, 88, 246, 251, 285, 287, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 373, 380, 395, 660, 670, 674, 866], provide: [(777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(301, 366), items: [301, 313], want_response: false }, ItemSet { range: Range(366, 373), items: [372], want_response: false }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873, 342, 366, 371], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (251, true), (285, true), (287, true), (419, true), (427, true), (442, true), (444, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (125, true), (136, true), (202, true), (204, true), (211, true), (373, true), (380, true), (395, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [301, 372], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true), (342, true), (366, true), (371, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(301, true), (372, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 251, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 772, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873, 342, 366, 371]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 977, 992, 33, 40, 46, 73, 80, 88, 246, 251, 285, 287, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 373, 380, 395, 660, 670, 674, 866, 301, 372]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 251, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(66, SumMonoid(32136)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(24, SumMonoid(5094)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(24, SumMonoid(12138)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(9, SumMonoid(8333)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 94), fp: EncodedCountingMonoid(6, SumMonoid(360)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(6, SumMonoid(972)) }, Fingerprint { range: Range(231, 301), fp: EncodedCountingMonoid(6, SumMonoid(1628)) }, Fingerprint { range: Range(301, 419), fp: EncodedCountingMonoid(6, SumMonoid(2134)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(7, SumMonoid(3102)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 552), fp: EncodedCountingMonoid(6, SumMonoid(3152)) }, Fingerprint { range: Range(552, 640), fp: EncodedCountingMonoid(5, SumMonoid(2988)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(301, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 301), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 552), items: [527], want_response: true }, ItemSet { range: Range(552, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(301, 373), fp: EncodedCountingMonoid(3, SumMonoid(986)) }], item_sets: [ItemSet { range: Range(33, 94), items: [33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246, 251], want_response: false }, ItemSet { range: Range(277, 301), items: [277, 282, 285, 287], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 444, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [514, 515, 516, 524], want_response: false }, ItemSet { range: Range(527, 552), items: [540, 543], want_response: false }, ItemSet { range: Range(552, 640), items: [552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136, 202], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(301, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 373), items: [366, 371], want_response: true }], wants: [33, 40, 46, 73, 80, 88, 246, 251, 285, 287, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 373, 380, 395, 660, 670, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(301, 366), items: [301, 313], want_response: false }, ItemSet { range: Range(366, 373), items: [372], want_response: false }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873, 342, 366, 371], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (251, true), (285, true), (287, true), (419, true), (427, true), (442, true), (444, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (125, true), (136, true), (202, true), (204, true), (211, true), (373, true), (380, true), (395, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [301, 372], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true), (342, true), (366, true), (371, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(301, true), (372, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 251, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 444, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873, 342, 366, 371]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 977, 992, 33, 40, 46, 73, 80, 88, 246, 251, 285, 287, 419, 427, 442, 444, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 373, 380, 395, 660, 670, 674, 866, 301, 372]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 251, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(65, SumMonoid(31692)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(24, SumMonoid(5094)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(23, SumMonoid(11694)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(9, SumMonoid(8333)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 94), fp: EncodedCountingMonoid(6, SumMonoid(360)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(6, SumMonoid(972)) }, Fingerprint { range: Range(231, 301), fp: EncodedCountingMonoid(6, SumMonoid(1628)) }, Fingerprint { range: Range(301, 419), fp: EncodedCountingMonoid(6, SumMonoid(2134)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 552), fp: EncodedCountingMonoid(6, SumMonoid(3152)) }, Fingerprint { range: Range(552, 640), fp: EncodedCountingMonoid(5, SumMonoid(2988)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(301, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 301), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 552), items: [527], want_response: true }, ItemSet { range: Range(552, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(301, 373), fp: EncodedCountingMonoid(3, SumMonoid(986)) }], item_sets: [ItemSet { range: Range(33, 94), items: [33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246, 251], want_response: false }, ItemSet { range: Range(277, 301), items: [277, 282, 285, 287], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [514, 515, 516, 524], want_response: false }, ItemSet { range: Range(527, 552), items: [540, 543], want_response: false }, ItemSet { range: Range(552, 640), items: [552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136, 202], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(301, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 373), items: [366, 371], want_response: true }], wants: [33, 40, 46, 73, 80, 88, 246, 251, 285, 287, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 373, 380, 395, 660, 670, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(301, 366), items: [301, 313], want_response: false }, ItemSet { range: Range(366, 373), items: [372], want_response: false }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873, 342, 366, 371], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (251, true), (285, true), (287, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (125, true), (136, true), (202, true), (204, true), (211, true), (373, true), (380, true), (395, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [301, 372], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true), (342, true), (366, true), (371, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(301, true), (372, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 251, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873, 342, 366, 371]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 977, 992, 33, 40, 46, 73, 80, 88, 246, 251, 285, 287, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 373, 380, 395, 660, 670, 674, 866, 301, 372]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(64, SumMonoid(31441)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(23, SumMonoid(4843)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(23, SumMonoid(11694)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(9, SumMonoid(8333)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 94), fp: EncodedCountingMonoid(6, SumMonoid(360)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(6, SumMonoid(972)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(6, SumMonoid(1678)) }, Fingerprint { range: Range(313, 419), fp: EncodedCountingMonoid(5, SumMonoid(1833)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 552), fp: EncodedCountingMonoid(6, SumMonoid(3152)) }, Fingerprint { range: Range(552, 640), fp: EncodedCountingMonoid(5, SumMonoid(2988)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 552), items: [527], want_response: true }, ItemSet { range: Range(552, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 94), items: [33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 285, 287, 301], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [514, 515, 516, 524], want_response: false }, ItemSet { range: Range(527, 552), items: [540, 543], want_response: false }, ItemSet { range: Range(552, 640), items: [552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136, 202], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 88, 246, 285, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 372, 373, 380, 395, 660, 670, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (285, true), (287, true), (301, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (524, true), (540, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (125, true), (136, true), (202, true), (204, true), (211, true), (372, true), (373, true), (380, true), (395, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 977, 992, 33, 40, 46, 73, 80, 88, 246, 285, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 540, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 372, 373, 380, 395, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(63, SumMonoid(30901)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(23, SumMonoid(4843)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(22, SumMonoid(11154)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(9, SumMonoid(8333)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 94), fp: EncodedCountingMonoid(6, SumMonoid(360)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(6, SumMonoid(972)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(6, SumMonoid(1678)) }, Fingerprint { range: Range(313, 419), fp: EncodedCountingMonoid(5, SumMonoid(1833)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 552), fp: EncodedCountingMonoid(5, SumMonoid(2612)) }, Fingerprint { range: Range(552, 640), fp: EncodedCountingMonoid(5, SumMonoid(2988)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 552), items: [527], want_response: true }, ItemSet { range: Range(552, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 94), items: [33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 285, 287, 301], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [514, 515, 516, 524], want_response: false }, ItemSet { range: Range(527, 552), items: [543], want_response: false }, ItemSet { range: Range(552, 640), items: [552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136, 202], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 88, 246, 285, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 372, 373, 380, 395, 660, 670, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (285, true), (287, true), (301, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (524, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (125, true), (136, true), (202, true), (204, true), (211, true), (372, true), (373, true), (380, true), (395, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 977, 992, 33, 40, 46, 73, 80, 88, 246, 285, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 372, 373, 380, 395, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(62, SumMonoid(30248)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(23, SumMonoid(4843)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(22, SumMonoid(11154)) }, Fingerprint { range: Range(640, 888), fp: EncodedCountingMonoid(9, SumMonoid(6784)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(8, SumMonoid(7467)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 788), fp: EncodedCountingMonoid(11, SumMonoid(7823)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 94), fp: EncodedCountingMonoid(6, SumMonoid(360)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(6, SumMonoid(972)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(6, SumMonoid(1678)) }, Fingerprint { range: Range(313, 419), fp: EncodedCountingMonoid(5, SumMonoid(1833)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 552), fp: EncodedCountingMonoid(5, SumMonoid(2612)) }, Fingerprint { range: Range(552, 640), fp: EncodedCountingMonoid(5, SumMonoid(2988)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(3, SumMonoid(2004)) }, Fingerprint { range: Range(720, 788), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(788, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(866, 888), items: [866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 992), items: [966, 977], 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(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }], item_sets: [ItemSet { range: Range(788, 866), items: [788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(866, 888), items: [867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 992), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 552), items: [527], want_response: true }, ItemSet { range: Range(552, 640), items: [624], want_response: true }, ItemSet { range: Range(772, 788), items: [772, 777], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [830, 856, 866, 921, 931, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 94), items: [33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 285, 287, 301], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [514, 515, 516, 524], want_response: false }, ItemSet { range: Range(527, 552), items: [543], want_response: false }, ItemSet { range: Range(552, 640), items: [552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(772, 788), items: [], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136, 202], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(640, 674), items: [660, 670], want_response: true }, ItemSet { range: Range(674, 682), items: [674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }], wants: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 772, 777, 897, 902], provide: [(830, true), (856, true), (866, true), (921, true), (931, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 674), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(674, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }], wants: [33, 40, 46, 73, 80, 88, 246, 285, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 888, 891, 901, 94, 125, 136, 202, 204, 211, 372, 373, 380, 395, 660, 670, 674, 720, 748], provide: [(788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (772, true), (777, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 653, 666, 682, 689, 705, 737, 742], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (285, true), (287, true), (301, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (524, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (888, true), (891, true), (901, true), (94, true), (125, true), (136, true), (202, true), (204, true), (211, true), (372, true), (373, true), (380, true), (395, true), (660, true), (670, true), (674, true), (720, true), (748, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (640, true), (653, true), (666, true), (682, true), (689, true), (705, true), (737, true), (742, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 772, 777, 897, 902, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 653, 666, 682, 689, 705, 737, 742]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 866, 921, 931, 966, 977, 992, 33, 40, 46, 73, 80, 88, 246, 285, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 888, 891, 901, 94, 125, 136, 202, 204, 211, 372, 373, 380, 395, 660, 670, 674, 720, 748]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 125, 136, 143, 153, 165, 167, 202, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 277, 282, 285, 287, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 395, 413, 419, 427, 439, 442, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 504, 509, 514, 515, 516, 523, 524, 527, 543, 552, 598, 602, 604, 624, 632, 640, 653, 660, 666, 670, 674, 682, 689, 705, 720, 737, 742, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 966, 969, 970, 973, 977, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 125, 136, 143, 153, 165, 167, 202, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 277, 282, 285, 287, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 395, 413, 419, 427, 439, 442, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 504, 509, 514, 515, 516, 523, 524, 527, 543, 552, 598, 602, 604, 624, 632, 640, 653, 660, 666, 670, 674, 682, 689, 705, 720, 737, 742, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 966, 969, 970, 973, 977, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 125, 136, 143, 153, 165, 167, 202, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 277, 282, 285, 287, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 395, 413, 419, 427, 439, 442, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 504, 509, 514, 515, 516, 523, 524, 527, 543, 552, 598, 602, 604, 624, 632, 640, 653, 660, 666, 670, 674, 682, 689, 705, 720, 737, 742, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 966, 969, 970, 973, 977, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(63, SumMonoid(30901)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(23, SumMonoid(4843)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(22, SumMonoid(11154)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(9, SumMonoid(8333)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 94), fp: EncodedCountingMonoid(6, SumMonoid(360)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(6, SumMonoid(972)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(6, SumMonoid(1678)) }, Fingerprint { range: Range(313, 419), fp: EncodedCountingMonoid(5, SumMonoid(1833)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 552), fp: EncodedCountingMonoid(5, SumMonoid(2612)) }, Fingerprint { range: Range(552, 640), fp: EncodedCountingMonoid(5, SumMonoid(2988)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 552), items: [527], want_response: true }, ItemSet { range: Range(552, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 94), items: [33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 285, 287, 301], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [514, 515, 516, 524], want_response: false }, ItemSet { range: Range(527, 552), items: [543], want_response: false }, ItemSet { range: Range(552, 640), items: [552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136, 202], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 88, 246, 285, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 372, 373, 380, 395, 660, 670, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (285, true), (287, true), (301, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (524, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (125, true), (136, true), (202, true), (204, true), (211, true), (372, true), (373, true), (380, true), (395, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 977, 992, 33, 40, 46, 73, 80, 88, 246, 285, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 372, 373, 380, 395, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(62, SumMonoid(30181)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(23, SumMonoid(4843)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(22, SumMonoid(11154)) }, Fingerprint { range: Range(640, 888), fp: EncodedCountingMonoid(9, SumMonoid(6717)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(8, SumMonoid(7467)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 788), fp: EncodedCountingMonoid(11, SumMonoid(7823)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 94), fp: EncodedCountingMonoid(6, SumMonoid(360)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(6, SumMonoid(972)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(6, SumMonoid(1678)) }, Fingerprint { range: Range(313, 419), fp: EncodedCountingMonoid(5, SumMonoid(1833)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 552), fp: EncodedCountingMonoid(5, SumMonoid(2612)) }, Fingerprint { range: Range(552, 640), fp: EncodedCountingMonoid(5, SumMonoid(2988)) }, Fingerprint { range: Range(640, 674), fp: EncodedCountingMonoid(3, SumMonoid(1983)) }, Fingerprint { range: Range(674, 788), fp: EncodedCountingMonoid(3, SumMonoid(2182)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(788, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(866, 888), items: [866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 992), items: [966, 977], 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(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(674, 742), fp: EncodedCountingMonoid(4, SumMonoid(2813)) }, Fingerprint { range: Range(742, 788), fp: EncodedCountingMonoid(4, SumMonoid(3051)) }], item_sets: [ItemSet { range: Range(788, 866), items: [788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(866, 888), items: [867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 992), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 552), items: [527], want_response: true }, ItemSet { range: Range(552, 640), items: [624], want_response: true }, ItemSet { range: Range(640, 666), items: [640, 653], want_response: true }, ItemSet { range: Range(666, 674), items: [666], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [830, 856, 866, 921, 931, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 94), items: [33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 285, 287, 301], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [514, 515, 516, 524], want_response: false }, ItemSet { range: Range(527, 552), items: [543], want_response: false }, ItemSet { range: Range(552, 640), items: [552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(640, 666), items: [653, 660], want_response: false }, ItemSet { range: Range(666, 674), items: [670], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136, 202], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(674, 742), items: [674], want_response: true }, ItemSet { range: Range(742, 788), items: [748, 760], want_response: true }], wants: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 640, 666, 897, 902], provide: [(830, true), (856, true), (866, true), (921, true), (931, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(674, 742), items: [682, 689, 705, 737], want_response: false }, ItemSet { range: Range(742, 788), items: [742, 760, 772, 777], want_response: false }], wants: [33, 40, 46, 73, 80, 88, 246, 285, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 660, 670, 888, 891, 901, 94, 125, 136, 202, 204, 211, 372, 373, 380, 395, 674, 748], provide: [(788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (666, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 682, 689, 705, 737, 742, 772, 777], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (285, true), (287, true), (301, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (524, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (660, true), (670, true), (888, true), (891, true), (901, true), (94, true), (125, true), (136, true), (202, true), (204, true), (211, true), (372, true), (373, true), (380, true), (395, true), (674, true), (748, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (682, true), (689, true), (705, true), (737, true), (742, true), (772, true), (777, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 640, 666, 897, 902, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 682, 689, 705, 737, 742, 772, 777]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 866, 921, 931, 966, 977, 992, 33, 40, 46, 73, 80, 88, 246, 285, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 660, 670, 888, 891, 901, 94, 125, 136, 202, 204, 211, 372, 373, 380, 395, 674, 748]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 125, 136, 143, 153, 165, 167, 202, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 277, 282, 285, 287, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 395, 413, 419, 427, 439, 442, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 504, 509, 514, 515, 516, 523, 524, 527, 543, 552, 598, 602, 604, 624, 632, 640, 653, 660, 666, 670, 674, 682, 689, 705, 737, 742, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 966, 969, 970, 973, 977, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 125, 136, 143, 153, 165, 167, 202, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 277, 282, 285, 287, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 395, 413, 419, 427, 439, 442, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 504, 509, 514, 515, 516, 523, 524, 527, 543, 552, 598, 602, 604, 624, 632, 640, 653, 660, 666, 670, 674, 682, 689, 705, 737, 742, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 966, 969, 970, 973, 977, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 125, 136, 143, 153, 165, 167, 202, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 277, 282, 285, 287, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 395, 413, 419, 427, 439, 442, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 504, 509, 514, 515, 516, 523, 524, 527, 543, 552, 598, 602, 604, 624, 632, 640, 653, 660, 666, 670, 674, 682, 689, 705, 737, 742, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 966, 969, 970, 973, 977, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(63, SumMonoid(30901)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(23, SumMonoid(4843)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(22, SumMonoid(11154)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(9, SumMonoid(8333)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 94), fp: EncodedCountingMonoid(6, SumMonoid(360)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(6, SumMonoid(972)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(6, SumMonoid(1678)) }, Fingerprint { range: Range(313, 419), fp: EncodedCountingMonoid(5, SumMonoid(1833)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 552), fp: EncodedCountingMonoid(5, SumMonoid(2612)) }, Fingerprint { range: Range(552, 640), fp: EncodedCountingMonoid(5, SumMonoid(2988)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 552), items: [527], want_response: true }, ItemSet { range: Range(552, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 94), items: [33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 285, 287, 301], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [514, 515, 516, 524], want_response: false }, ItemSet { range: Range(527, 552), items: [543], want_response: false }, ItemSet { range: Range(552, 640), items: [552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136, 202], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 88, 246, 285, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 372, 373, 380, 395, 660, 670, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (285, true), (287, true), (301, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (514, true), (515, true), (516, true), (524, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (125, true), (136, true), (202, true), (204, true), (211, true), (372, true), (373, true), (380, true), (395, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 977, 992, 33, 40, 46, 73, 80, 88, 246, 285, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 514, 515, 516, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 372, 373, 380, 395, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 515, 516, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(62, SumMonoid(30387)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 395), fp: EncodedCountingMonoid(22, SumMonoid(4448)) }, Fingerprint { range: Range(395, 640), fp: EncodedCountingMonoid(22, SumMonoid(11035)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(9, SumMonoid(8333)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 229), fp: EncodedCountingMonoid(11, SumMonoid(1740)) }, Fingerprint { range: Range(229, 395), fp: EncodedCountingMonoid(11, SumMonoid(3426)) }, Fingerprint { range: Range(395, 503), fp: EncodedCountingMonoid(5, SumMonoid(2274)) }, Fingerprint { range: Range(503, 640), fp: EncodedCountingMonoid(5, SumMonoid(2686)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 94), fp: EncodedCountingMonoid(6, SumMonoid(360)) }, Fingerprint { range: Range(94, 229), fp: EncodedCountingMonoid(6, SumMonoid(972)) }, Fingerprint { range: Range(229, 301), fp: EncodedCountingMonoid(5, SumMonoid(1377)) }, Fingerprint { range: Range(301, 395), fp: EncodedCountingMonoid(5, SumMonoid(1739)) }, Fingerprint { range: Range(395, 462), fp: EncodedCountingMonoid(6, SumMonoid(2591)) }, Fingerprint { range: Range(462, 503), fp: EncodedCountingMonoid(6, SumMonoid(2854)) }, Fingerprint { range: Range(503, 552), fp: EncodedCountingMonoid(5, SumMonoid(2602)) }, Fingerprint { range: Range(552, 640), fp: EncodedCountingMonoid(5, SumMonoid(2988)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(94, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 229), fp: EncodedCountingMonoid(5, SumMonoid(1029)) }, Fingerprint { range: Range(229, 277), fp: EncodedCountingMonoid(3, SumMonoid(704)) }, Fingerprint { range: Range(301, 371), fp: EncodedCountingMonoid(3, SumMonoid(1021)) }, Fingerprint { range: Range(371, 395), fp: EncodedCountingMonoid(3, SumMonoid(1142)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 94), items: [43], want_response: true }, ItemSet { range: Range(277, 301), items: [277, 282], want_response: true }, ItemSet { range: Range(395, 458), items: [413, 439], want_response: true }, ItemSet { range: Range(458, 462), items: [458], want_response: true }, ItemSet { range: Range(462, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 523), items: [503, 509], want_response: true }, ItemSet { range: Range(523, 552), items: [523, 527], want_response: true }, ItemSet { range: Range(552, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 94), items: [33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(277, 301), items: [277, 282, 285, 287], want_response: false }, ItemSet { range: Range(395, 458), items: [395, 419, 427, 442, 450], want_response: false }, ItemSet { range: Range(458, 462), items: [458], want_response: false }, ItemSet { range: Range(462, 503), items: [462, 466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 523), items: [504, 515, 516], want_response: false }, ItemSet { range: Range(523, 552), items: [524, 543], want_response: false }, ItemSet { range: Range(552, 640), items: [552, 598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 167), items: [136], want_response: true }, ItemSet { range: Range(167, 211), items: [202, 204], want_response: true }, ItemSet { range: Range(211, 229), items: [211], want_response: true }, ItemSet { range: Range(229, 277), items: [246], want_response: true }, ItemSet { range: Range(301, 371), items: [301, 313], want_response: true }, ItemSet { range: Range(371, 380), items: [372, 373], want_response: true }, ItemSet { range: Range(380, 395), items: [380], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 211), items: [167, 203, 209], want_response: false }, ItemSet { range: Range(211, 229), items: [223, 227], want_response: false }, ItemSet { range: Range(229, 277), items: [229, 231, 244], want_response: false }, ItemSet { range: Range(301, 371), items: [313, 342, 366], want_response: false }, ItemSet { range: Range(371, 380), items: [371], want_response: false }, ItemSet { range: Range(380, 395), items: [382, 389], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 88, 285, 287, 395, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 515, 516, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 246, 301, 372, 373, 380, 660, 670, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (413, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 382, 389, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (285, true), (287, true), (395, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (515, true), (516, true), (524, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (125, true), (136, true), (202, true), (204, true), (211, true), (246, true), (301, true), (372, true), (373, true), (380, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (342, true), (366, true), (371, true), (382, true), (389, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 125, 136, 202, 204, 211, 246, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 515, 516, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 382, 389, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 977, 992, 33, 40, 46, 73, 80, 88, 285, 287, 395, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 515, 516, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 202, 204, 211, 246, 301, 372, 373, 380, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 125, 136, 204, 211, 246, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 515, 516, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(61, SumMonoid(30185)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(22, SumMonoid(4641)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(21, SumMonoid(10640)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(9, SumMonoid(8333)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 94), fp: EncodedCountingMonoid(6, SumMonoid(360)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(5, SumMonoid(770)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(6, SumMonoid(1678)) }, Fingerprint { range: Range(313, 419), fp: EncodedCountingMonoid(5, SumMonoid(1833)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 598), fp: EncodedCountingMonoid(5, SumMonoid(2650)) }, Fingerprint { range: Range(598, 640), fp: EncodedCountingMonoid(4, SumMonoid(2436)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 598), items: [527], want_response: true }, ItemSet { range: Range(598, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 94), items: [33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 285, 287, 301], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [515, 516, 524], want_response: false }, ItemSet { range: Range(527, 598), items: [543, 552], want_response: false }, ItemSet { range: Range(598, 640), items: [598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 88, 246, 285, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 515, 516, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 204, 211, 372, 373, 380, 395, 660, 670, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (285, true), (287, true), (301, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (515, true), (516, true), (524, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (125, true), (136, true), (204, true), (211, true), (372, true), (373, true), (380, true), (395, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 125, 136, 204, 211, 246, 277, 282, 285, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 515, 516, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 977, 992, 33, 40, 46, 73, 80, 88, 246, 285, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 515, 516, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 204, 211, 372, 373, 380, 395, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 125, 136, 204, 211, 246, 277, 282, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 515, 516, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(60, SumMonoid(29900)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(21, SumMonoid(4356)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(21, SumMonoid(10640)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(9, SumMonoid(8333)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 94), fp: EncodedCountingMonoid(6, SumMonoid(360)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(5, SumMonoid(770)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(5, SumMonoid(1393)) }, Fingerprint { range: Range(313, 419), fp: EncodedCountingMonoid(5, SumMonoid(1833)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 598), fp: EncodedCountingMonoid(5, SumMonoid(2650)) }, Fingerprint { range: Range(598, 640), fp: EncodedCountingMonoid(4, SumMonoid(2436)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 598), items: [527], want_response: true }, ItemSet { range: Range(598, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 94), items: [33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 287, 301], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [515, 516, 524], want_response: false }, ItemSet { range: Range(527, 598), items: [543, 552], want_response: false }, ItemSet { range: Range(598, 640), items: [598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 88, 246, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 515, 516, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 204, 211, 372, 373, 380, 395, 660, 670, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (287, true), (301, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (515, true), (516, true), (524, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (125, true), (136, true), (204, true), (211, true), (372, true), (373, true), (380, true), (395, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 125, 136, 204, 211, 246, 277, 282, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 515, 516, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 977, 992, 33, 40, 46, 73, 80, 88, 246, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 515, 516, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 204, 211, 372, 373, 380, 395, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 125, 136, 204, 211, 246, 277, 282, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 515, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(59, SumMonoid(29384)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(21, SumMonoid(4356)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(20, SumMonoid(10124)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(9, SumMonoid(8333)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 94), fp: EncodedCountingMonoid(6, SumMonoid(360)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(5, SumMonoid(770)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(5, SumMonoid(1393)) }, Fingerprint { range: Range(313, 419), fp: EncodedCountingMonoid(5, SumMonoid(1833)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 598), fp: EncodedCountingMonoid(4, SumMonoid(2134)) }, Fingerprint { range: Range(598, 640), fp: EncodedCountingMonoid(4, SumMonoid(2436)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 598), items: [527], want_response: true }, ItemSet { range: Range(598, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 94), items: [33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 287, 301], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [515, 524], want_response: false }, ItemSet { range: Range(527, 598), items: [543, 552], want_response: false }, ItemSet { range: Range(598, 640), items: [598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 88, 246, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 515, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 204, 211, 372, 373, 380, 395, 660, 670, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (287, true), (301, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (515, true), (524, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (125, true), (136, true), (204, true), (211, true), (372, true), (373, true), (380, true), (395, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 125, 136, 204, 211, 246, 277, 282, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 515, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 977, 992, 33, 40, 46, 73, 80, 88, 246, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 515, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 204, 211, 372, 373, 380, 395, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 125, 136, 204, 211, 246, 277, 282, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 515, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(58, SumMonoid(28493)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(21, SumMonoid(4356)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(20, SumMonoid(10124)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(8, SumMonoid(7442)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 94), fp: EncodedCountingMonoid(6, SumMonoid(360)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(5, SumMonoid(770)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(5, SumMonoid(1393)) }, Fingerprint { range: Range(313, 419), fp: EncodedCountingMonoid(5, SumMonoid(1833)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 598), fp: EncodedCountingMonoid(4, SumMonoid(2134)) }, Fingerprint { range: Range(598, 640), fp: EncodedCountingMonoid(4, SumMonoid(2436)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 921), fp: EncodedCountingMonoid(3, SumMonoid(2655)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 598), items: [527], want_response: true }, ItemSet { range: Range(598, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }], wants: [830, 856, 921, 931, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 94), items: [33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 287, 301], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [515, 524], want_response: false }, ItemSet { range: Range(527, 598), items: [543, 552], want_response: false }, ItemSet { range: Range(598, 640), items: [598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(879, 921), items: [888, 901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742], provide: [(830, true), (856, true), (921, true), (931, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [33, 40, 46, 73, 80, 88, 246, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 515, 524, 543, 552, 598, 602, 604, 632, 720, 748, 94, 125, 136, 204, 211, 372, 373, 380, 395, 660, 670, 674, 866, 888, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873, 879, 897, 902], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (287, true), (301, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (515, true), (524, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (94, true), (125, true), (136, true), (204, true), (211, true), (372, true), (373, true), (380, true), (395, true), (660, true), (670, true), (674, true), (866, true), (888, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 125, 136, 204, 211, 246, 277, 282, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 515, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 901, 921, 931, 966, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 921, 931, 966, 977, 992, 33, 40, 46, 73, 80, 88, 246, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 515, 524, 543, 552, 598, 602, 604, 632, 720, 748, 94, 125, 136, 204, 211, 372, 373, 380, 395, 660, 670, 674, 866, 888, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 125, 136, 143, 153, 165, 167, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 277, 282, 287, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 395, 413, 419, 427, 439, 442, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 504, 509, 515, 523, 524, 527, 543, 552, 598, 602, 604, 624, 632, 640, 653, 660, 666, 670, 674, 682, 689, 705, 720, 737, 742, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 966, 969, 970, 973, 977, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 125, 136, 143, 153, 165, 167, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 277, 282, 287, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 395, 413, 419, 427, 439, 442, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 504, 509, 515, 523, 524, 527, 543, 552, 598, 602, 604, 624, 632, 640, 653, 660, 666, 670, 674, 682, 689, 705, 720, 737, 742, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 966, 969, 970, 973, 977, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 125, 136, 143, 153, 165, 167, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 277, 282, 287, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 395, 413, 419, 427, 439, 442, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 504, 509, 515, 523, 524, 527, 543, 552, 598, 602, 604, 624, 632, 640, 653, 660, 666, 670, 674, 682, 689, 705, 720, 737, 742, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 966, 969, 970, 973, 977, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 125, 136, 204, 211, 246, 277, 282, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 515, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(59, SumMonoid(29384)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(21, SumMonoid(4356)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(20, SumMonoid(10124)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(9, SumMonoid(8333)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 94), fp: EncodedCountingMonoid(6, SumMonoid(360)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(5, SumMonoid(770)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(5, SumMonoid(1393)) }, Fingerprint { range: Range(313, 419), fp: EncodedCountingMonoid(5, SumMonoid(1833)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(6, SumMonoid(2896)) }, Fingerprint { range: Range(509, 598), fp: EncodedCountingMonoid(4, SumMonoid(2134)) }, Fingerprint { range: Range(598, 640), fp: EncodedCountingMonoid(4, SumMonoid(2436)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 94), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 598), items: [527], want_response: true }, ItemSet { range: Range(598, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 94), items: [33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 287, 301], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [504], want_response: false }, ItemSet { range: Range(509, 527), items: [515, 524], want_response: false }, ItemSet { range: Range(527, 598), items: [543, 552], want_response: false }, ItemSet { range: Range(598, 640), items: [598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [395], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 88, 246, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 515, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 204, 211, 372, 373, 380, 395, 660, 670, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (246, true), (287, true), (301, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (504, true), (515, true), (524, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (125, true), (136, true), (204, true), (211, true), (372, true), (373, true), (380, true), (395, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 125, 136, 204, 211, 246, 277, 282, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 504, 515, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 977, 992, 33, 40, 46, 73, 80, 88, 246, 287, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 504, 515, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 204, 211, 372, 373, 380, 395, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 125, 136, 204, 211, 246, 277, 282, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(58, SumMonoid(28880)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 395), fp: EncodedCountingMonoid(20, SumMonoid(3961)) }, Fingerprint { range: Range(395, 640), fp: EncodedCountingMonoid(20, SumMonoid(10015)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(9, SumMonoid(8333)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 229), fp: EncodedCountingMonoid(11, SumMonoid(1740)) }, Fingerprint { range: Range(229, 395), fp: EncodedCountingMonoid(11, SumMonoid(3426)) }, Fingerprint { range: Range(395, 503), fp: EncodedCountingMonoid(5, SumMonoid(2274)) }, Fingerprint { range: Range(503, 640), fp: EncodedCountingMonoid(5, SumMonoid(2686)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 94), fp: EncodedCountingMonoid(6, SumMonoid(360)) }, Fingerprint { range: Range(94, 229), fp: EncodedCountingMonoid(5, SumMonoid(770)) }, Fingerprint { range: Range(229, 313), fp: EncodedCountingMonoid(5, SumMonoid(1393)) }, Fingerprint { range: Range(313, 395), fp: EncodedCountingMonoid(4, SumMonoid(1438)) }, Fingerprint { range: Range(395, 462), fp: EncodedCountingMonoid(6, SumMonoid(2591)) }, Fingerprint { range: Range(462, 503), fp: EncodedCountingMonoid(6, SumMonoid(2854)) }, Fingerprint { range: Range(503, 598), fp: EncodedCountingMonoid(4, SumMonoid(2134)) }, Fingerprint { range: Range(598, 640), fp: EncodedCountingMonoid(4, SumMonoid(2436)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(94, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 229), fp: EncodedCountingMonoid(5, SumMonoid(1029)) }, Fingerprint { range: Range(229, 277), fp: EncodedCountingMonoid(3, SumMonoid(704)) }, Fingerprint { range: Range(313, 371), fp: EncodedCountingMonoid(3, SumMonoid(1021)) }, Fingerprint { range: Range(371, 395), fp: EncodedCountingMonoid(3, SumMonoid(1142)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 94), items: [43], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(395, 458), items: [413, 439], want_response: true }, ItemSet { range: Range(458, 462), items: [458], want_response: true }, ItemSet { range: Range(462, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 523), items: [503, 509], want_response: true }, ItemSet { range: Range(523, 598), items: [523, 527], want_response: true }, ItemSet { range: Range(598, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 94), items: [33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 287, 301], want_response: false }, ItemSet { range: Range(395, 458), items: [395, 419, 427, 442, 450], want_response: false }, ItemSet { range: Range(458, 462), items: [458], want_response: false }, ItemSet { range: Range(462, 503), items: [462, 466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 523), items: [515], want_response: false }, ItemSet { range: Range(523, 598), items: [524, 543, 552], want_response: false }, ItemSet { range: Range(598, 640), items: [598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 167), items: [136], want_response: true }, ItemSet { range: Range(167, 229), items: [204, 211], want_response: true }, ItemSet { range: Range(229, 277), items: [246], want_response: true }, ItemSet { range: Range(313, 371), items: [313], want_response: true }, ItemSet { range: Range(371, 380), items: [372, 373], want_response: true }, ItemSet { range: Range(380, 395), items: [380], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 229), items: [167, 203, 209, 223, 227], want_response: false }, ItemSet { range: Range(229, 277), items: [229, 231, 244], want_response: false }, ItemSet { range: Range(313, 371), items: [313, 342, 366], want_response: false }, ItemSet { range: Range(371, 380), items: [371], want_response: false }, ItemSet { range: Range(380, 395), items: [382, 389], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 88, 287, 301, 395, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 204, 211, 246, 372, 373, 380, 660, 670, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (413, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 382, 389, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (287, true), (301, true), (395, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (515, true), (524, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (125, true), (136, true), (204, true), (211, true), (246, true), (372, true), (373, true), (380, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (342, true), (366, true), (371, true), (382, true), (389, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 125, 136, 204, 211, 246, 277, 282, 287, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 382, 389, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 977, 992, 33, 40, 46, 73, 80, 88, 287, 301, 395, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 204, 211, 246, 372, 373, 380, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 125, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(57, SumMonoid(28593)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(20, SumMonoid(4069)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(19, SumMonoid(9620)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(9, SumMonoid(8333)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 94), fp: EncodedCountingMonoid(6, SumMonoid(360)) }, Fingerprint { range: Range(94, 231), fp: EncodedCountingMonoid(5, SumMonoid(770)) }, Fingerprint { range: Range(231, 372), fp: EncodedCountingMonoid(5, SumMonoid(1419)) }, Fingerprint { range: Range(372, 419), fp: EncodedCountingMonoid(4, SumMonoid(1520)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(5, SumMonoid(2392)) }, Fingerprint { range: Range(509, 598), fp: EncodedCountingMonoid(4, SumMonoid(2134)) }, Fingerprint { range: Range(598, 640), fp: EncodedCountingMonoid(4, SumMonoid(2436)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(94, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(4, SumMonoid(1034)) }, Fingerprint { range: Range(313, 372), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 94), items: [43], want_response: true }, ItemSet { range: Range(372, 413), items: [382, 389], want_response: true }, ItemSet { range: Range(413, 419), items: [413], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 598), items: [527], want_response: true }, ItemSet { range: Range(598, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 94), items: [33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(372, 413), items: [372, 373, 380, 395], want_response: false }, ItemSet { range: Range(413, 419), items: [], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [], want_response: false }, ItemSet { range: Range(509, 527), items: [515, 524], want_response: false }, ItemSet { range: Range(527, 598), items: [543, 552], want_response: false }, ItemSet { range: Range(598, 640), items: [598, 602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 203), items: [136], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(231, 282), items: [246, 277], want_response: true }, ItemSet { range: Range(282, 313), items: [282, 301], want_response: true }, ItemSet { range: Range(313, 372), items: [313], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 382, 389, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(231, 282), items: [231, 244, 277], want_response: false }, ItemSet { range: Range(282, 313), items: [282], want_response: false }, ItemSet { range: Range(313, 372), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 88, 372, 373, 380, 395, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 204, 211, 246, 301, 660, 670, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (382, true), (389, true), (413, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (372, true), (373, true), (380, true), (395, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (515, true), (524, true), (543, true), (552, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (125, true), (136, true), (204, true), (211, true), (246, true), (301, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (342, true), (366, true), (371, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 125, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 552, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 382, 389, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 977, 992, 33, 40, 46, 73, 80, 88, 372, 373, 380, 395, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 552, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 204, 211, 246, 301, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 125, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(56, SumMonoid(28041)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 395), fp: EncodedCountingMonoid(19, SumMonoid(3674)) }, Fingerprint { range: Range(395, 640), fp: EncodedCountingMonoid(19, SumMonoid(9463)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(9, SumMonoid(8333)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 229), fp: EncodedCountingMonoid(11, SumMonoid(1740)) }, Fingerprint { range: Range(229, 395), fp: EncodedCountingMonoid(11, SumMonoid(3426)) }, Fingerprint { range: Range(395, 503), fp: EncodedCountingMonoid(5, SumMonoid(2274)) }, Fingerprint { range: Range(503, 640), fp: EncodedCountingMonoid(5, SumMonoid(2686)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 94), fp: EncodedCountingMonoid(6, SumMonoid(360)) }, Fingerprint { range: Range(94, 229), fp: EncodedCountingMonoid(5, SumMonoid(770)) }, Fingerprint { range: Range(229, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 395), fp: EncodedCountingMonoid(4, SumMonoid(1438)) }, Fingerprint { range: Range(395, 462), fp: EncodedCountingMonoid(6, SumMonoid(2591)) }, Fingerprint { range: Range(462, 503), fp: EncodedCountingMonoid(6, SumMonoid(2854)) }, Fingerprint { range: Range(503, 602), fp: EncodedCountingMonoid(4, SumMonoid(2180)) }, Fingerprint { range: Range(602, 640), fp: EncodedCountingMonoid(3, SumMonoid(1838)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(94, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 229), fp: EncodedCountingMonoid(5, SumMonoid(1029)) }, Fingerprint { range: Range(229, 277), fp: EncodedCountingMonoid(3, SumMonoid(704)) }, Fingerprint { range: Range(313, 371), fp: EncodedCountingMonoid(3, SumMonoid(1021)) }, Fingerprint { range: Range(371, 395), fp: EncodedCountingMonoid(3, SumMonoid(1142)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 94), items: [43], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(395, 458), items: [413, 439], want_response: true }, ItemSet { range: Range(458, 462), items: [458], want_response: true }, ItemSet { range: Range(462, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 523), items: [503, 509], want_response: true }, ItemSet { range: Range(523, 602), items: [523, 527], want_response: true }, ItemSet { range: Range(602, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 94), items: [33, 40, 46, 73, 80, 88], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 301], want_response: false }, ItemSet { range: Range(395, 458), items: [395, 419, 427, 442, 450], want_response: false }, ItemSet { range: Range(458, 462), items: [458], want_response: false }, ItemSet { range: Range(462, 503), items: [462, 466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 523), items: [515], want_response: false }, ItemSet { range: Range(523, 602), items: [524, 543, 598], want_response: false }, ItemSet { range: Range(602, 640), items: [602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(94, 136), items: [94, 125], want_response: true }, ItemSet { range: Range(136, 167), items: [136], want_response: true }, ItemSet { range: Range(167, 229), items: [204, 211], want_response: true }, ItemSet { range: Range(229, 277), items: [246], want_response: true }, ItemSet { range: Range(313, 371), items: [313], want_response: true }, ItemSet { range: Range(371, 380), items: [372, 373], want_response: true }, ItemSet { range: Range(380, 395), items: [380], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(94, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 229), items: [167, 203, 209, 223, 227], want_response: false }, ItemSet { range: Range(229, 277), items: [229, 231, 244], want_response: false }, ItemSet { range: Range(313, 371), items: [313, 342, 366], want_response: false }, ItemSet { range: Range(371, 380), items: [371], want_response: false }, ItemSet { range: Range(380, 395), items: [382, 389], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 88, 301, 395, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 204, 211, 246, 372, 373, 380, 660, 670, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (413, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 382, 389, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (88, true), (301, true), (395, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (515, true), (524, true), (543, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (94, true), (125, true), (136, true), (204, true), (211, true), (246, true), (372, true), (373, true), (380, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (342, true), (366, true), (371, true), (382, true), (389, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 125, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 382, 389, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 977, 992, 33, 40, 46, 73, 80, 88, 301, 395, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 720, 748, 888, 891, 94, 125, 136, 204, 211, 246, 372, 373, 380, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(55, SumMonoid(27916)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(19, SumMonoid(3944)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(18, SumMonoid(9068)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(9, SumMonoid(8333)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(5, SumMonoid(272)) }, Fingerprint { range: Range(88, 231), fp: EncodedCountingMonoid(5, SumMonoid(733)) }, Fingerprint { range: Range(231, 372), fp: EncodedCountingMonoid(5, SumMonoid(1419)) }, Fingerprint { range: Range(372, 419), fp: EncodedCountingMonoid(4, SumMonoid(1520)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(5, SumMonoid(2392)) }, Fingerprint { range: Range(509, 602), fp: EncodedCountingMonoid(4, SumMonoid(2180)) }, Fingerprint { range: Range(602, 640), fp: EncodedCountingMonoid(3, SumMonoid(1838)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(88, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(4, SumMonoid(1034)) }, Fingerprint { range: Range(313, 372), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(372, 413), items: [382, 389], want_response: true }, ItemSet { range: Range(413, 419), items: [413], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 602), items: [527], want_response: true }, ItemSet { range: Range(602, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 40, 46, 73, 80], want_response: false }, ItemSet { range: Range(372, 413), items: [372, 373, 380, 395], want_response: false }, ItemSet { range: Range(413, 419), items: [], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [], want_response: false }, ItemSet { range: Range(509, 527), items: [515, 524], want_response: false }, ItemSet { range: Range(527, 602), items: [543, 598], want_response: false }, ItemSet { range: Range(602, 640), items: [602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 203), items: [136], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(231, 282), items: [246, 277], want_response: true }, ItemSet { range: Range(282, 313), items: [282, 301], want_response: true }, ItemSet { range: Range(313, 372), items: [313], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 382, 389, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(231, 282), items: [231, 244, 277], want_response: false }, ItemSet { range: Range(282, 313), items: [282], want_response: false }, ItemSet { range: Range(313, 372), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 372, 373, 380, 395, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 211, 246, 301, 660, 670, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (382, true), (389, true), (413, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (372, true), (373, true), (380, true), (395, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (515, true), (524, true), (543, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (88, true), (94, true), (136, true), (204, true), (211, true), (246, true), (301, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (342, true), (366, true), (371, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 382, 389, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 977, 992, 33, 40, 46, 73, 80, 372, 373, 380, 395, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 211, 246, 301, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(54, SumMonoid(27156)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(19, SumMonoid(3944)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(18, SumMonoid(9068)) }, Fingerprint { range: Range(640, 888), fp: EncodedCountingMonoid(9, SumMonoid(6677)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(8, SumMonoid(7467)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 788), fp: EncodedCountingMonoid(11, SumMonoid(7823)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(5, SumMonoid(272)) }, Fingerprint { range: Range(88, 231), fp: EncodedCountingMonoid(5, SumMonoid(733)) }, Fingerprint { range: Range(231, 372), fp: EncodedCountingMonoid(5, SumMonoid(1419)) }, Fingerprint { range: Range(372, 419), fp: EncodedCountingMonoid(4, SumMonoid(1520)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(5, SumMonoid(2392)) }, Fingerprint { range: Range(509, 602), fp: EncodedCountingMonoid(4, SumMonoid(2180)) }, Fingerprint { range: Range(602, 640), fp: EncodedCountingMonoid(3, SumMonoid(1838)) }, Fingerprint { range: Range(640, 674), fp: EncodedCountingMonoid(3, SumMonoid(1983)) }, Fingerprint { range: Range(674, 788), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(788, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(866, 888), items: [866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 992), items: [966, 977], 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(88, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(4, SumMonoid(1034)) }, Fingerprint { range: Range(313, 372), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(674, 742), fp: EncodedCountingMonoid(4, SumMonoid(2813)) }, Fingerprint { range: Range(742, 788), fp: EncodedCountingMonoid(4, SumMonoid(3051)) }], item_sets: [ItemSet { range: Range(788, 866), items: [788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(866, 888), items: [867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 992), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(372, 413), items: [382, 389], want_response: true }, ItemSet { range: Range(413, 419), items: [413], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 602), items: [527], want_response: true }, ItemSet { range: Range(602, 640), items: [624], want_response: true }, ItemSet { range: Range(640, 666), items: [640, 653], want_response: true }, ItemSet { range: Range(666, 674), items: [666], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [830, 856, 866, 921, 931, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 40, 46, 73, 80], want_response: false }, ItemSet { range: Range(372, 413), items: [372, 373, 380, 395], want_response: false }, ItemSet { range: Range(413, 419), items: [], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [], want_response: false }, ItemSet { range: Range(509, 527), items: [515, 524], want_response: false }, ItemSet { range: Range(527, 602), items: [543, 598], want_response: false }, ItemSet { range: Range(602, 640), items: [602, 604, 632], want_response: false }, ItemSet { range: Range(640, 666), items: [653, 660], want_response: false }, ItemSet { range: Range(666, 674), items: [670], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 203), items: [136], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(231, 282), items: [246, 277], want_response: true }, ItemSet { range: Range(282, 313), items: [282, 301], want_response: true }, ItemSet { range: Range(313, 372), items: [313], want_response: true }, ItemSet { range: Range(674, 742), items: [674, 720], want_response: true }, ItemSet { range: Range(742, 788), items: [748], want_response: true }], wants: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 43, 382, 389, 413, 439, 468, 496, 503, 509, 523, 527, 624, 640, 666, 897, 902], provide: [(830, true), (856, true), (866, true), (921, true), (931, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(231, 282), items: [231, 244, 277], want_response: false }, ItemSet { range: Range(282, 313), items: [282], want_response: false }, ItemSet { range: Range(313, 372), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(674, 742), items: [682, 689, 705, 737], want_response: false }, ItemSet { range: Range(742, 788), items: [742, 760, 772, 777], want_response: false }], wants: [33, 40, 46, 73, 80, 372, 373, 380, 395, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 660, 670, 888, 891, 901, 88, 94, 136, 204, 211, 246, 301, 674, 720, 748], provide: [(788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (382, true), (389, true), (413, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (666, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 682, 689, 705, 737, 742, 760, 772, 777], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (372, true), (373, true), (380, true), (395, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (515, true), (524, true), (543, true), (598, true), (602, true), (604, true), (632, true), (660, true), (670, true), (888, true), (891, true), (901, true), (88, true), (94, true), (136, true), (204, true), (211, true), (246, true), (301, true), (674, true), (720, true), (748, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (342, true), (366, true), (371, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (772, true), (777, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 43, 382, 389, 413, 439, 468, 496, 503, 509, 523, 527, 624, 640, 666, 897, 902, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 682, 689, 705, 737, 742, 760, 772, 777]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 866, 921, 931, 966, 977, 992, 33, 40, 46, 73, 80, 372, 373, 380, 395, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 660, 670, 888, 891, 901, 88, 94, 136, 204, 211, 246, 301, 674, 720, 748]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 136, 143, 153, 165, 167, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 277, 282, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 395, 413, 419, 427, 439, 442, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 509, 515, 523, 524, 527, 543, 598, 602, 604, 624, 632, 640, 653, 660, 666, 670, 674, 682, 689, 705, 720, 737, 742, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 966, 969, 970, 973, 977, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 136, 143, 153, 165, 167, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 277, 282, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 395, 413, 419, 427, 439, 442, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 509, 515, 523, 524, 527, 543, 598, 602, 604, 624, 632, 640, 653, 660, 666, 670, 674, 682, 689, 705, 720, 737, 742, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 966, 969, 970, 973, 977, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 136, 143, 153, 165, 167, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 277, 282, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 395, 413, 419, 427, 439, 442, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 509, 515, 523, 524, 527, 543, 598, 602, 604, 624, 632, 640, 653, 660, 666, 670, 674, 682, 689, 705, 720, 737, 742, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 966, 969, 970, 973, 977, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(55, SumMonoid(27916)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(19, SumMonoid(3944)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(18, SumMonoid(9068)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(9, SumMonoid(8333)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(5, SumMonoid(272)) }, Fingerprint { range: Range(88, 231), fp: EncodedCountingMonoid(5, SumMonoid(733)) }, Fingerprint { range: Range(231, 372), fp: EncodedCountingMonoid(5, SumMonoid(1419)) }, Fingerprint { range: Range(372, 419), fp: EncodedCountingMonoid(4, SumMonoid(1520)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(5, SumMonoid(2392)) }, Fingerprint { range: Range(509, 602), fp: EncodedCountingMonoid(4, SumMonoid(2180)) }, Fingerprint { range: Range(602, 640), fp: EncodedCountingMonoid(3, SumMonoid(1838)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(88, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(4, SumMonoid(1034)) }, Fingerprint { range: Range(313, 372), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(372, 413), items: [382, 389], want_response: true }, ItemSet { range: Range(413, 419), items: [413], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 602), items: [527], want_response: true }, ItemSet { range: Range(602, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 40, 46, 73, 80], want_response: false }, ItemSet { range: Range(372, 413), items: [372, 373, 380, 395], want_response: false }, ItemSet { range: Range(413, 419), items: [], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [], want_response: false }, ItemSet { range: Range(509, 527), items: [515, 524], want_response: false }, ItemSet { range: Range(527, 602), items: [543, 598], want_response: false }, ItemSet { range: Range(602, 640), items: [602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 203), items: [136], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(231, 282), items: [246, 277], want_response: true }, ItemSet { range: Range(282, 313), items: [282, 301], want_response: true }, ItemSet { range: Range(313, 372), items: [313], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 382, 389, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(231, 282), items: [231, 244, 277], want_response: false }, ItemSet { range: Range(282, 313), items: [282], want_response: false }, ItemSet { range: Range(313, 372), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 372, 373, 380, 395, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 211, 246, 301, 660, 670, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (382, true), (389, true), (413, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (372, true), (373, true), (380, true), (395, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (515, true), (524, true), (543, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (88, true), (94, true), (136, true), (204, true), (211, true), (246, true), (301, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (342, true), (366, true), (371, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 395, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 382, 389, 413, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 342, 366, 371, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 977, 992, 33, 40, 46, 73, 80, 372, 373, 380, 395, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 211, 246, 301, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(54, SumMonoid(27521)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(18, SumMonoid(3549)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(18, SumMonoid(9068)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(9, SumMonoid(8333)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(5, SumMonoid(272)) }, Fingerprint { range: Range(88, 231), fp: EncodedCountingMonoid(5, SumMonoid(733)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 419), fp: EncodedCountingMonoid(4, SumMonoid(1438)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(5, SumMonoid(2392)) }, Fingerprint { range: Range(509, 602), fp: EncodedCountingMonoid(4, SumMonoid(2180)) }, Fingerprint { range: Range(602, 640), fp: EncodedCountingMonoid(3, SumMonoid(1838)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 992), items: [966, 977], 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(88, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 602), items: [527], want_response: true }, ItemSet { range: Range(602, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 966, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 40, 46, 73, 80], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 301], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [], want_response: false }, ItemSet { range: Range(509, 527), items: [515, 524], want_response: false }, ItemSet { range: Range(527, 602), items: [543, 598], want_response: false }, ItemSet { range: Range(602, 640), items: [602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 203), items: [136], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (966, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 246, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 211, 372, 373, 380, 660, 670, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (246, true), (301, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (515, true), (524, true), (543, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (88, true), (94, true), (136, true), (204, true), (211, true), (372, true), (373, true), (380, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 966, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 966, 977, 992, 33, 40, 46, 73, 80, 246, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 211, 372, 373, 380, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(53, SumMonoid(26555)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(18, SumMonoid(3549)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(18, SumMonoid(9068)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(8, SumMonoid(7367)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(5, SumMonoid(272)) }, Fingerprint { range: Range(88, 231), fp: EncodedCountingMonoid(5, SumMonoid(733)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 419), fp: EncodedCountingMonoid(4, SumMonoid(1438)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(5, SumMonoid(2392)) }, Fingerprint { range: Range(509, 602), fp: EncodedCountingMonoid(4, SumMonoid(2180)) }, Fingerprint { range: Range(602, 640), fp: EncodedCountingMonoid(3, SumMonoid(1838)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(88, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 602), items: [527], want_response: true }, ItemSet { range: Range(602, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 40, 46, 73, 80], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 301], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [], want_response: false }, ItemSet { range: Range(509, 527), items: [515, 524], want_response: false }, ItemSet { range: Range(527, 602), items: [543, 598], want_response: false }, ItemSet { range: Range(602, 640), items: [602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 203), items: [136], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 246, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 211, 372, 373, 380, 660, 670, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (246, true), (301, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (515, true), (524, true), (543, true), (598, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (88, true), (94, true), (136, true), (204, true), (211, true), (372, true), (373, true), (380, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 977, 992, 33, 40, 46, 73, 80, 246, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 598, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 211, 372, 373, 380, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(52, SumMonoid(25957)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(18, SumMonoid(3549)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(17, SumMonoid(8470)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(9, SumMonoid(6571)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(8, SumMonoid(7367)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(5, SumMonoid(272)) }, Fingerprint { range: Range(88, 231), fp: EncodedCountingMonoid(5, SumMonoid(733)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 419), fp: EncodedCountingMonoid(4, SumMonoid(1438)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(5, SumMonoid(2392)) }, Fingerprint { range: Range(509, 602), fp: EncodedCountingMonoid(3, SumMonoid(1582)) }, Fingerprint { range: Range(602, 640), fp: EncodedCountingMonoid(3, SumMonoid(1838)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(4, SumMonoid(2657)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(88, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 602), items: [527], want_response: true }, ItemSet { range: Range(602, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 40, 46, 73, 80], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 301], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [], want_response: false }, ItemSet { range: Range(509, 527), items: [515, 524], want_response: false }, ItemSet { range: Range(527, 602), items: [543], want_response: false }, ItemSet { range: Range(602, 640), items: [602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 203), items: [136], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [], want_response: true }, ItemSet { range: Range(640, 670), items: [653, 660], want_response: true }, ItemSet { range: Range(670, 682), items: [670, 674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 670), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(670, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 246, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 211, 372, 373, 380, 660, 670, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (246, true), (301, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (515, true), (524, true), (543, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (88, true), (94, true), (136, true), (204, true), (211, true), (372, true), (373, true), (380, true), (660, true), (670, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 602, 604, 632, 653, 660, 670, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 977, 992, 33, 40, 46, 73, 80, 246, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 211, 372, 373, 380, 660, 670, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(51, SumMonoid(25287)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(18, SumMonoid(3549)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(17, SumMonoid(8470)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(8, SumMonoid(5901)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(8, SumMonoid(7367)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(5, SumMonoid(272)) }, Fingerprint { range: Range(88, 231), fp: EncodedCountingMonoid(5, SumMonoid(733)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 419), fp: EncodedCountingMonoid(4, SumMonoid(1438)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(5, SumMonoid(2392)) }, Fingerprint { range: Range(509, 602), fp: EncodedCountingMonoid(3, SumMonoid(1582)) }, Fingerprint { range: Range(602, 640), fp: EncodedCountingMonoid(3, SumMonoid(1838)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(88, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 602), items: [527], want_response: true }, ItemSet { range: Range(602, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 40, 46, 73, 80], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 301], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [], want_response: false }, ItemSet { range: Range(509, 527), items: [515, 524], want_response: false }, ItemSet { range: Range(527, 602), items: [543], want_response: false }, ItemSet { range: Range(602, 640), items: [602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 203), items: [136], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [], want_response: true }, ItemSet { range: Range(640, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 682), items: [674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 674), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(674, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 246, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 211, 372, 373, 380, 660, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (246, true), (301, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (515, true), (524, true), (543, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (88, true), (94, true), (136, true), (204, true), (211, true), (372, true), (373, true), (380, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 977, 992, 33, 40, 46, 73, 80, 246, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 211, 372, 373, 380, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 602, 604, 632, 653, 660, 674, 720, 748, 760, 856, 866, 888, 891, 901, 921, 931, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(50, SumMonoid(24457)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(18, SumMonoid(3549)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(17, SumMonoid(8470)) }, Fingerprint { range: Range(640, 888), fp: EncodedCountingMonoid(8, SumMonoid(5937)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(7, SumMonoid(6501)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 788), fp: EncodedCountingMonoid(11, SumMonoid(7823)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(5, SumMonoid(272)) }, Fingerprint { range: Range(88, 231), fp: EncodedCountingMonoid(5, SumMonoid(733)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 419), fp: EncodedCountingMonoid(4, SumMonoid(1438)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(5, SumMonoid(2392)) }, Fingerprint { range: Range(509, 602), fp: EncodedCountingMonoid(3, SumMonoid(1582)) }, Fingerprint { range: Range(602, 640), fp: EncodedCountingMonoid(3, SumMonoid(1838)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(720, 788), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(788, 888), items: [856, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(88, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }], item_sets: [ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 602), items: [527], want_response: true }, ItemSet { range: Range(602, 640), items: [624], want_response: true }, ItemSet { range: Range(772, 788), items: [772, 777], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [856, 866, 921, 931, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 40, 46, 73, 80], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 301], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [], want_response: false }, ItemSet { range: Range(509, 527), items: [515, 524], want_response: false }, ItemSet { range: Range(527, 602), items: [543], want_response: false }, ItemSet { range: Range(602, 640), items: [602, 604, 632], want_response: false }, ItemSet { range: Range(772, 788), items: [], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 203), items: [136], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [], want_response: true }, ItemSet { range: Range(640, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 682), items: [674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }], wants: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 772, 777, 897, 902], provide: [(856, true), (866, true), (921, true), (931, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 674), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(674, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }], wants: [33, 40, 46, 73, 80, 246, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 602, 604, 632, 888, 891, 901, 88, 94, 136, 204, 211, 372, 373, 380, 660, 674, 720, 748], provide: [(788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (772, true), (777, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 737, 742], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (246, true), (301, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (515, true), (524, true), (543, true), (602, true), (604, true), (632, true), (888, true), (891, true), (901, true), (88, true), (94, true), (136, true), (204, true), (211, true), (372, true), (373, true), (380, true), (660, true), (674, true), (720, true), (748, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (737, true), (742, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 602, 604, 632, 653, 660, 674, 720, 748, 760, 856, 866, 888, 891, 901, 921, 931, 977, 992} + [996, 10, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 772, 777, 897, 902, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 737, 742]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [856, 866, 921, 931, 977, 992, 33, 40, 46, 73, 80, 246, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 602, 604, 632, 888, 891, 901, 88, 94, 136, 204, 211, 372, 373, 380, 660, 674, 720, 748]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 136, 143, 153, 165, 167, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 277, 282, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 413, 419, 427, 439, 442, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 509, 515, 523, 524, 527, 543, 602, 604, 624, 632, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 748, 760, 772, 777, 788, 807, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 977, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 136, 143, 153, 165, 167, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 277, 282, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 413, 419, 427, 439, 442, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 509, 515, 523, 524, 527, 543, 602, 604, 624, 632, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 748, 760, 772, 777, 788, 807, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 977, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 33, 40, 43, 46, 73, 80, 88, 94, 102, 105, 136, 143, 153, 165, 167, 203, 204, 209, 211, 223, 227, 229, 231, 244, 246, 277, 282, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 413, 419, 427, 439, 442, 450, 458, 462, 466, 468, 473, 476, 477, 496, 500, 503, 509, 515, 523, 524, 527, 543, 602, 604, 624, 632, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 748, 760, 772, 777, 788, 807, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 977, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(51, SumMonoid(25287)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 419), fp: EncodedCountingMonoid(18, SumMonoid(3549)) }, Fingerprint { range: Range(419, 640), fp: EncodedCountingMonoid(17, SumMonoid(8470)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(8, SumMonoid(5901)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(8, SumMonoid(7367)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 231), fp: EncodedCountingMonoid(12, SumMonoid(1969)) }, Fingerprint { range: Range(231, 419), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(419, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 640), fp: EncodedCountingMonoid(4, SumMonoid(2183)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(5, SumMonoid(272)) }, Fingerprint { range: Range(88, 231), fp: EncodedCountingMonoid(5, SumMonoid(733)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 419), fp: EncodedCountingMonoid(4, SumMonoid(1438)) }, Fingerprint { range: Range(419, 466), fp: EncodedCountingMonoid(6, SumMonoid(2658)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(5, SumMonoid(2392)) }, Fingerprint { range: Range(509, 602), fp: EncodedCountingMonoid(3, SumMonoid(1582)) }, Fingerprint { range: Range(602, 640), fp: EncodedCountingMonoid(3, SumMonoid(1838)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(88, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 419), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(419, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(509, 527), items: [509, 523], want_response: true }, ItemSet { range: Range(527, 602), items: [527], want_response: true }, ItemSet { range: Range(602, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 40, 46, 73, 80], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 301], want_response: false }, ItemSet { range: Range(419, 466), items: [419, 427, 442, 450, 458, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477, 500], want_response: false }, ItemSet { range: Range(503, 509), items: [], want_response: false }, ItemSet { range: Range(509, 527), items: [515, 524], want_response: false }, ItemSet { range: Range(527, 602), items: [543], want_response: false }, ItemSet { range: Range(602, 640), items: [602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 203), items: [136], want_response: true }, ItemSet { range: Range(203, 231), items: [204, 211], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373, 380], want_response: true }, ItemSet { range: Range(382, 419), items: [], want_response: true }, ItemSet { range: Range(640, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 682), items: [674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 419), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 674), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(674, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 246, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 211, 372, 373, 380, 660, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (231, true), (244, true), (439, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (246, true), (301, true), (419, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (500, true), (515, true), (524, true), (543, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (88, true), (94, true), (136, true), (204, true), (211, true), (372, true), (373, true), (380, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 543, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 231, 244, 439, 468, 496, 503, 509, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 977, 992, 33, 40, 46, 73, 80, 246, 301, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 543, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 211, 372, 373, 380, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(50, SumMonoid(24744)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 380), fp: EncodedCountingMonoid(17, SumMonoid(3169)) }, Fingerprint { range: Range(380, 640), fp: EncodedCountingMonoid(17, SumMonoid(8307)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(8, SumMonoid(5901)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(8, SumMonoid(7367)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 227), fp: EncodedCountingMonoid(10, SumMonoid(1513)) }, Fingerprint { range: Range(227, 380), fp: EncodedCountingMonoid(10, SumMonoid(2882)) }, Fingerprint { range: Range(380, 496), fp: EncodedCountingMonoid(6, SumMonoid(2549)) }, Fingerprint { range: Range(496, 640), fp: EncodedCountingMonoid(6, SumMonoid(3182)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(5, SumMonoid(272)) }, Fingerprint { range: Range(88, 227), fp: EncodedCountingMonoid(5, SumMonoid(733)) }, Fingerprint { range: Range(227, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 380), fp: EncodedCountingMonoid(3, SumMonoid(1058)) }, Fingerprint { range: Range(380, 462), fp: EncodedCountingMonoid(6, SumMonoid(2576)) }, Fingerprint { range: Range(462, 496), fp: EncodedCountingMonoid(5, SumMonoid(2354)) }, Fingerprint { range: Range(496, 602), fp: EncodedCountingMonoid(3, SumMonoid(1539)) }, Fingerprint { range: Range(602, 640), fp: EncodedCountingMonoid(3, SumMonoid(1838)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(88, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 227), fp: EncodedCountingMonoid(4, SumMonoid(802)) }, Fingerprint { range: Range(227, 244), fp: EncodedCountingMonoid(3, SumMonoid(687)) }, Fingerprint { range: Range(244, 313), fp: EncodedCountingMonoid(3, SumMonoid(803)) }, Fingerprint { range: Range(380, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(496, 523), fp: EncodedCountingMonoid(3, SumMonoid(1508)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(313, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 380), items: [366, 371], want_response: true }, ItemSet { range: Range(439, 462), items: [439, 458], want_response: true }, ItemSet { range: Range(462, 496), items: [468], want_response: true }, ItemSet { range: Range(523, 602), items: [523, 527], want_response: true }, ItemSet { range: Range(602, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 40, 46, 73, 80], want_response: false }, ItemSet { range: Range(313, 366), items: [313], want_response: false }, ItemSet { range: Range(366, 380), items: [372, 373], want_response: false }, ItemSet { range: Range(439, 462), items: [442, 450, 458], want_response: false }, ItemSet { range: Range(462, 496), items: [462, 466, 473, 476, 477], want_response: false }, ItemSet { range: Range(523, 602), items: [524], want_response: false }, ItemSet { range: Range(602, 640), items: [602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 167), items: [136], want_response: true }, ItemSet { range: Range(167, 227), items: [204, 211], want_response: true }, ItemSet { range: Range(227, 244), items: [], want_response: true }, ItemSet { range: Range(244, 282), items: [246, 277], want_response: true }, ItemSet { range: Range(282, 313), items: [282, 301], want_response: true }, ItemSet { range: Range(380, 427), items: [380, 419], want_response: true }, ItemSet { range: Range(427, 439), items: [427], want_response: true }, ItemSet { range: Range(496, 523), items: [500, 515], want_response: true }, ItemSet { range: Range(640, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 682), items: [674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 468, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 227), items: [167, 203, 209, 223], want_response: false }, ItemSet { range: Range(227, 244), items: [227, 229, 231], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: false }, ItemSet { range: Range(282, 313), items: [282], want_response: false }, ItemSet { range: Range(380, 427), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(427, 439), items: [], want_response: false }, ItemSet { range: Range(496, 523), items: [496, 503, 509], want_response: false }, ItemSet { range: Range(640, 674), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(674, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 372, 373, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 211, 246, 301, 380, 419, 427, 500, 515, 660, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (342, true), (366, true), (371, true), (439, true), (468, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 496, 503, 509, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (372, true), (373, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (524, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (88, true), (94, true), (136, true), (204, true), (211, true), (246, true), (301, true), (380, true), (419, true), (427, true), (500, true), (515, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (496, true), (503, true), (509, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 458, 462, 466, 473, 476, 477, 500, 515, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 468, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 496, 503, 509, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 977, 992, 33, 40, 46, 73, 80, 372, 373, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 211, 246, 301, 380, 419, 427, 500, 515, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(49, SumMonoid(24286)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 380), fp: EncodedCountingMonoid(17, SumMonoid(3169)) }, Fingerprint { range: Range(380, 640), fp: EncodedCountingMonoid(16, SumMonoid(7849)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(8, SumMonoid(5901)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(8, SumMonoid(7367)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 227), fp: EncodedCountingMonoid(10, SumMonoid(1513)) }, Fingerprint { range: Range(227, 380), fp: EncodedCountingMonoid(10, SumMonoid(2882)) }, Fingerprint { range: Range(380, 496), fp: EncodedCountingMonoid(6, SumMonoid(2549)) }, Fingerprint { range: Range(496, 640), fp: EncodedCountingMonoid(6, SumMonoid(3182)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(5, SumMonoid(272)) }, Fingerprint { range: Range(88, 227), fp: EncodedCountingMonoid(5, SumMonoid(733)) }, Fingerprint { range: Range(227, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 380), fp: EncodedCountingMonoid(3, SumMonoid(1058)) }, Fingerprint { range: Range(380, 462), fp: EncodedCountingMonoid(5, SumMonoid(2118)) }, Fingerprint { range: Range(462, 496), fp: EncodedCountingMonoid(5, SumMonoid(2354)) }, Fingerprint { range: Range(496, 602), fp: EncodedCountingMonoid(3, SumMonoid(1539)) }, Fingerprint { range: Range(602, 640), fp: EncodedCountingMonoid(3, SumMonoid(1838)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(88, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 227), fp: EncodedCountingMonoid(4, SumMonoid(802)) }, Fingerprint { range: Range(227, 244), fp: EncodedCountingMonoid(3, SumMonoid(687)) }, Fingerprint { range: Range(244, 313), fp: EncodedCountingMonoid(3, SumMonoid(803)) }, Fingerprint { range: Range(380, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(496, 523), fp: EncodedCountingMonoid(3, SumMonoid(1508)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(313, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 380), items: [366, 371], want_response: true }, ItemSet { range: Range(439, 462), items: [439, 458], want_response: true }, ItemSet { range: Range(462, 496), items: [468], want_response: true }, ItemSet { range: Range(523, 602), items: [523, 527], want_response: true }, ItemSet { range: Range(602, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 40, 46, 73, 80], want_response: false }, ItemSet { range: Range(313, 366), items: [313], want_response: false }, ItemSet { range: Range(366, 380), items: [372, 373], want_response: false }, ItemSet { range: Range(439, 462), items: [442, 450], want_response: false }, ItemSet { range: Range(462, 496), items: [462, 466, 473, 476, 477], want_response: false }, ItemSet { range: Range(523, 602), items: [524], want_response: false }, ItemSet { range: Range(602, 640), items: [602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 167), items: [136], want_response: true }, ItemSet { range: Range(167, 227), items: [204, 211], want_response: true }, ItemSet { range: Range(227, 244), items: [], want_response: true }, ItemSet { range: Range(244, 282), items: [246, 277], want_response: true }, ItemSet { range: Range(282, 313), items: [282, 301], want_response: true }, ItemSet { range: Range(380, 427), items: [380, 419], want_response: true }, ItemSet { range: Range(427, 439), items: [427], want_response: true }, ItemSet { range: Range(496, 523), items: [500, 515], want_response: true }, ItemSet { range: Range(640, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 682), items: [674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 227), items: [167, 203, 209, 223], want_response: false }, ItemSet { range: Range(227, 244), items: [227, 229, 231], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: false }, ItemSet { range: Range(282, 313), items: [282], want_response: false }, ItemSet { range: Range(380, 427), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(427, 439), items: [], want_response: false }, ItemSet { range: Range(496, 523), items: [496, 503, 509], want_response: false }, ItemSet { range: Range(640, 674), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(674, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 372, 373, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 211, 246, 301, 380, 419, 427, 500, 515, 660, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (342, true), (366, true), (371, true), (439, true), (458, true), (468, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 496, 503, 509, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (372, true), (373, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (524, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (88, true), (94, true), (136, true), (204, true), (211, true), (246, true), (301, true), (380, true), (419, true), (427, true), (500, true), (515, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (496, true), (503, true), (509, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 136, 204, 211, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 496, 503, 509, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 977, 992, 33, 40, 46, 73, 80, 372, 373, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 211, 246, 301, 380, 419, 427, 500, 515, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 136, 204, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(48, SumMonoid(24075)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 380), fp: EncodedCountingMonoid(16, SumMonoid(2958)) }, Fingerprint { range: Range(380, 640), fp: EncodedCountingMonoid(16, SumMonoid(7849)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(8, SumMonoid(5901)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(8, SumMonoid(7367)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 227), fp: EncodedCountingMonoid(10, SumMonoid(1513)) }, Fingerprint { range: Range(227, 380), fp: EncodedCountingMonoid(10, SumMonoid(2882)) }, Fingerprint { range: Range(380, 496), fp: EncodedCountingMonoid(6, SumMonoid(2549)) }, Fingerprint { range: Range(496, 640), fp: EncodedCountingMonoid(6, SumMonoid(3182)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(5, SumMonoid(272)) }, Fingerprint { range: Range(88, 227), fp: EncodedCountingMonoid(4, SumMonoid(522)) }, Fingerprint { range: Range(227, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 380), fp: EncodedCountingMonoid(3, SumMonoid(1058)) }, Fingerprint { range: Range(380, 462), fp: EncodedCountingMonoid(5, SumMonoid(2118)) }, Fingerprint { range: Range(462, 496), fp: EncodedCountingMonoid(5, SumMonoid(2354)) }, Fingerprint { range: Range(496, 602), fp: EncodedCountingMonoid(3, SumMonoid(1539)) }, Fingerprint { range: Range(602, 640), fp: EncodedCountingMonoid(3, SumMonoid(1838)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(88, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 227), fp: EncodedCountingMonoid(4, SumMonoid(802)) }, Fingerprint { range: Range(227, 244), fp: EncodedCountingMonoid(3, SumMonoid(687)) }, Fingerprint { range: Range(244, 313), fp: EncodedCountingMonoid(3, SumMonoid(803)) }, Fingerprint { range: Range(380, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(496, 523), fp: EncodedCountingMonoid(3, SumMonoid(1508)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(313, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 380), items: [366, 371], want_response: true }, ItemSet { range: Range(439, 462), items: [439, 458], want_response: true }, ItemSet { range: Range(462, 496), items: [468], want_response: true }, ItemSet { range: Range(523, 602), items: [523, 527], want_response: true }, ItemSet { range: Range(602, 640), items: [624], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 856, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 40, 46, 73, 80], want_response: false }, ItemSet { range: Range(313, 366), items: [313], want_response: false }, ItemSet { range: Range(366, 380), items: [372, 373], want_response: false }, ItemSet { range: Range(439, 462), items: [442, 450], want_response: false }, ItemSet { range: Range(462, 496), items: [462, 466, 473, 476, 477], want_response: false }, ItemSet { range: Range(523, 602), items: [524], want_response: false }, ItemSet { range: Range(602, 640), items: [602, 604, 632], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 167), items: [136], want_response: true }, ItemSet { range: Range(167, 227), items: [204], want_response: true }, ItemSet { range: Range(227, 244), items: [], want_response: true }, ItemSet { range: Range(244, 282), items: [246, 277], want_response: true }, ItemSet { range: Range(282, 313), items: [282, 301], want_response: true }, ItemSet { range: Range(380, 427), items: [380, 419], want_response: true }, ItemSet { range: Range(427, 439), items: [427], want_response: true }, ItemSet { range: Range(496, 523), items: [500, 515], want_response: true }, ItemSet { range: Range(640, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 682), items: [674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 523, 527, 624, 737, 742, 879, 897], provide: [(830, true), (856, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 227), items: [167, 203, 209, 223], want_response: false }, ItemSet { range: Range(227, 244), items: [227, 229, 231], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: false }, ItemSet { range: Range(282, 313), items: [282], want_response: false }, ItemSet { range: Range(380, 427), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(427, 439), items: [], want_response: false }, ItemSet { range: Range(496, 523), items: [496, 503, 509], want_response: false }, ItemSet { range: Range(640, 674), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(674, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 372, 373, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 246, 301, 380, 419, 427, 500, 515, 660, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (342, true), (366, true), (371, true), (439, true), (458, true), (468, true), (523, true), (527, true), (624, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 496, 503, 509, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (372, true), (373, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (524, true), (602, true), (604, true), (632, true), (720, true), (748, true), (888, true), (891, true), (88, true), (94, true), (136, true), (204, true), (246, true), (301, true), (380, true), (419, true), (427, true), (500, true), (515, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (496, true), (503, true), (509, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 136, 204, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 515, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 977, 992} + [996, 10, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 523, 527, 624, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 496, 503, 509, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [830, 856, 977, 992, 33, 40, 46, 73, 80, 372, 373, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 720, 748, 888, 891, 88, 94, 136, 204, 246, 301, 380, 419, 427, 500, 515, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 136, 204, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 977, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(47, SumMonoid(23560)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 380), fp: EncodedCountingMonoid(16, SumMonoid(2958)) }, Fingerprint { range: Range(380, 640), fp: EncodedCountingMonoid(15, SumMonoid(7334)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(8, SumMonoid(5901)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(8, SumMonoid(7367)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 227), fp: EncodedCountingMonoid(10, SumMonoid(1513)) }, Fingerprint { range: Range(227, 380), fp: EncodedCountingMonoid(10, SumMonoid(2882)) }, Fingerprint { range: Range(380, 496), fp: EncodedCountingMonoid(6, SumMonoid(2549)) }, Fingerprint { range: Range(496, 640), fp: EncodedCountingMonoid(6, SumMonoid(3182)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(5, SumMonoid(272)) }, Fingerprint { range: Range(88, 227), fp: EncodedCountingMonoid(4, SumMonoid(522)) }, Fingerprint { range: Range(227, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 380), fp: EncodedCountingMonoid(3, SumMonoid(1058)) }, Fingerprint { range: Range(380, 462), fp: EncodedCountingMonoid(5, SumMonoid(2118)) }, Fingerprint { range: Range(462, 496), fp: EncodedCountingMonoid(5, SumMonoid(2354)) }, Fingerprint { range: Range(496, 604), fp: EncodedCountingMonoid(3, SumMonoid(1626)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(604, 640), items: [604, 632], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [977, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(88, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 227), fp: EncodedCountingMonoid(4, SumMonoid(802)) }, Fingerprint { range: Range(227, 244), fp: EncodedCountingMonoid(3, SumMonoid(687)) }, Fingerprint { range: Range(244, 313), fp: EncodedCountingMonoid(3, SumMonoid(803)) }, Fingerprint { range: Range(380, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(496, 523), fp: EncodedCountingMonoid(3, SumMonoid(1508)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(604, 640), items: [624], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(313, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 380), items: [366, 371], want_response: true }, ItemSet { range: Range(439, 462), items: [439, 458], want_response: true }, ItemSet { range: Range(462, 496), items: [468], want_response: true }, ItemSet { range: Range(523, 604), items: [523, 527], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [604, 632, 830, 856, 977, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 40, 46, 73, 80], want_response: false }, ItemSet { range: Range(313, 366), items: [313], want_response: false }, ItemSet { range: Range(366, 380), items: [372, 373], want_response: false }, ItemSet { range: Range(439, 462), items: [442, 450], want_response: false }, ItemSet { range: Range(462, 496), items: [462, 466, 473, 476, 477], want_response: false }, ItemSet { range: Range(523, 604), items: [524, 602], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 167), items: [136], want_response: true }, ItemSet { range: Range(167, 227), items: [204], want_response: true }, ItemSet { range: Range(227, 244), items: [], want_response: true }, ItemSet { range: Range(244, 282), items: [246, 277], want_response: true }, ItemSet { range: Range(282, 313), items: [282, 301], want_response: true }, ItemSet { range: Range(380, 427), items: [380, 419], want_response: true }, ItemSet { range: Range(427, 439), items: [427], want_response: true }, ItemSet { range: Range(496, 523), items: [500], want_response: true }, ItemSet { range: Range(640, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 682), items: [674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 523, 527, 737, 742, 879, 897], provide: [(604, true), (632, true), (830, true), (856, true), (977, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 227), items: [167, 203, 209, 223], want_response: false }, ItemSet { range: Range(227, 244), items: [227, 229, 231], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: false }, ItemSet { range: Range(282, 313), items: [282], want_response: false }, ItemSet { range: Range(380, 427), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(427, 439), items: [], want_response: false }, ItemSet { range: Range(496, 523), items: [496, 503, 509], want_response: false }, ItemSet { range: Range(640, 674), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(674, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 372, 373, 442, 450, 462, 466, 473, 476, 477, 524, 602, 720, 748, 888, 891, 88, 94, 136, 204, 246, 301, 380, 419, 427, 500, 660, 674, 866], provide: [(624, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (342, true), (366, true), (371, true), (439, true), (458, true), (468, true), (523, true), (527, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 496, 503, 509, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (372, true), (373, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (524, true), (602, true), (720, true), (748, true), (888, true), (891, true), (88, true), (94, true), (136, true), (204, true), (246, true), (301, true), (380, true), (419, true), (427, true), (500, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (496, true), (503, true), (509, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 136, 204, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 977, 992} + [996, 10, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 523, 527, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 496, 503, 509, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [604, 632, 830, 856, 977, 992, 33, 40, 46, 73, 80, 372, 373, 442, 450, 462, 466, 473, 476, 477, 524, 602, 720, 748, 888, 891, 88, 94, 136, 204, 246, 301, 380, 419, 427, 500, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 40, 46, 73, 80, 88, 94, 136, 204, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(46, SumMonoid(22583)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 380), fp: EncodedCountingMonoid(16, SumMonoid(2958)) }, Fingerprint { range: Range(380, 640), fp: EncodedCountingMonoid(15, SumMonoid(7334)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(8, SumMonoid(5901)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 227), fp: EncodedCountingMonoid(10, SumMonoid(1513)) }, Fingerprint { range: Range(227, 380), fp: EncodedCountingMonoid(10, SumMonoid(2882)) }, Fingerprint { range: Range(380, 496), fp: EncodedCountingMonoid(6, SumMonoid(2549)) }, Fingerprint { range: Range(496, 640), fp: EncodedCountingMonoid(6, SumMonoid(3182)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(5, SumMonoid(272)) }, Fingerprint { range: Range(88, 227), fp: EncodedCountingMonoid(4, SumMonoid(522)) }, Fingerprint { range: Range(227, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 380), fp: EncodedCountingMonoid(3, SumMonoid(1058)) }, Fingerprint { range: Range(380, 462), fp: EncodedCountingMonoid(5, SumMonoid(2118)) }, Fingerprint { range: Range(462, 496), fp: EncodedCountingMonoid(5, SumMonoid(2354)) }, Fingerprint { range: Range(496, 604), fp: EncodedCountingMonoid(3, SumMonoid(1626)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(604, 640), items: [604, 632], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(88, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 227), fp: EncodedCountingMonoid(4, SumMonoid(802)) }, Fingerprint { range: Range(227, 244), fp: EncodedCountingMonoid(3, SumMonoid(687)) }, Fingerprint { range: Range(244, 313), fp: EncodedCountingMonoid(3, SumMonoid(803)) }, Fingerprint { range: Range(380, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(496, 523), fp: EncodedCountingMonoid(3, SumMonoid(1508)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(604, 640), items: [624], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(313, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 380), items: [366, 371], want_response: true }, ItemSet { range: Range(439, 462), items: [439, 458], want_response: true }, ItemSet { range: Range(462, 496), items: [468], want_response: true }, ItemSet { range: Range(523, 604), items: [523, 527], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [604, 632, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 40, 46, 73, 80], want_response: false }, ItemSet { range: Range(313, 366), items: [313], want_response: false }, ItemSet { range: Range(366, 380), items: [372, 373], want_response: false }, ItemSet { range: Range(439, 462), items: [442, 450], want_response: false }, ItemSet { range: Range(462, 496), items: [462, 466, 473, 476, 477], want_response: false }, ItemSet { range: Range(523, 604), items: [524, 602], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 167), items: [136], want_response: true }, ItemSet { range: Range(167, 227), items: [204], want_response: true }, ItemSet { range: Range(227, 244), items: [], want_response: true }, ItemSet { range: Range(244, 282), items: [246, 277], want_response: true }, ItemSet { range: Range(282, 313), items: [282, 301], want_response: true }, ItemSet { range: Range(380, 427), items: [380, 419], want_response: true }, ItemSet { range: Range(427, 439), items: [427], want_response: true }, ItemSet { range: Range(496, 523), items: [500], want_response: true }, ItemSet { range: Range(640, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 682), items: [674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 523, 527, 737, 742, 879, 897], provide: [(604, true), (632, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 227), items: [167, 203, 209, 223], want_response: false }, ItemSet { range: Range(227, 244), items: [227, 229, 231], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: false }, ItemSet { range: Range(282, 313), items: [282], want_response: false }, ItemSet { range: Range(380, 427), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(427, 439), items: [], want_response: false }, ItemSet { range: Range(496, 523), items: [496, 503, 509], want_response: false }, ItemSet { range: Range(640, 674), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(674, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 40, 46, 73, 80, 372, 373, 442, 450, 462, 466, 473, 476, 477, 524, 602, 720, 748, 888, 891, 88, 94, 136, 204, 246, 301, 380, 419, 427, 500, 660, 674, 866], provide: [(624, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (342, true), (366, true), (371, true), (439, true), (458, true), (468, true), (523, true), (527, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 496, 503, 509, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (40, true), (46, true), (73, true), (80, true), (372, true), (373, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (524, true), (602, true), (720, true), (748, true), (888, true), (891, true), (88, true), (94, true), (136, true), (204, true), (246, true), (301, true), (380, true), (419, true), (427, true), (500, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (496, true), (503, true), (509, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 40, 46, 73, 80, 88, 94, 136, 204, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 523, 527, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 496, 503, 509, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [604, 632, 830, 856, 992, 33, 40, 46, 73, 80, 372, 373, 442, 450, 462, 466, 473, 476, 477, 524, 602, 720, 748, 888, 891, 88, 94, 136, 204, 246, 301, 380, 419, 427, 500, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 46, 73, 80, 88, 94, 136, 204, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(45, SumMonoid(22543)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 380), fp: EncodedCountingMonoid(15, SumMonoid(2918)) }, Fingerprint { range: Range(380, 640), fp: EncodedCountingMonoid(15, SumMonoid(7334)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(8, SumMonoid(5901)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 227), fp: EncodedCountingMonoid(10, SumMonoid(1513)) }, Fingerprint { range: Range(227, 380), fp: EncodedCountingMonoid(10, SumMonoid(2882)) }, Fingerprint { range: Range(380, 496), fp: EncodedCountingMonoid(6, SumMonoid(2549)) }, Fingerprint { range: Range(496, 640), fp: EncodedCountingMonoid(6, SumMonoid(3182)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(4, SumMonoid(232)) }, Fingerprint { range: Range(88, 227), fp: EncodedCountingMonoid(4, SumMonoid(522)) }, Fingerprint { range: Range(227, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 380), fp: EncodedCountingMonoid(3, SumMonoid(1058)) }, Fingerprint { range: Range(380, 462), fp: EncodedCountingMonoid(5, SumMonoid(2118)) }, Fingerprint { range: Range(462, 496), fp: EncodedCountingMonoid(5, SumMonoid(2354)) }, Fingerprint { range: Range(496, 604), fp: EncodedCountingMonoid(3, SumMonoid(1626)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(604, 640), items: [604, 632], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(88, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 227), fp: EncodedCountingMonoid(4, SumMonoid(802)) }, Fingerprint { range: Range(227, 244), fp: EncodedCountingMonoid(3, SumMonoid(687)) }, Fingerprint { range: Range(244, 313), fp: EncodedCountingMonoid(3, SumMonoid(803)) }, Fingerprint { range: Range(380, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(496, 523), fp: EncodedCountingMonoid(3, SumMonoid(1508)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(604, 640), items: [624], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(313, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 380), items: [366, 371], want_response: true }, ItemSet { range: Range(439, 462), items: [439, 458], want_response: true }, ItemSet { range: Range(462, 496), items: [468], want_response: true }, ItemSet { range: Range(523, 604), items: [523, 527], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [604, 632, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 46, 73, 80], want_response: false }, ItemSet { range: Range(313, 366), items: [313], want_response: false }, ItemSet { range: Range(366, 380), items: [372, 373], want_response: false }, ItemSet { range: Range(439, 462), items: [442, 450], want_response: false }, ItemSet { range: Range(462, 496), items: [462, 466, 473, 476, 477], want_response: false }, ItemSet { range: Range(523, 604), items: [524, 602], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 167), items: [136], want_response: true }, ItemSet { range: Range(167, 227), items: [204], want_response: true }, ItemSet { range: Range(227, 244), items: [], want_response: true }, ItemSet { range: Range(244, 282), items: [246, 277], want_response: true }, ItemSet { range: Range(282, 313), items: [282, 301], want_response: true }, ItemSet { range: Range(380, 427), items: [380, 419], want_response: true }, ItemSet { range: Range(427, 439), items: [427], want_response: true }, ItemSet { range: Range(496, 523), items: [500], want_response: true }, ItemSet { range: Range(640, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 682), items: [674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 523, 527, 737, 742, 879, 897], provide: [(604, true), (632, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 227), items: [167, 203, 209, 223], want_response: false }, ItemSet { range: Range(227, 244), items: [227, 229, 231], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: false }, ItemSet { range: Range(282, 313), items: [282], want_response: false }, ItemSet { range: Range(380, 427), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(427, 439), items: [], want_response: false }, ItemSet { range: Range(496, 523), items: [496, 503, 509], want_response: false }, ItemSet { range: Range(640, 674), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(674, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 46, 73, 80, 372, 373, 442, 450, 462, 466, 473, 476, 477, 524, 602, 720, 748, 888, 891, 88, 94, 136, 204, 246, 301, 380, 419, 427, 500, 660, 674, 866], provide: [(624, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (342, true), (366, true), (371, true), (439, true), (458, true), (468, true), (523, true), (527, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 496, 503, 509, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (46, true), (73, true), (80, true), (372, true), (373, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (524, true), (602, true), (720, true), (748, true), (888, true), (891, true), (88, true), (94, true), (136, true), (204, true), (246, true), (301, true), (380, true), (419, true), (427, true), (500, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (496, true), (503, true), (509, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 46, 73, 80, 88, 94, 136, 204, 246, 277, 282, 301, 313, 372, 373, 380, 419, 427, 442, 450, 462, 466, 473, 476, 477, 500, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 523, 527, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 496, 503, 509, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [604, 632, 830, 856, 992, 33, 46, 73, 80, 372, 373, 442, 450, 462, 466, 473, 476, 477, 524, 602, 720, 748, 888, 891, 88, 94, 136, 204, 246, 301, 380, 419, 427, 500, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 46, 73, 80, 88, 94, 136, 204, 246, 277, 282, 301, 313, 372, 373, 380, 427, 442, 450, 462, 466, 473, 476, 477, 500, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(44, SumMonoid(22124)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 380), fp: EncodedCountingMonoid(15, SumMonoid(2918)) }, Fingerprint { range: Range(380, 640), fp: EncodedCountingMonoid(14, SumMonoid(6915)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(8, SumMonoid(5901)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 227), fp: EncodedCountingMonoid(10, SumMonoid(1513)) }, Fingerprint { range: Range(227, 380), fp: EncodedCountingMonoid(10, SumMonoid(2882)) }, Fingerprint { range: Range(380, 496), fp: EncodedCountingMonoid(6, SumMonoid(2549)) }, Fingerprint { range: Range(496, 640), fp: EncodedCountingMonoid(6, SumMonoid(3182)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(4, SumMonoid(232)) }, Fingerprint { range: Range(88, 227), fp: EncodedCountingMonoid(4, SumMonoid(522)) }, Fingerprint { range: Range(227, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 380), fp: EncodedCountingMonoid(3, SumMonoid(1058)) }, Fingerprint { range: Range(380, 466), fp: EncodedCountingMonoid(5, SumMonoid(2161)) }, Fingerprint { range: Range(466, 496), fp: EncodedCountingMonoid(4, SumMonoid(1892)) }, Fingerprint { range: Range(496, 604), fp: EncodedCountingMonoid(3, SumMonoid(1626)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(604, 640), items: [604, 632], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(88, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 227), fp: EncodedCountingMonoid(4, SumMonoid(802)) }, Fingerprint { range: Range(227, 244), fp: EncodedCountingMonoid(3, SumMonoid(687)) }, Fingerprint { range: Range(244, 313), fp: EncodedCountingMonoid(3, SumMonoid(803)) }, Fingerprint { range: Range(380, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(496, 523), fp: EncodedCountingMonoid(3, SumMonoid(1508)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(604, 640), items: [624], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(313, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 380), items: [366, 371], want_response: true }, ItemSet { range: Range(439, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 496), items: [468], want_response: true }, ItemSet { range: Range(523, 604), items: [523, 527], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [604, 632, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 46, 73, 80], want_response: false }, ItemSet { range: Range(313, 366), items: [313], want_response: false }, ItemSet { range: Range(366, 380), items: [372, 373], want_response: false }, ItemSet { range: Range(439, 466), items: [442, 450, 462], want_response: false }, ItemSet { range: Range(466, 496), items: [466, 473, 476, 477], want_response: false }, ItemSet { range: Range(523, 604), items: [524, 602], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 167), items: [136], want_response: true }, ItemSet { range: Range(167, 227), items: [204], want_response: true }, ItemSet { range: Range(227, 244), items: [], want_response: true }, ItemSet { range: Range(244, 282), items: [246, 277], want_response: true }, ItemSet { range: Range(282, 313), items: [282, 301], want_response: true }, ItemSet { range: Range(380, 439), items: [380, 427], want_response: true }, ItemSet { range: Range(496, 523), items: [500], want_response: true }, ItemSet { range: Range(640, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 682), items: [674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 523, 527, 737, 742, 879, 897], provide: [(604, true), (632, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 227), items: [167, 203, 209, 223], want_response: false }, ItemSet { range: Range(227, 244), items: [227, 229, 231], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: false }, ItemSet { range: Range(282, 313), items: [282], want_response: false }, ItemSet { range: Range(380, 439), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(496, 523), items: [496, 503, 509], want_response: false }, ItemSet { range: Range(640, 674), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(674, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 46, 73, 80, 372, 373, 442, 450, 462, 466, 473, 476, 477, 524, 602, 720, 748, 888, 891, 88, 94, 136, 204, 246, 301, 380, 427, 500, 660, 674, 866], provide: [(624, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (342, true), (366, true), (371, true), (439, true), (458, true), (468, true), (523, true), (527, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 496, 503, 509, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (46, true), (73, true), (80, true), (372, true), (373, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (524, true), (602, true), (720, true), (748, true), (888, true), (891, true), (88, true), (94, true), (136, true), (204, true), (246, true), (301, true), (380, true), (427, true), (500, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (496, true), (503, true), (509, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 46, 73, 80, 88, 94, 136, 204, 246, 277, 282, 301, 313, 372, 373, 380, 427, 442, 450, 462, 466, 473, 476, 477, 500, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 523, 527, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 496, 503, 509, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [604, 632, 830, 856, 992, 33, 46, 73, 80, 372, 373, 442, 450, 462, 466, 473, 476, 477, 524, 602, 720, 748, 888, 891, 88, 94, 136, 204, 246, 301, 380, 427, 500, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 46, 73, 80, 88, 94, 136, 204, 246, 277, 282, 301, 313, 372, 373, 380, 427, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(43, SumMonoid(21624)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 373), fp: EncodedCountingMonoid(14, SumMonoid(2545)) }, Fingerprint { range: Range(373, 640), fp: EncodedCountingMonoid(14, SumMonoid(6788)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(8, SumMonoid(5901)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 227), fp: EncodedCountingMonoid(10, SumMonoid(1513)) }, Fingerprint { range: Range(227, 373), fp: EncodedCountingMonoid(10, SumMonoid(2882)) }, Fingerprint { range: Range(373, 496), fp: EncodedCountingMonoid(6, SumMonoid(2549)) }, Fingerprint { range: Range(496, 640), fp: EncodedCountingMonoid(6, SumMonoid(3182)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(4, SumMonoid(232)) }, Fingerprint { range: Range(88, 227), fp: EncodedCountingMonoid(4, SumMonoid(522)) }, Fingerprint { range: Range(227, 301), fp: EncodedCountingMonoid(3, SumMonoid(805)) }, Fingerprint { range: Range(301, 373), fp: EncodedCountingMonoid(3, SumMonoid(986)) }, Fingerprint { range: Range(373, 462), fp: EncodedCountingMonoid(5, SumMonoid(2072)) }, Fingerprint { range: Range(462, 496), fp: EncodedCountingMonoid(5, SumMonoid(2354)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(496, 604), items: [524, 602], want_response: true }, ItemSet { range: Range(604, 640), items: [604, 632], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(88, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 227), fp: EncodedCountingMonoid(4, SumMonoid(802)) }, Fingerprint { range: Range(227, 244), fp: EncodedCountingMonoid(3, SumMonoid(687)) }, Fingerprint { range: Range(244, 301), fp: EncodedCountingMonoid(3, SumMonoid(803)) }, Fingerprint { range: Range(373, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(496, 604), items: [496, 503, 509, 523, 527], want_response: false }, ItemSet { range: Range(604, 640), items: [624], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(301, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 373), items: [366, 371], want_response: true }, ItemSet { range: Range(439, 462), items: [439, 458], want_response: true }, ItemSet { range: Range(462, 496), items: [468], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [524, 602, 604, 632, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 46, 73, 80], want_response: false }, ItemSet { range: Range(301, 366), items: [301, 313], want_response: false }, ItemSet { range: Range(366, 373), items: [372], want_response: false }, ItemSet { range: Range(439, 462), items: [442, 450], want_response: false }, ItemSet { range: Range(462, 496), items: [462, 466, 473, 476, 477], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 167), items: [136], want_response: true }, ItemSet { range: Range(167, 227), items: [204], want_response: true }, ItemSet { range: Range(227, 244), items: [], want_response: true }, ItemSet { range: Range(244, 282), items: [246, 277], want_response: true }, ItemSet { range: Range(282, 301), items: [282], want_response: true }, ItemSet { range: Range(373, 427), items: [373, 380], want_response: true }, ItemSet { range: Range(427, 439), items: [427], want_response: true }, ItemSet { range: Range(640, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 682), items: [674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 737, 742, 879, 897], provide: [(524, true), (602, true), (604, true), (632, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 227), items: [167, 203, 209, 223], want_response: false }, ItemSet { range: Range(227, 244), items: [227, 229, 231], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: false }, ItemSet { range: Range(282, 301), items: [282], want_response: false }, ItemSet { range: Range(373, 427), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(427, 439), items: [], want_response: false }, ItemSet { range: Range(640, 674), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(674, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 46, 73, 80, 301, 372, 442, 450, 462, 466, 473, 476, 477, 720, 748, 888, 891, 88, 94, 136, 204, 246, 373, 380, 427, 660, 674, 866], provide: [(496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (342, true), (366, true), (371, true), (439, true), (458, true), (468, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (46, true), (73, true), (80, true), (301, true), (372, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (720, true), (748, true), (888, true), (891, true), (88, true), (94, true), (136, true), (204, true), (246, true), (373, true), (380, true), (427, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 46, 73, 80, 88, 94, 136, 204, 246, 277, 282, 301, 313, 372, 373, 380, 427, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [524, 602, 604, 632, 830, 856, 992, 33, 46, 73, 80, 301, 372, 442, 450, 462, 466, 473, 476, 477, 720, 748, 888, 891, 88, 94, 136, 204, 246, 373, 380, 427, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 46, 73, 80, 88, 94, 136, 204, 246, 277, 282, 301, 313, 372, 373, 380, 427, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(42, SumMonoid(20736)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 373), fp: EncodedCountingMonoid(14, SumMonoid(2545)) }, Fingerprint { range: Range(373, 640), fp: EncodedCountingMonoid(14, SumMonoid(6788)) }, Fingerprint { range: Range(640, 856), fp: EncodedCountingMonoid(7, SumMonoid(5045)) }, Fingerprint { range: Range(856, 993), fp: EncodedCountingMonoid(7, SumMonoid(6358)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 227), fp: EncodedCountingMonoid(10, SumMonoid(1513)) }, Fingerprint { range: Range(227, 373), fp: EncodedCountingMonoid(10, SumMonoid(2882)) }, Fingerprint { range: Range(373, 496), fp: EncodedCountingMonoid(6, SumMonoid(2549)) }, Fingerprint { range: Range(496, 640), fp: EncodedCountingMonoid(6, SumMonoid(3182)) }, Fingerprint { range: Range(640, 760), fp: EncodedCountingMonoid(8, SumMonoid(5514)) }, Fingerprint { range: Range(760, 856), fp: EncodedCountingMonoid(8, SumMonoid(6443)) }, Fingerprint { range: Range(856, 926), fp: EncodedCountingMonoid(8, SumMonoid(7074)) }, Fingerprint { range: Range(926, 993), fp: EncodedCountingMonoid(8, SumMonoid(7682)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(4, SumMonoid(232)) }, Fingerprint { range: Range(88, 227), fp: EncodedCountingMonoid(4, SumMonoid(522)) }, Fingerprint { range: Range(227, 301), fp: EncodedCountingMonoid(3, SumMonoid(805)) }, Fingerprint { range: Range(301, 373), fp: EncodedCountingMonoid(3, SumMonoid(986)) }, Fingerprint { range: Range(373, 462), fp: EncodedCountingMonoid(5, SumMonoid(2072)) }, Fingerprint { range: Range(462, 496), fp: EncodedCountingMonoid(5, SumMonoid(2354)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(856, 901), fp: EncodedCountingMonoid(3, SumMonoid(2613)) }], item_sets: [ItemSet { range: Range(496, 604), items: [524, 602], want_response: true }, ItemSet { range: Range(604, 640), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: true }, ItemSet { range: Range(760, 856), items: [760, 830], want_response: true }, ItemSet { range: Range(901, 926), items: [901, 921], want_response: true }, ItemSet { range: Range(926, 993), items: [931, 992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(88, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 227), fp: EncodedCountingMonoid(4, SumMonoid(802)) }, Fingerprint { range: Range(227, 244), fp: EncodedCountingMonoid(3, SumMonoid(687)) }, Fingerprint { range: Range(244, 301), fp: EncodedCountingMonoid(3, SumMonoid(803)) }, Fingerprint { range: Range(373, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(856, 873), fp: EncodedCountingMonoid(3, SumMonoid(2598)) }, Fingerprint { range: Range(873, 901), fp: EncodedCountingMonoid(3, SumMonoid(2649)) }], item_sets: [ItemSet { range: Range(496, 604), items: [496, 503, 509, 523, 527], want_response: false }, ItemSet { range: Range(604, 640), items: [624], want_response: false }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: false }, ItemSet { range: Range(760, 856), items: [760, 772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: false }, ItemSet { range: Range(926, 993), items: [926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(301, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 373), items: [366, 371], want_response: true }, ItemSet { range: Range(439, 462), items: [439, 458], want_response: true }, ItemSet { range: Range(462, 496), items: [468], want_response: true }], wants: [524, 602, 604, 632, 720, 748, 830, 901, 921, 931, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 46, 73, 80], want_response: false }, ItemSet { range: Range(301, 366), items: [301, 313], want_response: false }, ItemSet { range: Range(366, 373), items: [372], want_response: false }, ItemSet { range: Range(439, 462), items: [442, 450], want_response: false }, ItemSet { range: Range(462, 496), items: [462, 466, 473, 476, 477], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 167), items: [136], want_response: true }, ItemSet { range: Range(167, 227), items: [204], want_response: true }, ItemSet { range: Range(227, 244), items: [], want_response: true }, ItemSet { range: Range(244, 282), items: [246, 277], want_response: true }, ItemSet { range: Range(282, 301), items: [282], want_response: true }, ItemSet { range: Range(373, 427), items: [373, 380], want_response: true }, ItemSet { range: Range(427, 439), items: [427], want_response: true }, ItemSet { range: Range(640, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 682), items: [674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(856, 873), items: [856, 866], want_response: true }, ItemSet { range: Range(873, 901), items: [891], want_response: true }], wants: [496, 503, 509, 523, 527, 624, 737, 742, 772, 777, 788, 807, 838, 847, 854, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468], provide: [(524, true), (602, true), (604, true), (632, true), (720, true), (748, true), (830, true), (901, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 227), items: [167, 203, 209, 223], want_response: false }, ItemSet { range: Range(227, 244), items: [227, 229, 231], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: false }, ItemSet { range: Range(282, 301), items: [282], want_response: false }, ItemSet { range: Range(373, 427), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(427, 439), items: [], want_response: false }, ItemSet { range: Range(640, 674), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(674, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(856, 873), items: [862, 867, 869], want_response: false }, ItemSet { range: Range(873, 901), items: [873, 879, 897], want_response: false }], wants: [33, 46, 73, 80, 301, 372, 442, 450, 462, 466, 473, 476, 477, 88, 94, 136, 204, 246, 373, 380, 427, 660, 674, 856, 866, 891], provide: [(496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (342, true), (366, true), (371, true), (439, true), (458, true), (468, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 640, 666, 682, 689, 705, 862, 867, 869, 873, 879, 897], provide: [(33, true), (46, true), (73, true), (80, true), (301, true), (372, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (88, true), (94, true), (136, true), (204, true), (246, true), (373, true), (380, true), (427, true), (660, true), (674, true), (856, true), (866, true), (891, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 46, 73, 80, 88, 94, 136, 204, 246, 277, 282, 301, 313, 372, 373, 380, 427, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 891, 901, 921, 931, 992} + [996, 10, 496, 503, 509, 523, 527, 624, 737, 742, 772, 777, 788, 807, 838, 847, 854, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 640, 666, 682, 689, 705, 862, 867, 869, 873, 879, 897]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [524, 602, 604, 632, 720, 748, 830, 901, 921, 931, 992, 33, 46, 73, 80, 301, 372, 442, 450, 462, 466, 473, 476, 477, 88, 94, 136, 204, 246, 373, 380, 427, 660, 674, 856, 866, 891]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 33, 43, 46, 73, 80, 88, 94, 102, 105, 136, 143, 153, 165, 167, 203, 204, 209, 223, 227, 229, 231, 244, 246, 277, 282, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 413, 427, 439, 442, 450, 458, 462, 466, 468, 473, 476, 477, 496, 503, 509, 523, 524, 527, 602, 604, 624, 632, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 33, 43, 46, 73, 80, 88, 94, 102, 105, 136, 143, 153, 165, 167, 203, 204, 209, 223, 227, 229, 231, 244, 246, 277, 282, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 413, 427, 439, 442, 450, 458, 462, 466, 468, 473, 476, 477, 496, 503, 509, 523, 524, 527, 602, 604, 624, 632, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 33, 43, 46, 73, 80, 88, 94, 102, 105, 136, 143, 153, 165, 167, 203, 204, 209, 223, 227, 229, 231, 244, 246, 277, 282, 301, 313, 342, 366, 371, 372, 373, 380, 382, 389, 413, 427, 439, 442, 450, 458, 462, 466, 468, 473, 476, 477, 496, 503, 509, 523, 524, 527, 602, 604, 624, 632, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 748, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 46, 73, 80, 88, 94, 136, 204, 246, 277, 282, 301, 313, 372, 373, 380, 427, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(43, SumMonoid(21624)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 373), fp: EncodedCountingMonoid(14, SumMonoid(2545)) }, Fingerprint { range: Range(373, 640), fp: EncodedCountingMonoid(14, SumMonoid(6788)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(8, SumMonoid(5901)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 227), fp: EncodedCountingMonoid(10, SumMonoid(1513)) }, Fingerprint { range: Range(227, 373), fp: EncodedCountingMonoid(10, SumMonoid(2882)) }, Fingerprint { range: Range(373, 496), fp: EncodedCountingMonoid(6, SumMonoid(2549)) }, Fingerprint { range: Range(496, 640), fp: EncodedCountingMonoid(6, SumMonoid(3182)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(4, SumMonoid(232)) }, Fingerprint { range: Range(88, 227), fp: EncodedCountingMonoid(4, SumMonoid(522)) }, Fingerprint { range: Range(227, 301), fp: EncodedCountingMonoid(3, SumMonoid(805)) }, Fingerprint { range: Range(301, 373), fp: EncodedCountingMonoid(3, SumMonoid(986)) }, Fingerprint { range: Range(373, 462), fp: EncodedCountingMonoid(5, SumMonoid(2072)) }, Fingerprint { range: Range(462, 496), fp: EncodedCountingMonoid(5, SumMonoid(2354)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(496, 604), items: [524, 602], want_response: true }, ItemSet { range: Range(604, 640), items: [604, 632], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(88, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 227), fp: EncodedCountingMonoid(4, SumMonoid(802)) }, Fingerprint { range: Range(227, 244), fp: EncodedCountingMonoid(3, SumMonoid(687)) }, Fingerprint { range: Range(244, 301), fp: EncodedCountingMonoid(3, SumMonoid(803)) }, Fingerprint { range: Range(373, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(496, 604), items: [496, 503, 509, 523, 527], want_response: false }, ItemSet { range: Range(604, 640), items: [624], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(301, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 373), items: [366, 371], want_response: true }, ItemSet { range: Range(439, 462), items: [439, 458], want_response: true }, ItemSet { range: Range(462, 496), items: [468], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [524, 602, 604, 632, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 46, 73, 80], want_response: false }, ItemSet { range: Range(301, 366), items: [301, 313], want_response: false }, ItemSet { range: Range(366, 373), items: [372], want_response: false }, ItemSet { range: Range(439, 462), items: [442, 450], want_response: false }, ItemSet { range: Range(462, 496), items: [462, 466, 473, 476, 477], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 167), items: [136], want_response: true }, ItemSet { range: Range(167, 227), items: [204], want_response: true }, ItemSet { range: Range(227, 244), items: [], want_response: true }, ItemSet { range: Range(244, 282), items: [246, 277], want_response: true }, ItemSet { range: Range(282, 301), items: [282], want_response: true }, ItemSet { range: Range(373, 427), items: [373, 380], want_response: true }, ItemSet { range: Range(427, 439), items: [427], want_response: true }, ItemSet { range: Range(640, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 682), items: [674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 737, 742, 879, 897], provide: [(524, true), (602, true), (604, true), (632, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 227), items: [167, 203, 209, 223], want_response: false }, ItemSet { range: Range(227, 244), items: [227, 229, 231], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: false }, ItemSet { range: Range(282, 301), items: [282], want_response: false }, ItemSet { range: Range(373, 427), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(427, 439), items: [], want_response: false }, ItemSet { range: Range(640, 674), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(674, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 46, 73, 80, 301, 372, 442, 450, 462, 466, 473, 476, 477, 720, 748, 888, 891, 88, 94, 136, 204, 246, 373, 380, 427, 660, 674, 866], provide: [(496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (342, true), (366, true), (371, true), (439, true), (458, true), (468, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (46, true), (73, true), (80, true), (301, true), (372, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (720, true), (748, true), (888, true), (891, true), (88, true), (94, true), (136, true), (204, true), (246, true), (373, true), (380, true), (427, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 46, 73, 80, 88, 94, 136, 204, 246, 277, 282, 301, 313, 372, 373, 380, 427, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [524, 602, 604, 632, 830, 856, 992, 33, 46, 73, 80, 301, 372, 442, 450, 462, 466, 473, 476, 477, 720, 748, 888, 891, 88, 94, 136, 204, 246, 373, 380, 427, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 46, 73, 80, 88, 94, 136, 204, 246, 277, 282, 301, 313, 372, 373, 427, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(42, SumMonoid(21244)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 373), fp: EncodedCountingMonoid(14, SumMonoid(2545)) }, Fingerprint { range: Range(373, 640), fp: EncodedCountingMonoid(13, SumMonoid(6408)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(8, SumMonoid(5901)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 227), fp: EncodedCountingMonoid(10, SumMonoid(1513)) }, Fingerprint { range: Range(227, 373), fp: EncodedCountingMonoid(10, SumMonoid(2882)) }, Fingerprint { range: Range(373, 496), fp: EncodedCountingMonoid(6, SumMonoid(2549)) }, Fingerprint { range: Range(496, 640), fp: EncodedCountingMonoid(6, SumMonoid(3182)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(4, SumMonoid(232)) }, Fingerprint { range: Range(88, 227), fp: EncodedCountingMonoid(4, SumMonoid(522)) }, Fingerprint { range: Range(227, 301), fp: EncodedCountingMonoid(3, SumMonoid(805)) }, Fingerprint { range: Range(301, 373), fp: EncodedCountingMonoid(3, SumMonoid(986)) }, Fingerprint { range: Range(373, 466), fp: EncodedCountingMonoid(5, SumMonoid(2154)) }, Fingerprint { range: Range(466, 496), fp: EncodedCountingMonoid(4, SumMonoid(1892)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(496, 604), items: [524, 602], want_response: true }, ItemSet { range: Range(604, 640), items: [604, 632], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(88, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 227), fp: EncodedCountingMonoid(4, SumMonoid(802)) }, Fingerprint { range: Range(227, 244), fp: EncodedCountingMonoid(3, SumMonoid(687)) }, Fingerprint { range: Range(244, 301), fp: EncodedCountingMonoid(3, SumMonoid(803)) }, Fingerprint { range: Range(373, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(496, 604), items: [496, 503, 509, 523, 527], want_response: false }, ItemSet { range: Range(604, 640), items: [624], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(301, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 373), items: [366, 371], want_response: true }, ItemSet { range: Range(439, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 496), items: [468], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [524, 602, 604, 632, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 46, 73, 80], want_response: false }, ItemSet { range: Range(301, 366), items: [301, 313], want_response: false }, ItemSet { range: Range(366, 373), items: [372], want_response: false }, ItemSet { range: Range(439, 466), items: [442, 450, 462], want_response: false }, ItemSet { range: Range(466, 496), items: [466, 473, 476, 477], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 167), items: [136], want_response: true }, ItemSet { range: Range(167, 227), items: [204], want_response: true }, ItemSet { range: Range(227, 244), items: [], want_response: true }, ItemSet { range: Range(244, 282), items: [246, 277], want_response: true }, ItemSet { range: Range(282, 301), items: [282], want_response: true }, ItemSet { range: Range(373, 439), items: [373, 427], want_response: true }, ItemSet { range: Range(640, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 682), items: [674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 737, 742, 879, 897], provide: [(524, true), (602, true), (604, true), (632, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 227), items: [167, 203, 209, 223], want_response: false }, ItemSet { range: Range(227, 244), items: [227, 229, 231], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: false }, ItemSet { range: Range(282, 301), items: [282], want_response: false }, ItemSet { range: Range(373, 439), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 674), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(674, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 46, 73, 80, 301, 372, 442, 450, 462, 466, 473, 476, 477, 720, 748, 888, 891, 88, 94, 136, 204, 246, 373, 427, 660, 674, 866], provide: [(496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (342, true), (366, true), (371, true), (439, true), (458, true), (468, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (46, true), (73, true), (80, true), (301, true), (372, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (720, true), (748, true), (888, true), (891, true), (88, true), (94, true), (136, true), (204, true), (246, true), (373, true), (427, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 46, 73, 80, 88, 94, 136, 204, 246, 277, 282, 301, 313, 372, 373, 427, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [524, 602, 604, 632, 830, 856, 992, 33, 46, 73, 80, 301, 372, 442, 450, 462, 466, 473, 476, 477, 720, 748, 888, 891, 88, 94, 136, 204, 246, 373, 427, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 46, 73, 80, 88, 94, 136, 246, 277, 282, 301, 313, 372, 373, 427, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(41, SumMonoid(21040)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 373), fp: EncodedCountingMonoid(13, SumMonoid(2341)) }, Fingerprint { range: Range(373, 640), fp: EncodedCountingMonoid(13, SumMonoid(6408)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(8, SumMonoid(5901)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 227), fp: EncodedCountingMonoid(10, SumMonoid(1513)) }, Fingerprint { range: Range(227, 373), fp: EncodedCountingMonoid(10, SumMonoid(2882)) }, Fingerprint { range: Range(373, 496), fp: EncodedCountingMonoid(6, SumMonoid(2549)) }, Fingerprint { range: Range(496, 640), fp: EncodedCountingMonoid(6, SumMonoid(3182)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(4, SumMonoid(232)) }, Fingerprint { range: Range(88, 227), fp: EncodedCountingMonoid(3, SumMonoid(318)) }, Fingerprint { range: Range(227, 301), fp: EncodedCountingMonoid(3, SumMonoid(805)) }, Fingerprint { range: Range(301, 373), fp: EncodedCountingMonoid(3, SumMonoid(986)) }, Fingerprint { range: Range(373, 466), fp: EncodedCountingMonoid(5, SumMonoid(2154)) }, Fingerprint { range: Range(466, 496), fp: EncodedCountingMonoid(4, SumMonoid(1892)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2228)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(496, 604), items: [524, 602], want_response: true }, ItemSet { range: Range(604, 640), items: [604, 632], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(88, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 227), fp: EncodedCountingMonoid(4, SumMonoid(802)) }, Fingerprint { range: Range(227, 244), fp: EncodedCountingMonoid(3, SumMonoid(687)) }, Fingerprint { range: Range(244, 301), fp: EncodedCountingMonoid(3, SumMonoid(803)) }, Fingerprint { range: Range(373, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(496, 604), items: [496, 503, 509, 523, 527], want_response: false }, ItemSet { range: Range(604, 640), items: [624], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(301, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 373), items: [366, 371], want_response: true }, ItemSet { range: Range(439, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 496), items: [468], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [524, 602, 604, 632, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 46, 73, 80], want_response: false }, ItemSet { range: Range(301, 366), items: [301, 313], want_response: false }, ItemSet { range: Range(366, 373), items: [372], want_response: false }, ItemSet { range: Range(439, 466), items: [442, 450, 462], want_response: false }, ItemSet { range: Range(466, 496), items: [466, 473, 476, 477], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 748], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 167), items: [136], want_response: true }, ItemSet { range: Range(167, 227), items: [], want_response: true }, ItemSet { range: Range(227, 244), items: [], want_response: true }, ItemSet { range: Range(244, 282), items: [246, 277], want_response: true }, ItemSet { range: Range(282, 301), items: [282], want_response: true }, ItemSet { range: Range(373, 439), items: [373, 427], want_response: true }, ItemSet { range: Range(640, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 682), items: [674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 737, 742, 879, 897], provide: [(524, true), (602, true), (604, true), (632, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 227), items: [167, 203, 209, 223], want_response: false }, ItemSet { range: Range(227, 244), items: [227, 229, 231], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: false }, ItemSet { range: Range(282, 301), items: [282], want_response: false }, ItemSet { range: Range(373, 439), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 674), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(674, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 46, 73, 80, 301, 372, 442, 450, 462, 466, 473, 476, 477, 720, 748, 888, 891, 88, 94, 136, 246, 373, 427, 660, 674, 866], provide: [(496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (342, true), (366, true), (371, true), (439, true), (458, true), (468, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (46, true), (73, true), (80, true), (301, true), (372, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (720, true), (748, true), (888, true), (891, true), (88, true), (94, true), (136, true), (246, true), (373, true), (427, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 46, 73, 80, 88, 94, 136, 246, 277, 282, 301, 313, 372, 373, 427, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 748, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 737, 742, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [524, 602, 604, 632, 830, 856, 992, 33, 46, 73, 80, 301, 372, 442, 450, 462, 466, 473, 476, 477, 720, 748, 888, 891, 88, 94, 136, 246, 373, 427, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {33, 46, 73, 80, 88, 94, 136, 246, 277, 282, 301, 313, 372, 373, 427, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 993), fp: EncodedCountingMonoid(40, SumMonoid(20292)) }], item_sets: [ItemSet { range: Range(993, 33), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 993), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(993, 33), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 373), fp: EncodedCountingMonoid(13, SumMonoid(2341)) }, Fingerprint { range: Range(373, 640), fp: EncodedCountingMonoid(13, SumMonoid(6408)) }, Fingerprint { range: Range(640, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(33, 227), fp: EncodedCountingMonoid(10, SumMonoid(1513)) }, Fingerprint { range: Range(227, 373), fp: EncodedCountingMonoid(10, SumMonoid(2882)) }, Fingerprint { range: Range(373, 496), fp: EncodedCountingMonoid(6, SumMonoid(2549)) }, Fingerprint { range: Range(496, 640), fp: EncodedCountingMonoid(6, SumMonoid(3182)) }, Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(33, 88), fp: EncodedCountingMonoid(4, SumMonoid(232)) }, Fingerprint { range: Range(88, 227), fp: EncodedCountingMonoid(3, SumMonoid(318)) }, Fingerprint { range: Range(227, 301), fp: EncodedCountingMonoid(3, SumMonoid(805)) }, Fingerprint { range: Range(301, 373), fp: EncodedCountingMonoid(3, SumMonoid(986)) }, Fingerprint { range: Range(373, 466), fp: EncodedCountingMonoid(5, SumMonoid(2154)) }, Fingerprint { range: Range(466, 496), fp: EncodedCountingMonoid(4, SumMonoid(1892)) }, Fingerprint { range: Range(640, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(496, 604), items: [524, 602], want_response: true }, ItemSet { range: Range(604, 640), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(88, 167), fp: EncodedCountingMonoid(5, SumMonoid(668)) }, Fingerprint { range: Range(167, 227), fp: EncodedCountingMonoid(4, SumMonoid(802)) }, Fingerprint { range: Range(227, 244), fp: EncodedCountingMonoid(3, SumMonoid(687)) }, Fingerprint { range: Range(244, 301), fp: EncodedCountingMonoid(3, SumMonoid(803)) }, Fingerprint { range: Range(373, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(640, 682), fp: EncodedCountingMonoid(3, SumMonoid(1959)) }, Fingerprint { range: Range(682, 720), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(496, 604), items: [496, 503, 509, 523, 527], want_response: false }, ItemSet { range: Range(604, 640), items: [624], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(33, 88), items: [43], want_response: true }, ItemSet { range: Range(301, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 373), items: [366, 371], want_response: true }, ItemSet { range: Range(439, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 496), items: [468], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [524, 602, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 88), items: [33, 46, 73, 80], want_response: false }, ItemSet { range: Range(301, 366), items: [301, 313], want_response: false }, ItemSet { range: Range(366, 373), items: [372], want_response: false }, ItemSet { range: Range(439, 466), items: [442, 450, 462], want_response: false }, ItemSet { range: Range(466, 496), items: [466, 473, 476, 477], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 167), items: [136], want_response: true }, ItemSet { range: Range(167, 227), items: [], want_response: true }, ItemSet { range: Range(227, 244), items: [], want_response: true }, ItemSet { range: Range(244, 282), items: [246, 277], want_response: true }, ItemSet { range: Range(282, 301), items: [282], want_response: true }, ItemSet { range: Range(373, 439), items: [373, 427], want_response: true }, ItemSet { range: Range(640, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 682), items: [674], want_response: true }, ItemSet { range: Range(682, 720), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [496, 503, 509, 523, 527, 624, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 879, 897], provide: [(524, true), (602, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 167), items: [143, 153, 165], want_response: false }, ItemSet { range: Range(167, 227), items: [167, 203, 209, 223], want_response: false }, ItemSet { range: Range(227, 244), items: [227, 229, 231], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: false }, ItemSet { range: Range(282, 301), items: [282], want_response: false }, ItemSet { range: Range(373, 439), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(640, 674), items: [640, 653, 666], want_response: false }, ItemSet { range: Range(674, 682), items: [], want_response: false }, ItemSet { range: Range(682, 720), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [33, 46, 73, 80, 301, 372, 442, 450, 462, 466, 473, 476, 477, 888, 891, 88, 94, 136, 246, 373, 427, 660, 674, 866], provide: [(496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (43, true), (342, true), (366, true), (371, true), (439, true), (458, true), (468, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873], provide: [(33, true), (46, true), (73, true), (80, true), (301, true), (372, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (888, true), (891, true), (88, true), (94, true), (136, true), (246, true), (373, true), (427, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (640, true), (666, true), (682, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {33, 46, 73, 80, 88, 94, 136, 246, 277, 282, 301, 313, 372, 373, 427, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 496, 503, 509, 523, 527, 624, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 43, 342, 366, 371, 439, 458, 468, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 382, 389, 413, 640, 666, 682, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [524, 602, 604, 632, 720, 830, 856, 992, 33, 46, 73, 80, 301, 372, 442, 450, 462, 466, 473, 476, 477, 888, 891, 88, 94, 136, 246, 373, 427, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 73, 80, 88, 94, 136, 246, 277, 282, 301, 313, 372, 373, 427, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(39, SumMonoid(20259)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 427), fp: EncodedCountingMonoid(13, SumMonoid(2681)) }, Fingerprint { range: Range(427, 653), fp: EncodedCountingMonoid(12, SumMonoid(6035)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 231), fp: EncodedCountingMonoid(11, SumMonoid(1926)) }, Fingerprint { range: Range(231, 427), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(427, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 653), fp: EncodedCountingMonoid(5, SumMonoid(2823)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 88), fp: EncodedCountingMonoid(3, SumMonoid(199)) }, Fingerprint { range: Range(88, 231), fp: EncodedCountingMonoid(3, SumMonoid(318)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 427), fp: EncodedCountingMonoid(3, SumMonoid(1058)) }, Fingerprint { range: Range(427, 466), fp: EncodedCountingMonoid(4, SumMonoid(1781)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(4, SumMonoid(1892)) }, Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(509, 604), items: [524, 602], want_response: true }, ItemSet { range: Range(604, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(88, 203), fp: EncodedCountingMonoid(6, SumMonoid(835)) }, Fingerprint { range: Range(203, 231), fp: EncodedCountingMonoid(5, SumMonoid(1091)) }, Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 427), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(509, 604), items: [509, 523, 527], want_response: false }, ItemSet { range: Range(604, 653), items: [624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(46, 88), items: [], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(427, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [524, 602, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(46, 88), items: [46, 73, 80], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 301], want_response: false }, ItemSet { range: Range(427, 466), items: [427, 442, 450, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477], want_response: false }, ItemSet { range: Range(503, 509), items: [], want_response: false }, ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(88, 136), items: [88, 94], want_response: true }, ItemSet { range: Range(136, 203), items: [136], want_response: true }, ItemSet { range: Range(203, 231), items: [], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373], want_response: true }, ItemSet { range: Range(382, 427), items: [], want_response: true }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 231, 244, 439, 458, 468, 496, 503, 689, 705, 879, 897], provide: [(524, true), (602, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(88, 136), items: [102, 105], want_response: false }, ItemSet { range: Range(136, 203), items: [143, 153, 165, 167], want_response: false }, ItemSet { range: Range(203, 231), items: [203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 427), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [46, 73, 80, 246, 301, 427, 442, 450, 462, 466, 473, 476, 477, 888, 891, 88, 94, 136, 372, 373, 660, 674, 866], provide: [(509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (231, true), (244, true), (439, true), (458, true), (468, true), (496, true), (503, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 666, 682, 867, 869, 873], provide: [(46, true), (73, true), (80, true), (246, true), (301, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (888, true), (891, true), (88, true), (94, true), (136, true), (372, true), (373, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 73, 80, 88, 94, 136, 246, 277, 282, 301, 313, 372, 373, 427, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 231, 244, 439, 458, 468, 496, 503, 689, 705, 879, 897, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 342, 366, 371, 382, 389, 413, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [524, 602, 604, 632, 720, 830, 856, 992, 46, 73, 80, 246, 301, 427, 442, 450, 462, 466, 473, 476, 477, 888, 891, 88, 94, 136, 372, 373, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 73, 80, 94, 136, 246, 277, 282, 301, 313, 372, 373, 427, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(38, SumMonoid(20171)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 427), fp: EncodedCountingMonoid(12, SumMonoid(2593)) }, Fingerprint { range: Range(427, 653), fp: EncodedCountingMonoid(12, SumMonoid(6035)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 231), fp: EncodedCountingMonoid(11, SumMonoid(1926)) }, Fingerprint { range: Range(231, 427), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(427, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 653), fp: EncodedCountingMonoid(5, SumMonoid(2823)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 94), fp: EncodedCountingMonoid(3, SumMonoid(199)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 427), fp: EncodedCountingMonoid(3, SumMonoid(1058)) }, Fingerprint { range: Range(427, 466), fp: EncodedCountingMonoid(4, SumMonoid(1781)) }, Fingerprint { range: Range(466, 509), fp: EncodedCountingMonoid(4, SumMonoid(1892)) }, Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(94, 231), items: [94, 136], want_response: true }, ItemSet { range: Range(509, 604), items: [524, 602], want_response: true }, ItemSet { range: Range(604, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 427), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(94, 231), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(509, 604), items: [509, 523, 527], want_response: false }, ItemSet { range: Range(604, 653), items: [624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(46, 94), items: [], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(427, 466), items: [439, 458], want_response: true }, ItemSet { range: Range(466, 503), items: [468, 496], want_response: true }, ItemSet { range: Range(503, 509), items: [503], want_response: true }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [94, 136, 524, 602, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(46, 94), items: [46, 73, 80], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 301], want_response: false }, ItemSet { range: Range(427, 466), items: [427, 442, 450, 462], want_response: false }, ItemSet { range: Range(466, 503), items: [466, 473, 476, 477], want_response: false }, ItemSet { range: Range(503, 509), items: [], want_response: false }, ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373], want_response: true }, ItemSet { range: Range(382, 427), items: [], want_response: true }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 231, 244, 439, 458, 468, 496, 503, 689, 705, 879, 897], provide: [(94, true), (136, true), (524, true), (602, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 427), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [46, 73, 80, 246, 301, 427, 442, 450, 462, 466, 473, 476, 477, 888, 891, 372, 373, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (231, true), (244, true), (439, true), (458, true), (468, true), (496, true), (503, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [342, 366, 371, 382, 389, 413, 666, 682, 867, 869, 873], provide: [(46, true), (73, true), (80, true), (246, true), (301, true), (427, true), (442, true), (450, true), (462, true), (466, true), (473, true), (476, true), (477, true), (888, true), (891, true), (372, true), (373, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 73, 80, 94, 136, 246, 277, 282, 301, 313, 372, 373, 427, 442, 450, 462, 466, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 231, 244, 439, 458, 468, 496, 503, 689, 705, 879, 897, 342, 366, 371, 382, 389, 413, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [94, 136, 524, 602, 604, 632, 720, 830, 856, 992, 46, 73, 80, 246, 301, 427, 442, 450, 462, 466, 473, 476, 477, 888, 891, 372, 373, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 73, 80, 94, 136, 246, 277, 282, 301, 313, 372, 373, 427, 442, 450, 462, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(37, SumMonoid(19705)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 427), fp: EncodedCountingMonoid(12, SumMonoid(2593)) }, Fingerprint { range: Range(427, 653), fp: EncodedCountingMonoid(11, SumMonoid(5569)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 231), fp: EncodedCountingMonoid(11, SumMonoid(1926)) }, Fingerprint { range: Range(231, 427), fp: EncodedCountingMonoid(11, SumMonoid(3610)) }, Fingerprint { range: Range(427, 509), fp: EncodedCountingMonoid(5, SumMonoid(2364)) }, Fingerprint { range: Range(509, 653), fp: EncodedCountingMonoid(5, SumMonoid(2823)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 94), fp: EncodedCountingMonoid(3, SumMonoid(199)) }, Fingerprint { range: Range(231, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 427), fp: EncodedCountingMonoid(3, SumMonoid(1058)) }, Fingerprint { range: Range(427, 473), fp: EncodedCountingMonoid(4, SumMonoid(1781)) }, Fingerprint { range: Range(473, 509), fp: EncodedCountingMonoid(3, SumMonoid(1426)) }, Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(94, 231), items: [94, 136], want_response: true }, ItemSet { range: Range(509, 604), items: [524, 602], want_response: true }, ItemSet { range: Range(604, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 427), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(94, 231), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229], want_response: false }, ItemSet { range: Range(509, 604), items: [509, 523, 527], want_response: false }, ItemSet { range: Range(604, 653), items: [624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(46, 94), items: [], want_response: true }, ItemSet { range: Range(231, 277), items: [231, 244], want_response: true }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(427, 468), items: [439, 458], want_response: true }, ItemSet { range: Range(468, 473), items: [468], want_response: true }, ItemSet { range: Range(473, 509), items: [496, 503], want_response: true }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [94, 136, 524, 602, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(46, 94), items: [46, 73, 80], want_response: false }, ItemSet { range: Range(231, 277), items: [246], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282, 301], want_response: false }, ItemSet { range: Range(427, 468), items: [427, 442, 450, 462], want_response: false }, ItemSet { range: Range(468, 473), items: [], want_response: false }, ItemSet { range: Range(473, 509), items: [473, 476, 477], want_response: false }, ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373], want_response: true }, ItemSet { range: Range(382, 427), items: [], want_response: true }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 231, 244, 439, 458, 468, 496, 503, 689, 705, 879, 897], provide: [(94, true), (136, true), (524, true), (602, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 427), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [46, 73, 80, 246, 301, 427, 442, 450, 462, 473, 476, 477, 888, 891, 372, 373, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (231, true), (244, true), (439, true), (458, true), (468, true), (496, true), (503, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [342, 366, 371, 382, 389, 413, 666, 682, 867, 869, 873], provide: [(46, true), (73, true), (80, true), (246, true), (301, true), (427, true), (442, true), (450, true), (462, true), (473, true), (476, true), (477, true), (888, true), (891, true), (372, true), (373, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 73, 80, 94, 136, 246, 277, 282, 301, 313, 372, 373, 427, 442, 450, 462, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 231, 244, 439, 458, 468, 496, 503, 689, 705, 879, 897, 342, 366, 371, 382, 389, 413, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [94, 136, 524, 602, 604, 632, 720, 830, 856, 992, 46, 73, 80, 246, 301, 427, 442, 450, 462, 473, 476, 477, 888, 891, 372, 373, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 73, 80, 94, 136, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(36, SumMonoid(19278)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 373), fp: EncodedCountingMonoid(11, SumMonoid(2220)) }, Fingerprint { range: Range(373, 653), fp: EncodedCountingMonoid(11, SumMonoid(5515)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 229), fp: EncodedCountingMonoid(10, SumMonoid(1697)) }, Fingerprint { range: Range(229, 373), fp: EncodedCountingMonoid(9, SumMonoid(2655)) }, Fingerprint { range: Range(373, 503), fp: EncodedCountingMonoid(7, SumMonoid(3045)) }, Fingerprint { range: Range(503, 653), fp: EncodedCountingMonoid(6, SumMonoid(3326)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 94), fp: EncodedCountingMonoid(3, SumMonoid(199)) }, Fingerprint { range: Range(229, 301), fp: EncodedCountingMonoid(3, SumMonoid(805)) }, Fingerprint { range: Range(301, 373), fp: EncodedCountingMonoid(3, SumMonoid(986)) }, Fingerprint { range: Range(373, 473), fp: EncodedCountingMonoid(4, SumMonoid(1727)) }, Fingerprint { range: Range(473, 503), fp: EncodedCountingMonoid(3, SumMonoid(1426)) }, Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(94, 229), items: [94, 136], want_response: true }, ItemSet { range: Range(503, 604), items: [524, 602], want_response: true }, ItemSet { range: Range(604, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(229, 277), fp: EncodedCountingMonoid(3, SumMonoid(704)) }, Fingerprint { range: Range(373, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(439, 473), fp: EncodedCountingMonoid(3, SumMonoid(1365)) }, Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(94, 229), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227], want_response: false }, ItemSet { range: Range(503, 604), items: [503, 509, 523, 527], want_response: false }, ItemSet { range: Range(604, 653), items: [624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(46, 94), items: [], want_response: true }, ItemSet { range: Range(277, 301), items: [277, 282], want_response: true }, ItemSet { range: Range(301, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 373), items: [366, 371], want_response: true }, ItemSet { range: Range(473, 503), items: [496], want_response: true }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [94, 136, 524, 602, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(46, 94), items: [46, 73, 80], want_response: false }, ItemSet { range: Range(277, 301), items: [277, 282], want_response: false }, ItemSet { range: Range(301, 366), items: [301, 313], want_response: false }, ItemSet { range: Range(366, 373), items: [372], want_response: false }, ItemSet { range: Range(473, 503), items: [473, 476, 477], want_response: false }, ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(229, 277), items: [246], want_response: true }, ItemSet { range: Range(373, 439), items: [373], want_response: true }, ItemSet { range: Range(439, 462), items: [442, 450], want_response: true }, ItemSet { range: Range(462, 473), items: [462], want_response: true }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 342, 366, 371, 496, 689, 705, 879, 897], provide: [(94, true), (136, true), (524, true), (602, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(229, 277), items: [229, 231, 244], want_response: false }, ItemSet { range: Range(373, 439), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(439, 462), items: [439, 458], want_response: false }, ItemSet { range: Range(462, 473), items: [468], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [46, 73, 80, 301, 372, 473, 476, 477, 888, 891, 246, 373, 442, 450, 462, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (342, true), (366, true), (371, true), (496, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [229, 231, 244, 382, 389, 413, 439, 458, 468, 666, 682, 867, 869, 873], provide: [(46, true), (73, true), (80, true), (301, true), (372, true), (473, true), (476, true), (477, true), (888, true), (891, true), (246, true), (373, true), (442, true), (450, true), (462, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 73, 80, 94, 136, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 342, 366, 371, 496, 689, 705, 879, 897, 229, 231, 244, 382, 389, 413, 439, 458, 468, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [94, 136, 524, 602, 604, 632, 720, 830, 856, 992, 46, 73, 80, 301, 372, 473, 476, 477, 888, 891, 246, 373, 442, 450, 462, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 73, 80, 94, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(35, SumMonoid(19142)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 442), fp: EncodedCountingMonoid(11, SumMonoid(2457)) }, Fingerprint { range: Range(442, 653), fp: EncodedCountingMonoid(10, SumMonoid(5142)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 244), fp: EncodedCountingMonoid(12, SumMonoid(2157)) }, Fingerprint { range: Range(244, 442), fp: EncodedCountingMonoid(11, SumMonoid(3818)) }, Fingerprint { range: Range(442, 523), fp: EncodedCountingMonoid(5, SumMonoid(2434)) }, Fingerprint { range: Range(523, 653), fp: EncodedCountingMonoid(4, SumMonoid(2314)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(244, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 442), fp: EncodedCountingMonoid(3, SumMonoid(1058)) }, Fingerprint { range: Range(442, 473), fp: EncodedCountingMonoid(3, SumMonoid(1354)) }, Fingerprint { range: Range(473, 523), fp: EncodedCountingMonoid(3, SumMonoid(1426)) }, Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 80), items: [46, 73], want_response: true }, ItemSet { range: Range(80, 244), items: [80, 94], want_response: true }, ItemSet { range: Range(523, 604), items: [524, 602], want_response: true }, ItemSet { range: Range(604, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 442), fp: EncodedCountingMonoid(4, SumMonoid(1623)) }, Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 80), items: [], want_response: false }, ItemSet { range: Range(80, 244), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231], want_response: false }, ItemSet { range: Range(523, 604), items: [523, 527], want_response: false }, ItemSet { range: Range(604, 653), items: [624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: true }, ItemSet { range: Range(282, 313), items: [282], want_response: true }, ItemSet { range: Range(442, 473), items: [458, 468], want_response: true }, ItemSet { range: Range(473, 509), items: [496, 503], want_response: true }, ItemSet { range: Range(509, 523), items: [509], want_response: true }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 73, 80, 94, 524, 602, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(244, 282), items: [246, 277], want_response: false }, ItemSet { range: Range(282, 313), items: [282, 301], want_response: false }, ItemSet { range: Range(442, 473), items: [442, 450, 462], want_response: false }, ItemSet { range: Range(473, 509), items: [473, 476, 477], want_response: false }, ItemSet { range: Range(509, 523), items: [], want_response: false }, ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373], want_response: true }, ItemSet { range: Range(382, 442), items: [], want_response: true }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 244, 458, 468, 496, 503, 509, 689, 705, 879, 897], provide: [(46, true), (73, true), (80, true), (94, true), (524, true), (602, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 442), items: [382, 389, 413, 439], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [246, 301, 442, 450, 462, 473, 476, 477, 888, 891, 372, 373, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (244, true), (458, true), (468, true), (496, true), (503, true), (509, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [342, 366, 371, 382, 389, 413, 439, 666, 682, 867, 869, 873], provide: [(246, true), (301, true), (442, true), (450, true), (462, true), (473, true), (476, true), (477, true), (888, true), (891, true), (372, true), (373, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 73, 80, 94, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 244, 458, 468, 496, 503, 509, 689, 705, 879, 897, 342, 366, 371, 382, 389, 413, 439, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 73, 80, 94, 524, 602, 604, 632, 720, 830, 856, 992, 246, 301, 442, 450, 462, 473, 476, 477, 888, 891, 372, 373, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 73, 80, 94, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(34, SumMonoid(18211)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 442), fp: EncodedCountingMonoid(11, SumMonoid(2457)) }, Fingerprint { range: Range(442, 653), fp: EncodedCountingMonoid(10, SumMonoid(5142)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(6, SumMonoid(5459)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 244), fp: EncodedCountingMonoid(12, SumMonoid(2157)) }, Fingerprint { range: Range(244, 442), fp: EncodedCountingMonoid(11, SumMonoid(3818)) }, Fingerprint { range: Range(442, 523), fp: EncodedCountingMonoid(5, SumMonoid(2434)) }, Fingerprint { range: Range(523, 653), fp: EncodedCountingMonoid(4, SumMonoid(2314)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(244, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 442), fp: EncodedCountingMonoid(3, SumMonoid(1058)) }, Fingerprint { range: Range(442, 473), fp: EncodedCountingMonoid(3, SumMonoid(1354)) }, Fingerprint { range: Range(473, 523), fp: EncodedCountingMonoid(3, SumMonoid(1426)) }, Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }], item_sets: [ItemSet { range: Range(46, 80), items: [46, 73], want_response: true }, ItemSet { range: Range(80, 244), items: [80, 94], want_response: true }, ItemSet { range: Range(523, 604), items: [524, 602], want_response: true }, ItemSet { range: Range(604, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(901, 947), items: [901, 921], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 442), fp: EncodedCountingMonoid(4, SumMonoid(1623)) }, Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 80), items: [], want_response: false }, ItemSet { range: Range(80, 244), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231], want_response: false }, ItemSet { range: Range(523, 604), items: [523, 527], want_response: false }, ItemSet { range: Range(604, 653), items: [624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(901, 947), items: [902, 925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: true }, ItemSet { range: Range(282, 313), items: [282], want_response: true }, ItemSet { range: Range(442, 473), items: [458, 468], want_response: true }, ItemSet { range: Range(473, 509), items: [496, 503], want_response: true }, ItemSet { range: Range(509, 523), items: [509], want_response: true }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 73, 80, 94, 524, 602, 604, 632, 720, 830, 856, 901, 921, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(244, 282), items: [246, 277], want_response: false }, ItemSet { range: Range(282, 313), items: [282, 301], want_response: false }, ItemSet { range: Range(442, 473), items: [442, 450, 462], want_response: false }, ItemSet { range: Range(473, 509), items: [473, 476, 477], want_response: false }, ItemSet { range: Range(509, 523), items: [], want_response: false }, ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373], want_response: true }, ItemSet { range: Range(382, 442), items: [], want_response: true }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 244, 458, 468, 496, 503, 509, 689, 705, 879, 897], provide: [(46, true), (73, true), (80, true), (94, true), (524, true), (602, true), (604, true), (632, true), (720, true), (830, true), (856, true), (901, true), (921, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 442), items: [382, 389, 413, 439], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [246, 301, 442, 450, 462, 473, 476, 477, 888, 891, 372, 373, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (244, true), (458, true), (468, true), (496, true), (503, true), (509, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [342, 366, 371, 382, 389, 413, 439, 666, 682, 867, 869, 873], provide: [(246, true), (301, true), (442, true), (450, true), (462, true), (473, true), (476, true), (477, true), (888, true), (891, true), (372, true), (373, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 73, 80, 94, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 244, 458, 468, 496, 503, 509, 689, 705, 879, 897, 342, 366, 371, 382, 389, 413, 439, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 73, 80, 94, 524, 602, 604, 632, 720, 830, 856, 901, 921, 992, 246, 301, 442, 450, 462, 473, 476, 477, 888, 891, 372, 373, 660, 674, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 46, 73, 80, 94, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 301, 313, 342, 366, 371, 372, 373, 382, 389, 413, 439, 442, 450, 458, 462, 468, 473, 476, 477, 496, 503, 509, 523, 524, 527, 602, 604, 624, 632, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 46, 73, 80, 94, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 301, 313, 342, 366, 371, 372, 373, 382, 389, 413, 439, 442, 450, 458, 462, 468, 473, 476, 477, 496, 503, 509, 523, 524, 527, 602, 604, 624, 632, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 46, 73, 80, 94, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 301, 313, 342, 366, 371, 372, 373, 382, 389, 413, 439, 442, 450, 458, 462, 468, 473, 476, 477, 496, 503, 509, 523, 524, 527, 602, 604, 624, 632, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 73, 80, 94, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(35, SumMonoid(19142)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 442), fp: EncodedCountingMonoid(11, SumMonoid(2457)) }, Fingerprint { range: Range(442, 653), fp: EncodedCountingMonoid(10, SumMonoid(5142)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 244), fp: EncodedCountingMonoid(12, SumMonoid(2157)) }, Fingerprint { range: Range(244, 442), fp: EncodedCountingMonoid(11, SumMonoid(3818)) }, Fingerprint { range: Range(442, 523), fp: EncodedCountingMonoid(5, SumMonoid(2434)) }, Fingerprint { range: Range(523, 653), fp: EncodedCountingMonoid(4, SumMonoid(2314)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(244, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 442), fp: EncodedCountingMonoid(3, SumMonoid(1058)) }, Fingerprint { range: Range(442, 473), fp: EncodedCountingMonoid(3, SumMonoid(1354)) }, Fingerprint { range: Range(473, 523), fp: EncodedCountingMonoid(3, SumMonoid(1426)) }, Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 80), items: [46, 73], want_response: true }, ItemSet { range: Range(80, 244), items: [80, 94], want_response: true }, ItemSet { range: Range(523, 604), items: [524, 602], want_response: true }, ItemSet { range: Range(604, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 442), fp: EncodedCountingMonoid(4, SumMonoid(1623)) }, Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 80), items: [], want_response: false }, ItemSet { range: Range(80, 244), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231], want_response: false }, ItemSet { range: Range(523, 604), items: [523, 527], want_response: false }, ItemSet { range: Range(604, 653), items: [624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: true }, ItemSet { range: Range(282, 313), items: [282], want_response: true }, ItemSet { range: Range(442, 473), items: [458, 468], want_response: true }, ItemSet { range: Range(473, 509), items: [496, 503], want_response: true }, ItemSet { range: Range(509, 523), items: [509], want_response: true }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 73, 80, 94, 524, 602, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(244, 282), items: [246, 277], want_response: false }, ItemSet { range: Range(282, 313), items: [282, 301], want_response: false }, ItemSet { range: Range(442, 473), items: [442, 450, 462], want_response: false }, ItemSet { range: Range(473, 509), items: [473, 476, 477], want_response: false }, ItemSet { range: Range(509, 523), items: [], want_response: false }, ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373], want_response: true }, ItemSet { range: Range(382, 442), items: [], want_response: true }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 244, 458, 468, 496, 503, 509, 689, 705, 879, 897], provide: [(46, true), (73, true), (80, true), (94, true), (524, true), (602, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 442), items: [382, 389, 413, 439], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [246, 301, 442, 450, 462, 473, 476, 477, 888, 891, 372, 373, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (244, true), (458, true), (468, true), (496, true), (503, true), (509, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [342, 366, 371, 382, 389, 413, 439, 666, 682, 867, 869, 873], provide: [(246, true), (301, true), (442, true), (450, true), (462, true), (473, true), (476, true), (477, true), (888, true), (891, true), (372, true), (373, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 73, 80, 94, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 244, 458, 468, 496, 503, 509, 689, 705, 879, 897, 342, 366, 371, 382, 389, 413, 439, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 73, 80, 94, 524, 602, 604, 632, 720, 830, 856, 992, 246, 301, 442, 450, 462, 473, 476, 477, 888, 891, 372, 373, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 94, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(34, SumMonoid(19069)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 442), fp: EncodedCountingMonoid(10, SumMonoid(2384)) }, Fingerprint { range: Range(442, 653), fp: EncodedCountingMonoid(10, SumMonoid(5142)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 244), fp: EncodedCountingMonoid(12, SumMonoid(2157)) }, Fingerprint { range: Range(244, 442), fp: EncodedCountingMonoid(11, SumMonoid(3818)) }, Fingerprint { range: Range(442, 523), fp: EncodedCountingMonoid(5, SumMonoid(2434)) }, Fingerprint { range: Range(523, 653), fp: EncodedCountingMonoid(4, SumMonoid(2314)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(244, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 442), fp: EncodedCountingMonoid(3, SumMonoid(1058)) }, Fingerprint { range: Range(442, 473), fp: EncodedCountingMonoid(3, SumMonoid(1354)) }, Fingerprint { range: Range(473, 523), fp: EncodedCountingMonoid(3, SumMonoid(1426)) }, Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 94), items: [46, 80], want_response: true }, ItemSet { range: Range(94, 244), items: [94], want_response: true }, ItemSet { range: Range(523, 604), items: [524, 602], want_response: true }, ItemSet { range: Range(604, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 442), fp: EncodedCountingMonoid(4, SumMonoid(1623)) }, Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 94), items: [], want_response: false }, ItemSet { range: Range(94, 244), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231], want_response: false }, ItemSet { range: Range(523, 604), items: [523, 527], want_response: false }, ItemSet { range: Range(604, 653), items: [624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: true }, ItemSet { range: Range(282, 313), items: [282], want_response: true }, ItemSet { range: Range(442, 473), items: [458, 468], want_response: true }, ItemSet { range: Range(473, 509), items: [496, 503], want_response: true }, ItemSet { range: Range(509, 523), items: [509], want_response: true }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 94, 524, 602, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(244, 282), items: [246, 277], want_response: false }, ItemSet { range: Range(282, 313), items: [282, 301], want_response: false }, ItemSet { range: Range(442, 473), items: [442, 450, 462], want_response: false }, ItemSet { range: Range(473, 509), items: [473, 476, 477], want_response: false }, ItemSet { range: Range(509, 523), items: [], want_response: false }, ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373], want_response: true }, ItemSet { range: Range(382, 442), items: [], want_response: true }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 244, 458, 468, 496, 503, 509, 689, 705, 879, 897], provide: [(46, true), (80, true), (94, true), (524, true), (602, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 442), items: [382, 389, 413, 439], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [246, 301, 442, 450, 462, 473, 476, 477, 888, 891, 372, 373, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (244, true), (458, true), (468, true), (496, true), (503, true), (509, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [342, 366, 371, 382, 389, 413, 439, 666, 682, 867, 869, 873], provide: [(246, true), (301, true), (442, true), (450, true), (462, true), (473, true), (476, true), (477, true), (888, true), (891, true), (372, true), (373, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 94, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 244, 458, 468, 496, 503, 509, 689, 705, 879, 897, 342, 366, 371, 382, 389, 413, 439, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 94, 524, 602, 604, 632, 720, 830, 856, 992, 246, 301, 442, 450, 462, 473, 476, 477, 888, 891, 372, 373, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 94, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(33, SumMonoid(18148)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 442), fp: EncodedCountingMonoid(10, SumMonoid(2384)) }, Fingerprint { range: Range(442, 653), fp: EncodedCountingMonoid(10, SumMonoid(5142)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(6, SumMonoid(5469)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 244), fp: EncodedCountingMonoid(12, SumMonoid(2157)) }, Fingerprint { range: Range(244, 442), fp: EncodedCountingMonoid(11, SumMonoid(3818)) }, Fingerprint { range: Range(442, 523), fp: EncodedCountingMonoid(5, SumMonoid(2434)) }, Fingerprint { range: Range(523, 653), fp: EncodedCountingMonoid(4, SumMonoid(2314)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(244, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 442), fp: EncodedCountingMonoid(3, SumMonoid(1058)) }, Fingerprint { range: Range(442, 473), fp: EncodedCountingMonoid(3, SumMonoid(1354)) }, Fingerprint { range: Range(473, 523), fp: EncodedCountingMonoid(3, SumMonoid(1426)) }, Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }], item_sets: [ItemSet { range: Range(46, 94), items: [46, 80], want_response: true }, ItemSet { range: Range(94, 244), items: [94], want_response: true }, ItemSet { range: Range(523, 604), items: [524, 602], want_response: true }, ItemSet { range: Range(604, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(901, 947), items: [901, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 442), fp: EncodedCountingMonoid(4, SumMonoid(1623)) }, Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 94), items: [], want_response: false }, ItemSet { range: Range(94, 244), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231], want_response: false }, ItemSet { range: Range(523, 604), items: [523, 527], want_response: false }, ItemSet { range: Range(604, 653), items: [624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(901, 947), items: [902, 925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: true }, ItemSet { range: Range(282, 313), items: [282], want_response: true }, ItemSet { range: Range(442, 473), items: [458, 468], want_response: true }, ItemSet { range: Range(473, 509), items: [496, 503], want_response: true }, ItemSet { range: Range(509, 523), items: [509], want_response: true }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 94, 524, 602, 604, 632, 720, 830, 856, 901, 931, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(244, 282), items: [246, 277], want_response: false }, ItemSet { range: Range(282, 313), items: [282, 301], want_response: false }, ItemSet { range: Range(442, 473), items: [442, 450, 462], want_response: false }, ItemSet { range: Range(473, 509), items: [473, 476, 477], want_response: false }, ItemSet { range: Range(509, 523), items: [], want_response: false }, ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373], want_response: true }, ItemSet { range: Range(382, 442), items: [], want_response: true }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 244, 458, 468, 496, 503, 509, 689, 705, 879, 897], provide: [(46, true), (80, true), (94, true), (524, true), (602, true), (604, true), (632, true), (720, true), (830, true), (856, true), (901, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 442), items: [382, 389, 413, 439], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [246, 301, 442, 450, 462, 473, 476, 477, 888, 891, 372, 373, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (244, true), (458, true), (468, true), (496, true), (503, true), (509, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [342, 366, 371, 382, 389, 413, 439, 666, 682, 867, 869, 873], provide: [(246, true), (301, true), (442, true), (450, true), (462, true), (473, true), (476, true), (477, true), (888, true), (891, true), (372, true), (373, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 94, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 244, 458, 468, 496, 503, 509, 689, 705, 879, 897, 342, 366, 371, 382, 389, 413, 439, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 94, 524, 602, 604, 632, 720, 830, 856, 901, 931, 992, 246, 301, 442, 450, 462, 473, 476, 477, 888, 891, 372, 373, 660, 674, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 46, 80, 94, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 301, 313, 342, 366, 371, 372, 373, 382, 389, 413, 439, 442, 450, 458, 462, 468, 473, 476, 477, 496, 503, 509, 523, 524, 527, 602, 604, 624, 632, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 46, 80, 94, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 301, 313, 342, 366, 371, 372, 373, 382, 389, 413, 439, 442, 450, 458, 462, 468, 473, 476, 477, 496, 503, 509, 523, 524, 527, 602, 604, 624, 632, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 46, 80, 94, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 301, 313, 342, 366, 371, 372, 373, 382, 389, 413, 439, 442, 450, 458, 462, 468, 473, 476, 477, 496, 503, 509, 523, 524, 527, 602, 604, 624, 632, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 94, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(34, SumMonoid(19069)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 442), fp: EncodedCountingMonoid(10, SumMonoid(2384)) }, Fingerprint { range: Range(442, 653), fp: EncodedCountingMonoid(10, SumMonoid(5142)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 244), fp: EncodedCountingMonoid(12, SumMonoid(2157)) }, Fingerprint { range: Range(244, 442), fp: EncodedCountingMonoid(11, SumMonoid(3818)) }, Fingerprint { range: Range(442, 523), fp: EncodedCountingMonoid(5, SumMonoid(2434)) }, Fingerprint { range: Range(523, 653), fp: EncodedCountingMonoid(4, SumMonoid(2314)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(244, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 442), fp: EncodedCountingMonoid(3, SumMonoid(1058)) }, Fingerprint { range: Range(442, 473), fp: EncodedCountingMonoid(3, SumMonoid(1354)) }, Fingerprint { range: Range(473, 523), fp: EncodedCountingMonoid(3, SumMonoid(1426)) }, Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 94), items: [46, 80], want_response: true }, ItemSet { range: Range(94, 244), items: [94], want_response: true }, ItemSet { range: Range(523, 604), items: [524, 602], want_response: true }, ItemSet { range: Range(604, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 442), fp: EncodedCountingMonoid(4, SumMonoid(1623)) }, Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 94), items: [], want_response: false }, ItemSet { range: Range(94, 244), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231], want_response: false }, ItemSet { range: Range(523, 604), items: [523, 527], want_response: false }, ItemSet { range: Range(604, 653), items: [624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: true }, ItemSet { range: Range(282, 313), items: [282], want_response: true }, ItemSet { range: Range(442, 473), items: [458, 468], want_response: true }, ItemSet { range: Range(473, 509), items: [496, 503], want_response: true }, ItemSet { range: Range(509, 523), items: [509], want_response: true }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 94, 524, 602, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(244, 282), items: [246, 277], want_response: false }, ItemSet { range: Range(282, 313), items: [282, 301], want_response: false }, ItemSet { range: Range(442, 473), items: [442, 450, 462], want_response: false }, ItemSet { range: Range(473, 509), items: [473, 476, 477], want_response: false }, ItemSet { range: Range(509, 523), items: [], want_response: false }, ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373], want_response: true }, ItemSet { range: Range(382, 442), items: [], want_response: true }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 244, 458, 468, 496, 503, 509, 689, 705, 879, 897], provide: [(46, true), (80, true), (94, true), (524, true), (602, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 442), items: [382, 389, 413, 439], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [246, 301, 442, 450, 462, 473, 476, 477, 888, 891, 372, 373, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (244, true), (458, true), (468, true), (496, true), (503, true), (509, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [342, 366, 371, 382, 389, 413, 439, 666, 682, 867, 869, 873], provide: [(246, true), (301, true), (442, true), (450, true), (462, true), (473, true), (476, true), (477, true), (888, true), (891, true), (372, true), (373, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 94, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 476, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 244, 458, 468, 496, 503, 509, 689, 705, 879, 897, 342, 366, 371, 382, 389, 413, 439, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 94, 524, 602, 604, 632, 720, 830, 856, 992, 246, 301, 442, 450, 462, 473, 476, 477, 888, 891, 372, 373, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 94, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(33, SumMonoid(18593)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 442), fp: EncodedCountingMonoid(10, SumMonoid(2384)) }, Fingerprint { range: Range(442, 653), fp: EncodedCountingMonoid(9, SumMonoid(4666)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 244), fp: EncodedCountingMonoid(12, SumMonoid(2157)) }, Fingerprint { range: Range(244, 442), fp: EncodedCountingMonoid(11, SumMonoid(3818)) }, Fingerprint { range: Range(442, 523), fp: EncodedCountingMonoid(5, SumMonoid(2434)) }, Fingerprint { range: Range(523, 653), fp: EncodedCountingMonoid(4, SumMonoid(2314)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(244, 313), fp: EncodedCountingMonoid(4, SumMonoid(1106)) }, Fingerprint { range: Range(313, 442), fp: EncodedCountingMonoid(3, SumMonoid(1058)) }, Fingerprint { range: Range(442, 473), fp: EncodedCountingMonoid(3, SumMonoid(1354)) }, Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 94), items: [46, 80], want_response: true }, ItemSet { range: Range(94, 244), items: [94], want_response: true }, ItemSet { range: Range(473, 523), items: [473, 477], want_response: true }, ItemSet { range: Range(523, 604), items: [524, 602], want_response: true }, ItemSet { range: Range(604, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(313, 382), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(382, 442), fp: EncodedCountingMonoid(4, SumMonoid(1623)) }, Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 94), items: [], want_response: false }, ItemSet { range: Range(94, 244), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231], want_response: false }, ItemSet { range: Range(473, 523), items: [496, 503, 509], want_response: false }, ItemSet { range: Range(523, 604), items: [523, 527], want_response: false }, ItemSet { range: Range(604, 653), items: [624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(244, 282), items: [244, 277], want_response: true }, ItemSet { range: Range(282, 313), items: [282], want_response: true }, ItemSet { range: Range(442, 473), items: [458, 468], want_response: true }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 94, 473, 477, 524, 602, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(244, 282), items: [246, 277], want_response: false }, ItemSet { range: Range(282, 313), items: [282, 301], want_response: false }, ItemSet { range: Range(442, 473), items: [442, 450, 462], want_response: false }, ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 382), items: [373], want_response: true }, ItemSet { range: Range(382, 442), items: [], want_response: true }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 244, 458, 468, 689, 705, 879, 897], provide: [(46, true), (80, true), (94, true), (473, true), (477, true), (524, true), (602, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 382), items: [], want_response: false }, ItemSet { range: Range(382, 442), items: [382, 389, 413, 439], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [246, 301, 442, 450, 462, 888, 891, 372, 373, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (244, true), (458, true), (468, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [342, 366, 371, 382, 389, 413, 439, 666, 682, 867, 869, 873], provide: [(246, true), (301, true), (442, true), (450, true), (462, true), (888, true), (891, true), (372, true), (373, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 94, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 477, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 244, 458, 468, 689, 705, 879, 897, 342, 366, 371, 382, 389, 413, 439, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 94, 473, 477, 524, 602, 604, 632, 720, 830, 856, 992, 246, 301, 442, 450, 462, 888, 891, 372, 373, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 94, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(32, SumMonoid(18116)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 373), fp: EncodedCountingMonoid(9, SumMonoid(2011)) }, Fingerprint { range: Range(373, 653), fp: EncodedCountingMonoid(9, SumMonoid(4562)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 229), fp: EncodedCountingMonoid(10, SumMonoid(1697)) }, Fingerprint { range: Range(229, 373), fp: EncodedCountingMonoid(9, SumMonoid(2655)) }, Fingerprint { range: Range(373, 503), fp: EncodedCountingMonoid(7, SumMonoid(3045)) }, Fingerprint { range: Range(503, 653), fp: EncodedCountingMonoid(6, SumMonoid(3326)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(229, 301), fp: EncodedCountingMonoid(3, SumMonoid(805)) }, Fingerprint { range: Range(301, 373), fp: EncodedCountingMonoid(3, SumMonoid(986)) }, Fingerprint { range: Range(373, 462), fp: EncodedCountingMonoid(3, SumMonoid(1265)) }, Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 94), items: [46, 80], want_response: true }, ItemSet { range: Range(94, 229), items: [94], want_response: true }, ItemSet { range: Range(462, 503), items: [462, 473], want_response: true }, ItemSet { range: Range(503, 604), items: [524, 602], want_response: true }, ItemSet { range: Range(604, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(229, 277), fp: EncodedCountingMonoid(3, SumMonoid(704)) }, Fingerprint { range: Range(373, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 94), items: [], want_response: false }, ItemSet { range: Range(94, 229), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227], want_response: false }, ItemSet { range: Range(462, 503), items: [468, 496], want_response: false }, ItemSet { range: Range(503, 604), items: [503, 509, 523, 527], want_response: false }, ItemSet { range: Range(604, 653), items: [624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(277, 301), items: [277, 282], want_response: true }, ItemSet { range: Range(301, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 373), items: [366, 371], want_response: true }, ItemSet { range: Range(439, 462), items: [439, 458], want_response: true }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 94, 462, 473, 524, 602, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(277, 301), items: [277, 282], want_response: false }, ItemSet { range: Range(301, 366), items: [301, 313], want_response: false }, ItemSet { range: Range(366, 373), items: [372], want_response: false }, ItemSet { range: Range(439, 462), items: [442, 450], want_response: false }, ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(229, 277), items: [246], want_response: true }, ItemSet { range: Range(373, 439), items: [373], want_response: true }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 342, 366, 371, 439, 458, 689, 705, 879, 897], provide: [(46, true), (80, true), (94, true), (462, true), (473, true), (524, true), (602, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(229, 277), items: [229, 231, 244], want_response: false }, ItemSet { range: Range(373, 439), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [301, 372, 442, 450, 888, 891, 246, 373, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (342, true), (366, true), (371, true), (439, true), (458, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [229, 231, 244, 382, 389, 413, 666, 682, 867, 869, 873], provide: [(301, true), (372, true), (442, true), (450, true), (888, true), (891, true), (246, true), (373, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 94, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 524, 602, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 342, 366, 371, 439, 458, 689, 705, 879, 897, 229, 231, 244, 382, 389, 413, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 94, 462, 473, 524, 602, 604, 632, 720, 830, 856, 992, 301, 372, 442, 450, 888, 891, 246, 373, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 94, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 524, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(31, SumMonoid(17514)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 373), fp: EncodedCountingMonoid(9, SumMonoid(2011)) }, Fingerprint { range: Range(373, 653), fp: EncodedCountingMonoid(8, SumMonoid(3960)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 229), fp: EncodedCountingMonoid(10, SumMonoid(1697)) }, Fingerprint { range: Range(229, 373), fp: EncodedCountingMonoid(9, SumMonoid(2655)) }, Fingerprint { range: Range(373, 503), fp: EncodedCountingMonoid(7, SumMonoid(3045)) }, Fingerprint { range: Range(503, 653), fp: EncodedCountingMonoid(6, SumMonoid(3326)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(229, 301), fp: EncodedCountingMonoid(3, SumMonoid(805)) }, Fingerprint { range: Range(301, 373), fp: EncodedCountingMonoid(3, SumMonoid(986)) }, Fingerprint { range: Range(373, 462), fp: EncodedCountingMonoid(3, SumMonoid(1265)) }, Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 94), items: [46, 80], want_response: true }, ItemSet { range: Range(94, 229), items: [94], want_response: true }, ItemSet { range: Range(462, 503), items: [462, 473], want_response: true }, ItemSet { range: Range(503, 632), items: [524, 604], want_response: true }, ItemSet { range: Range(632, 653), items: [632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(229, 277), fp: EncodedCountingMonoid(3, SumMonoid(704)) }, Fingerprint { range: Range(373, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 94), items: [], want_response: false }, ItemSet { range: Range(94, 229), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227], want_response: false }, ItemSet { range: Range(462, 503), items: [468, 496], want_response: false }, ItemSet { range: Range(503, 632), items: [503, 509, 523, 527, 624], want_response: false }, ItemSet { range: Range(632, 653), items: [640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(277, 301), items: [277, 282], want_response: true }, ItemSet { range: Range(301, 366), items: [313, 342], want_response: true }, ItemSet { range: Range(366, 373), items: [366, 371], want_response: true }, ItemSet { range: Range(439, 462), items: [439, 458], want_response: true }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 94, 462, 473, 524, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(277, 301), items: [277, 282], want_response: false }, ItemSet { range: Range(301, 366), items: [301, 313], want_response: false }, ItemSet { range: Range(366, 373), items: [372], want_response: false }, ItemSet { range: Range(439, 462), items: [442, 450], want_response: false }, ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(229, 277), items: [246], want_response: true }, ItemSet { range: Range(373, 439), items: [373], want_response: true }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 342, 366, 371, 439, 458, 689, 705, 879, 897], provide: [(46, true), (80, true), (94, true), (462, true), (473, true), (524, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(229, 277), items: [229, 231, 244], want_response: false }, ItemSet { range: Range(373, 439), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [301, 372, 442, 450, 888, 891, 246, 373, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (342, true), (366, true), (371, true), (439, true), (458, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [229, 231, 244, 382, 389, 413, 666, 682, 867, 869, 873], provide: [(301, true), (372, true), (442, true), (450, true), (888, true), (891, true), (246, true), (373, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 94, 246, 277, 282, 301, 313, 372, 373, 442, 450, 462, 473, 524, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 342, 366, 371, 439, 458, 689, 705, 879, 897, 229, 231, 244, 382, 389, 413, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 94, 462, 473, 524, 604, 632, 720, 830, 856, 992, 301, 372, 442, 450, 888, 891, 246, 373, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 94, 246, 277, 301, 313, 372, 373, 442, 450, 462, 473, 524, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(30, SumMonoid(17232)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 373), fp: EncodedCountingMonoid(8, SumMonoid(1729)) }, Fingerprint { range: Range(373, 653), fp: EncodedCountingMonoid(8, SumMonoid(3960)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 229), fp: EncodedCountingMonoid(10, SumMonoid(1697)) }, Fingerprint { range: Range(229, 373), fp: EncodedCountingMonoid(9, SumMonoid(2655)) }, Fingerprint { range: Range(373, 503), fp: EncodedCountingMonoid(7, SumMonoid(3045)) }, Fingerprint { range: Range(503, 653), fp: EncodedCountingMonoid(6, SumMonoid(3326)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(229, 313), fp: EncodedCountingMonoid(3, SumMonoid(824)) }, Fingerprint { range: Range(373, 462), fp: EncodedCountingMonoid(3, SumMonoid(1265)) }, Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 94), items: [46, 80], want_response: true }, ItemSet { range: Range(94, 229), items: [94], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(462, 503), items: [462, 473], want_response: true }, ItemSet { range: Range(503, 632), items: [524, 604], want_response: true }, ItemSet { range: Range(632, 653), items: [632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(229, 277), fp: EncodedCountingMonoid(3, SumMonoid(704)) }, Fingerprint { range: Range(373, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 94), items: [], want_response: false }, ItemSet { range: Range(94, 229), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(462, 503), items: [468, 496], want_response: false }, ItemSet { range: Range(503, 632), items: [503, 509, 523, 527, 624], want_response: false }, ItemSet { range: Range(632, 653), items: [640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(439, 462), items: [439, 458], want_response: true }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 94, 372, 462, 473, 524, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(277, 313), items: [277, 301], want_response: false }, ItemSet { range: Range(439, 462), items: [442, 450], want_response: false }, ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(229, 277), items: [246], want_response: true }, ItemSet { range: Range(373, 439), items: [373], want_response: true }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 342, 366, 371, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 282, 439, 458, 689, 705, 879, 897], provide: [(46, true), (80, true), (94, true), (372, true), (462, true), (473, true), (524, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(229, 277), items: [229, 231, 244], want_response: false }, ItemSet { range: Range(373, 439), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [301, 442, 450, 888, 891, 246, 373, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (342, true), (366, true), (371, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (282, true), (439, true), (458, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [229, 231, 244, 382, 389, 413, 666, 682, 867, 869, 873], provide: [(301, true), (442, true), (450, true), (888, true), (891, true), (246, true), (373, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 94, 246, 277, 301, 313, 372, 373, 442, 450, 462, 473, 524, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 342, 366, 371, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 282, 439, 458, 689, 705, 879, 897, 229, 231, 244, 382, 389, 413, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 94, 372, 462, 473, 524, 604, 632, 720, 830, 856, 992, 301, 442, 450, 888, 891, 246, 373, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 94, 246, 277, 301, 313, 372, 373, 442, 450, 462, 473, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(29, SumMonoid(16708)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 373), fp: EncodedCountingMonoid(8, SumMonoid(1729)) }, Fingerprint { range: Range(373, 653), fp: EncodedCountingMonoid(7, SumMonoid(3436)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 229), fp: EncodedCountingMonoid(10, SumMonoid(1697)) }, Fingerprint { range: Range(229, 373), fp: EncodedCountingMonoid(9, SumMonoid(2655)) }, Fingerprint { range: Range(373, 503), fp: EncodedCountingMonoid(7, SumMonoid(3045)) }, Fingerprint { range: Range(503, 653), fp: EncodedCountingMonoid(6, SumMonoid(3326)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(229, 313), fp: EncodedCountingMonoid(3, SumMonoid(824)) }, Fingerprint { range: Range(373, 462), fp: EncodedCountingMonoid(3, SumMonoid(1265)) }, Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 94), items: [46, 80], want_response: true }, ItemSet { range: Range(94, 229), items: [94], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(462, 503), items: [462, 473], want_response: true }, ItemSet { range: Range(503, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(229, 277), fp: EncodedCountingMonoid(3, SumMonoid(704)) }, Fingerprint { range: Range(373, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 94), items: [], want_response: false }, ItemSet { range: Range(94, 229), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(462, 503), items: [468, 496], want_response: false }, ItemSet { range: Range(503, 653), items: [503, 509, 523, 527, 624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(439, 462), items: [439, 458], want_response: true }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 94, 372, 462, 473, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(277, 313), items: [277, 301], want_response: false }, ItemSet { range: Range(439, 462), items: [442, 450], want_response: false }, ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(229, 277), items: [246], want_response: true }, ItemSet { range: Range(373, 439), items: [373], want_response: true }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 342, 366, 371, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 282, 439, 458, 689, 705, 879, 897], provide: [(46, true), (80, true), (94, true), (372, true), (462, true), (473, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(229, 277), items: [229, 231, 244], want_response: false }, ItemSet { range: Range(373, 439), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [301, 442, 450, 888, 891, 246, 373, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (342, true), (366, true), (371, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (282, true), (439, true), (458, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [229, 231, 244, 382, 389, 413, 666, 682, 867, 869, 873], provide: [(301, true), (442, true), (450, true), (888, true), (891, true), (246, true), (373, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 94, 246, 277, 301, 313, 372, 373, 442, 450, 462, 473, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 342, 366, 371, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 282, 439, 458, 689, 705, 879, 897, 229, 231, 244, 382, 389, 413, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 94, 372, 462, 473, 604, 632, 720, 830, 856, 992, 301, 442, 450, 888, 891, 246, 373, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 94, 246, 277, 301, 313, 372, 373, 442, 450, 462, 473, 604, 632, 653, 660, 674, 720, 760, 830, 856, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(28, SumMonoid(15842)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 373), fp: EncodedCountingMonoid(8, SumMonoid(1729)) }, Fingerprint { range: Range(373, 653), fp: EncodedCountingMonoid(7, SumMonoid(3436)) }, Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 229), fp: EncodedCountingMonoid(10, SumMonoid(1697)) }, Fingerprint { range: Range(229, 373), fp: EncodedCountingMonoid(9, SumMonoid(2655)) }, Fingerprint { range: Range(373, 503), fp: EncodedCountingMonoid(7, SumMonoid(3045)) }, Fingerprint { range: Range(503, 653), fp: EncodedCountingMonoid(6, SumMonoid(3326)) }, Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(229, 313), fp: EncodedCountingMonoid(3, SumMonoid(824)) }, Fingerprint { range: Range(373, 462), fp: EncodedCountingMonoid(3, SumMonoid(1265)) }, Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(46, 94), items: [46, 80], want_response: true }, ItemSet { range: Range(94, 229), items: [94], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(462, 503), items: [462, 473], want_response: true }, ItemSet { range: Range(503, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 788), items: [720, 760], want_response: true }, ItemSet { range: Range(788, 888), items: [830, 856], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(229, 277), fp: EncodedCountingMonoid(3, SumMonoid(704)) }, Fingerprint { range: Range(373, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }], item_sets: [ItemSet { range: Range(46, 94), items: [], want_response: false }, ItemSet { range: Range(94, 229), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(462, 503), items: [468, 496], want_response: false }, ItemSet { range: Range(503, 653), items: [503, 509, 523, 527, 624, 640], want_response: false }, ItemSet { range: Range(720, 788), items: [737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(439, 462), items: [439, 458], want_response: true }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [46, 80, 94, 372, 462, 473, 604, 632, 720, 830, 856, 921, 931, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(277, 313), items: [277, 301], want_response: false }, ItemSet { range: Range(439, 462), items: [442, 450], want_response: false }, ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }, ItemSet { range: Range(229, 277), items: [246], want_response: true }, ItemSet { range: Range(373, 439), items: [373], want_response: true }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 342, 366, 371, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 282, 439, 458, 689, 705, 897, 902], provide: [(46, true), (80, true), (94, true), (372, true), (462, true), (473, true), (604, true), (632, true), (720, true), (830, true), (856, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(229, 277), items: [229, 231, 244], want_response: false }, ItemSet { range: Range(373, 439), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }], wants: [301, 442, 450, 888, 891, 901, 246, 373, 660, 674], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (342, true), (366, true), (371, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (282, true), (439, true), (458, true), (689, true), (705, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [229, 231, 244, 382, 389, 413, 666, 682], provide: [(301, true), (442, true), (450, true), (888, true), (891, true), (901, true), (246, true), (373, true), (660, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (666, true), (682, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 94, 246, 277, 301, 313, 372, 373, 442, 450, 462, 473, 604, 632, 653, 660, 674, 720, 760, 830, 856, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 342, 366, 371, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 282, 439, 458, 689, 705, 897, 902, 229, 231, 244, 382, 389, 413, 666, 682]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 94, 372, 462, 473, 604, 632, 720, 830, 856, 921, 931, 992, 301, 442, 450, 888, 891, 901, 246, 373, 660, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 46, 80, 94, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 301, 313, 342, 366, 371, 372, 373, 382, 389, 413, 439, 442, 450, 458, 462, 468, 473, 496, 503, 509, 523, 527, 604, 624, 632, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 46, 80, 94, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 301, 313, 342, 366, 371, 372, 373, 382, 389, 413, 439, 442, 450, 458, 462, 468, 473, 496, 503, 509, 523, 527, 604, 624, 632, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 46, 80, 94, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 301, 313, 342, 366, 371, 372, 373, 382, 389, 413, 439, 442, 450, 458, 462, 468, 473, 496, 503, 509, 523, 527, 604, 624, 632, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 94, 246, 277, 301, 313, 372, 373, 442, 450, 462, 473, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(29, SumMonoid(16708)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 373), fp: EncodedCountingMonoid(8, SumMonoid(1729)) }, Fingerprint { range: Range(373, 653), fp: EncodedCountingMonoid(7, SumMonoid(3436)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 229), fp: EncodedCountingMonoid(10, SumMonoid(1697)) }, Fingerprint { range: Range(229, 373), fp: EncodedCountingMonoid(9, SumMonoid(2655)) }, Fingerprint { range: Range(373, 503), fp: EncodedCountingMonoid(7, SumMonoid(3045)) }, Fingerprint { range: Range(503, 653), fp: EncodedCountingMonoid(6, SumMonoid(3326)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(229, 313), fp: EncodedCountingMonoid(3, SumMonoid(824)) }, Fingerprint { range: Range(373, 462), fp: EncodedCountingMonoid(3, SumMonoid(1265)) }, Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 94), items: [46, 80], want_response: true }, ItemSet { range: Range(94, 229), items: [94], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(462, 503), items: [462, 473], want_response: true }, ItemSet { range: Range(503, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(229, 277), fp: EncodedCountingMonoid(3, SumMonoid(704)) }, Fingerprint { range: Range(373, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 94), items: [], want_response: false }, ItemSet { range: Range(94, 229), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(462, 503), items: [468, 496], want_response: false }, ItemSet { range: Range(503, 653), items: [503, 509, 523, 527, 624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(277, 313), items: [277, 282], want_response: true }, ItemSet { range: Range(439, 462), items: [439, 458], want_response: true }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 94, 372, 462, 473, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(277, 313), items: [277, 301], want_response: false }, ItemSet { range: Range(439, 462), items: [442, 450], want_response: false }, ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(229, 277), items: [246], want_response: true }, ItemSet { range: Range(373, 439), items: [373], want_response: true }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 342, 366, 371, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 282, 439, 458, 689, 705, 879, 897], provide: [(46, true), (80, true), (94, true), (372, true), (462, true), (473, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(229, 277), items: [229, 231, 244], want_response: false }, ItemSet { range: Range(373, 439), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [301, 442, 450, 888, 891, 246, 373, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (342, true), (366, true), (371, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (282, true), (439, true), (458, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [229, 231, 244, 382, 389, 413, 666, 682, 867, 869, 873], provide: [(301, true), (442, true), (450, true), (888, true), (891, true), (246, true), (373, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(229, true), (231, true), (244, true), (382, true), (389, true), (413, true), (666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 94, 246, 277, 301, 313, 372, 373, 442, 450, 462, 473, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 342, 366, 371, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 282, 439, 458, 689, 705, 879, 897, 229, 231, 244, 382, 389, 413, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 94, 372, 462, 473, 604, 632, 720, 830, 856, 992, 301, 442, 450, 888, 891, 246, 373, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 94, 246, 301, 313, 372, 373, 442, 450, 462, 473, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(28, SumMonoid(16431)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 373), fp: EncodedCountingMonoid(7, SumMonoid(1452)) }, Fingerprint { range: Range(373, 653), fp: EncodedCountingMonoid(7, SumMonoid(3436)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 229), fp: EncodedCountingMonoid(10, SumMonoid(1697)) }, Fingerprint { range: Range(229, 373), fp: EncodedCountingMonoid(9, SumMonoid(2655)) }, Fingerprint { range: Range(373, 503), fp: EncodedCountingMonoid(7, SumMonoid(3045)) }, Fingerprint { range: Range(503, 653), fp: EncodedCountingMonoid(6, SumMonoid(3326)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(373, 462), fp: EncodedCountingMonoid(3, SumMonoid(1265)) }, Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 94), items: [46, 80], want_response: true }, ItemSet { range: Range(94, 229), items: [94], want_response: true }, ItemSet { range: Range(229, 313), items: [246, 301], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(462, 503), items: [462, 473], want_response: true }, ItemSet { range: Range(503, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(373, 439), fp: EncodedCountingMonoid(3, SumMonoid(1184)) }, Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 94), items: [], want_response: false }, ItemSet { range: Range(94, 229), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227], want_response: false }, ItemSet { range: Range(229, 313), items: [229, 231, 244, 277, 282], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(462, 503), items: [468, 496], want_response: false }, ItemSet { range: Range(503, 653), items: [503, 509, 523, 527, 624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(439, 462), items: [439, 458], want_response: true }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 94, 246, 301, 372, 462, 473, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(439, 462), items: [442, 450], want_response: false }, ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(373, 439), items: [373], want_response: true }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 342, 366, 371, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 439, 458, 689, 705, 879, 897], provide: [(46, true), (80, true), (94, true), (246, true), (301, true), (372, true), (462, true), (473, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(373, 439), items: [382, 389, 413], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [442, 450, 888, 891, 373, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (342, true), (366, true), (371, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (439, true), (458, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [382, 389, 413, 666, 682, 867, 869, 873], provide: [(442, true), (450, true), (888, true), (891, true), (373, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(382, true), (389, true), (413, true), (666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 94, 246, 301, 313, 372, 373, 442, 450, 462, 473, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 342, 366, 371, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 439, 458, 689, 705, 879, 897, 382, 389, 413, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 94, 246, 301, 372, 462, 473, 604, 632, 720, 830, 856, 992, 442, 450, 888, 891, 373, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 94, 246, 301, 313, 372, 373, 442, 462, 473, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(27, SumMonoid(15981)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 373), fp: EncodedCountingMonoid(7, SumMonoid(1452)) }, Fingerprint { range: Range(373, 653), fp: EncodedCountingMonoid(6, SumMonoid(2986)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 229), fp: EncodedCountingMonoid(10, SumMonoid(1697)) }, Fingerprint { range: Range(229, 373), fp: EncodedCountingMonoid(9, SumMonoid(2655)) }, Fingerprint { range: Range(373, 503), fp: EncodedCountingMonoid(7, SumMonoid(3045)) }, Fingerprint { range: Range(503, 653), fp: EncodedCountingMonoid(6, SumMonoid(3326)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 94), items: [46, 80], want_response: true }, ItemSet { range: Range(94, 229), items: [94], want_response: true }, ItemSet { range: Range(229, 313), items: [246, 301], want_response: true }, ItemSet { range: Range(313, 373), items: [313, 372], want_response: true }, ItemSet { range: Range(373, 462), items: [373, 442], want_response: true }, ItemSet { range: Range(462, 503), items: [462, 473], want_response: true }, ItemSet { range: Range(503, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 94), items: [], want_response: false }, ItemSet { range: Range(94, 229), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227], want_response: false }, ItemSet { range: Range(229, 313), items: [229, 231, 244, 277, 282], want_response: false }, ItemSet { range: Range(313, 373), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(373, 462), items: [382, 389, 413, 439, 458], want_response: false }, ItemSet { range: Range(462, 503), items: [468, 496], want_response: false }, ItemSet { range: Range(503, 653), items: [503, 509, 523, 527, 624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 94, 246, 301, 372, 373, 442, 462, 473, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897], provide: [(46, true), (80, true), (94, true), (246, true), (301, true), (372, true), (373, true), (442, true), (462, true), (473, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 94, 246, 301, 313, 372, 373, 442, 462, 473, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 94, 246, 301, 372, 373, 442, 462, 473, 604, 632, 720, 830, 856, 992, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 94, 246, 301, 313, 372, 442, 462, 473, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(26, SumMonoid(15608)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 372), fp: EncodedCountingMonoid(6, SumMonoid(1080)) }, Fingerprint { range: Range(372, 653), fp: EncodedCountingMonoid(6, SumMonoid(2985)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 229), fp: EncodedCountingMonoid(10, SumMonoid(1697)) }, Fingerprint { range: Range(229, 372), fp: EncodedCountingMonoid(9, SumMonoid(2655)) }, Fingerprint { range: Range(372, 503), fp: EncodedCountingMonoid(7, SumMonoid(3045)) }, Fingerprint { range: Range(503, 653), fp: EncodedCountingMonoid(6, SumMonoid(3326)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 94), items: [46, 80], want_response: true }, ItemSet { range: Range(94, 229), items: [94], want_response: true }, ItemSet { range: Range(229, 313), items: [246, 301], want_response: true }, ItemSet { range: Range(313, 372), items: [313], want_response: true }, ItemSet { range: Range(372, 462), items: [372, 442], want_response: true }, ItemSet { range: Range(462, 503), items: [462, 473], want_response: true }, ItemSet { range: Range(503, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 94), items: [], want_response: false }, ItemSet { range: Range(94, 229), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227], want_response: false }, ItemSet { range: Range(229, 313), items: [229, 231, 244, 277, 282], want_response: false }, ItemSet { range: Range(313, 372), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(372, 462), items: [382, 389, 413, 439, 458], want_response: false }, ItemSet { range: Range(462, 503), items: [468, 496], want_response: false }, ItemSet { range: Range(503, 653), items: [503, 509, 523, 527, 624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 94, 246, 301, 372, 442, 462, 473, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897], provide: [(46, true), (80, true), (94, true), (246, true), (301, true), (372, true), (442, true), (462, true), (473, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 94, 246, 301, 313, 372, 442, 462, 473, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 94, 246, 301, 372, 442, 462, 473, 604, 632, 720, 830, 856, 992, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 94, 246, 301, 313, 372, 462, 473, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(25, SumMonoid(15166)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 372), fp: EncodedCountingMonoid(6, SumMonoid(1080)) }, Fingerprint { range: Range(372, 653), fp: EncodedCountingMonoid(5, SumMonoid(2543)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 229), fp: EncodedCountingMonoid(10, SumMonoid(1697)) }, Fingerprint { range: Range(229, 372), fp: EncodedCountingMonoid(9, SumMonoid(2655)) }, Fingerprint { range: Range(372, 503), fp: EncodedCountingMonoid(7, SumMonoid(3045)) }, Fingerprint { range: Range(503, 653), fp: EncodedCountingMonoid(6, SumMonoid(3326)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 94), items: [46, 80], want_response: true }, ItemSet { range: Range(94, 229), items: [94], want_response: true }, ItemSet { range: Range(229, 313), items: [246, 301], want_response: true }, ItemSet { range: Range(313, 372), items: [313], want_response: true }, ItemSet { range: Range(372, 473), items: [372, 462], want_response: true }, ItemSet { range: Range(473, 503), items: [473], want_response: true }, ItemSet { range: Range(503, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 94), items: [], want_response: false }, ItemSet { range: Range(94, 229), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227], want_response: false }, ItemSet { range: Range(229, 313), items: [229, 231, 244, 277, 282], want_response: false }, ItemSet { range: Range(313, 372), items: [313, 342, 366, 371], want_response: false }, ItemSet { range: Range(372, 473), items: [382, 389, 413, 439, 458, 468], want_response: false }, ItemSet { range: Range(473, 503), items: [496], want_response: false }, ItemSet { range: Range(503, 653), items: [503, 509, 523, 527, 624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 94, 246, 301, 372, 462, 473, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897], provide: [(46, true), (80, true), (94, true), (246, true), (301, true), (372, true), (462, true), (473, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 94, 246, 301, 313, 372, 462, 473, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 94, 246, 301, 372, 462, 473, 604, 632, 720, 830, 856, 992, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 94, 246, 301, 313, 372, 462, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(24, SumMonoid(14693)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 313), fp: EncodedCountingMonoid(5, SumMonoid(767)) }, Fingerprint { range: Range(313, 653), fp: EncodedCountingMonoid(5, SumMonoid(2383)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 223), fp: EncodedCountingMonoid(8, SumMonoid(1247)) }, Fingerprint { range: Range(223, 313), fp: EncodedCountingMonoid(7, SumMonoid(1713)) }, Fingerprint { range: Range(313, 468), fp: EncodedCountingMonoid(9, SumMonoid(3473)) }, Fingerprint { range: Range(468, 653), fp: EncodedCountingMonoid(8, SumMonoid(4290)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 94), items: [46, 80], want_response: true }, ItemSet { range: Range(94, 223), items: [94], want_response: true }, ItemSet { range: Range(223, 313), items: [246, 301], want_response: true }, ItemSet { range: Range(313, 462), items: [313, 372], want_response: true }, ItemSet { range: Range(462, 468), items: [462], want_response: true }, ItemSet { range: Range(468, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 94), items: [], want_response: false }, ItemSet { range: Range(94, 223), items: [102, 105, 143, 153, 165, 167, 203, 209], want_response: false }, ItemSet { range: Range(223, 313), items: [223, 227, 229, 231, 244, 277, 282], want_response: false }, ItemSet { range: Range(313, 462), items: [313, 342, 366, 371, 382, 389, 413, 439, 458], want_response: false }, ItemSet { range: Range(462, 468), items: [], want_response: false }, ItemSet { range: Range(468, 653), items: [468, 496, 503, 509, 523, 527, 624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 94, 246, 301, 372, 462, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897], provide: [(46, true), (80, true), (94, true), (246, true), (301, true), (372, true), (462, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 94, 246, 301, 313, 372, 462, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 94, 246, 301, 372, 462, 604, 632, 720, 830, 856, 992, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 94, 246, 301, 372, 462, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(23, SumMonoid(14380)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 372), fp: EncodedCountingMonoid(5, SumMonoid(767)) }, Fingerprint { range: Range(372, 653), fp: EncodedCountingMonoid(4, SumMonoid(2070)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 229), fp: EncodedCountingMonoid(10, SumMonoid(1697)) }, Fingerprint { range: Range(229, 372), fp: EncodedCountingMonoid(9, SumMonoid(2655)) }, Fingerprint { range: Range(372, 503), fp: EncodedCountingMonoid(7, SumMonoid(3045)) }, Fingerprint { range: Range(503, 653), fp: EncodedCountingMonoid(6, SumMonoid(3326)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 94), items: [46, 80], want_response: true }, ItemSet { range: Range(94, 229), items: [94], want_response: true }, ItemSet { range: Range(229, 372), items: [246, 301], want_response: true }, ItemSet { range: Range(372, 503), items: [372, 462], want_response: true }, ItemSet { range: Range(503, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 94), items: [], want_response: false }, ItemSet { range: Range(94, 229), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227], want_response: false }, ItemSet { range: Range(229, 372), items: [229, 231, 244, 277, 282, 313, 342, 366, 371], want_response: false }, ItemSet { range: Range(372, 503), items: [382, 389, 413, 439, 458, 468, 496], want_response: false }, ItemSet { range: Range(503, 653), items: [503, 509, 523, 527, 624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 94, 246, 301, 372, 462, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897], provide: [(46, true), (80, true), (94, true), (246, true), (301, true), (372, true), (462, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 94, 246, 301, 372, 462, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 94, 246, 301, 372, 462, 604, 632, 720, 830, 856, 992, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 94, 246, 372, 462, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(22, SumMonoid(14079)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 372), fp: EncodedCountingMonoid(4, SumMonoid(466)) }, Fingerprint { range: Range(372, 653), fp: EncodedCountingMonoid(4, SumMonoid(2070)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 229), fp: EncodedCountingMonoid(10, SumMonoid(1697)) }, Fingerprint { range: Range(229, 372), fp: EncodedCountingMonoid(9, SumMonoid(2655)) }, Fingerprint { range: Range(372, 503), fp: EncodedCountingMonoid(7, SumMonoid(3045)) }, Fingerprint { range: Range(503, 653), fp: EncodedCountingMonoid(6, SumMonoid(3326)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 94), items: [46, 80], want_response: true }, ItemSet { range: Range(94, 229), items: [94], want_response: true }, ItemSet { range: Range(229, 372), items: [246], want_response: true }, ItemSet { range: Range(372, 503), items: [372, 462], want_response: true }, ItemSet { range: Range(503, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 94), items: [], want_response: false }, ItemSet { range: Range(94, 229), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227], want_response: false }, ItemSet { range: Range(229, 372), items: [229, 231, 244, 277, 282, 313, 342, 366, 371], want_response: false }, ItemSet { range: Range(372, 503), items: [382, 389, 413, 439, 458, 468, 496], want_response: false }, ItemSet { range: Range(503, 653), items: [503, 509, 523, 527, 624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 94, 246, 372, 462, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897], provide: [(46, true), (80, true), (94, true), (246, true), (372, true), (462, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 94, 246, 372, 462, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 94, 246, 372, 462, 604, 632, 720, 830, 856, 992, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 246, 372, 462, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(21, SumMonoid(13985)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 462), fp: EncodedCountingMonoid(4, SumMonoid(744)) }, Fingerprint { range: Range(462, 653), fp: EncodedCountingMonoid(3, SumMonoid(1698)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 244), fp: EncodedCountingMonoid(12, SumMonoid(2157)) }, Fingerprint { range: Range(244, 462), fp: EncodedCountingMonoid(12, SumMonoid(4276)) }, Fingerprint { range: Range(462, 523), fp: EncodedCountingMonoid(4, SumMonoid(1976)) }, Fingerprint { range: Range(523, 653), fp: EncodedCountingMonoid(4, SumMonoid(2314)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 244), items: [46, 80], want_response: true }, ItemSet { range: Range(244, 462), items: [246, 372], want_response: true }, ItemSet { range: Range(462, 523), items: [462], want_response: true }, ItemSet { range: Range(523, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 244), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231], want_response: false }, ItemSet { range: Range(244, 462), items: [244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458], want_response: false }, ItemSet { range: Range(462, 523), items: [468, 496, 503, 509], want_response: false }, ItemSet { range: Range(523, 653), items: [523, 527, 624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 246, 372, 462, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897], provide: [(46, true), (80, true), (246, true), (372, true), (462, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 246, 372, 462, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 246, 372, 462, 604, 632, 720, 830, 856, 992, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 246, 372, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(20, SumMonoid(13523)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 372), fp: EncodedCountingMonoid(3, SumMonoid(372)) }, Fingerprint { range: Range(372, 653), fp: EncodedCountingMonoid(3, SumMonoid(1608)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 229), fp: EncodedCountingMonoid(10, SumMonoid(1697)) }, Fingerprint { range: Range(229, 372), fp: EncodedCountingMonoid(9, SumMonoid(2655)) }, Fingerprint { range: Range(372, 503), fp: EncodedCountingMonoid(7, SumMonoid(3045)) }, Fingerprint { range: Range(503, 653), fp: EncodedCountingMonoid(6, SumMonoid(3326)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 229), items: [46, 80], want_response: true }, ItemSet { range: Range(229, 372), items: [246], want_response: true }, ItemSet { range: Range(372, 503), items: [372], want_response: true }, ItemSet { range: Range(503, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 229), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227], want_response: false }, ItemSet { range: Range(229, 372), items: [229, 231, 244, 277, 282, 313, 342, 366, 371], want_response: false }, ItemSet { range: Range(372, 503), items: [382, 389, 413, 439, 458, 468, 496], want_response: false }, ItemSet { range: Range(503, 653), items: [503, 509, 523, 527, 624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 246, 372, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897], provide: [(46, true), (80, true), (246, true), (372, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 246, 372, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 246, 372, 604, 632, 720, 830, 856, 992, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 246, 372, 604, 632, 653, 660, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(19, SumMonoid(12849)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 372), fp: EncodedCountingMonoid(3, SumMonoid(372)) }, Fingerprint { range: Range(372, 653), fp: EncodedCountingMonoid(3, SumMonoid(1608)) }, Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5345)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 229), fp: EncodedCountingMonoid(10, SumMonoid(1697)) }, Fingerprint { range: Range(229, 372), fp: EncodedCountingMonoid(9, SumMonoid(2655)) }, Fingerprint { range: Range(372, 503), fp: EncodedCountingMonoid(7, SumMonoid(3045)) }, Fingerprint { range: Range(503, 653), fp: EncodedCountingMonoid(6, SumMonoid(3326)) }, Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(46, 229), items: [46, 80], want_response: true }, ItemSet { range: Range(229, 372), items: [246], want_response: true }, ItemSet { range: Range(372, 503), items: [372], want_response: true }, ItemSet { range: Range(503, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(653, 720), items: [653, 660], want_response: true }, ItemSet { range: Range(720, 788), items: [720, 760], want_response: true }, ItemSet { range: Range(788, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(866, 888), items: [866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(46, 229), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227], want_response: false }, ItemSet { range: Range(229, 372), items: [229, 231, 244, 277, 282, 313, 342, 366, 371], want_response: false }, ItemSet { range: Range(372, 503), items: [382, 389, 413, 439, 458, 468, 496], want_response: false }, ItemSet { range: Range(503, 653), items: [503, 509, 523, 527, 624, 640], want_response: false }, ItemSet { range: Range(653, 720), items: [653, 666, 682, 689, 705], want_response: false }, ItemSet { range: Range(720, 788), items: [737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 866), items: [788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(866, 888), items: [867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [46, 80, 246, 372, 604, 632, 660, 720, 830, 856, 866, 921, 931, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 666, 682, 689, 705, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 897, 902], provide: [(46, true), (80, true), (246, true), (372, true), (604, true), (632, true), (660, true), (720, true), (830, true), (856, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [888, 891, 901], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(888, true), (891, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 246, 372, 604, 632, 653, 660, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 666, 682, 689, 705, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 246, 372, 604, 632, 660, 720, 830, 856, 866, 921, 931, 992, 888, 891, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 46, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 313, 342, 366, 371, 372, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 604, 624, 632, 640, 653, 660, 666, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 46, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 313, 342, 366, 371, 372, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 604, 624, 632, 640, 653, 660, 666, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 46, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 313, 342, 366, 371, 372, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 604, 624, 632, 640, 653, 660, 666, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 246, 372, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(20, SumMonoid(13523)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 372), fp: EncodedCountingMonoid(3, SumMonoid(372)) }, Fingerprint { range: Range(372, 653), fp: EncodedCountingMonoid(3, SumMonoid(1608)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 229), fp: EncodedCountingMonoid(10, SumMonoid(1697)) }, Fingerprint { range: Range(229, 372), fp: EncodedCountingMonoid(9, SumMonoid(2655)) }, Fingerprint { range: Range(372, 503), fp: EncodedCountingMonoid(7, SumMonoid(3045)) }, Fingerprint { range: Range(503, 653), fp: EncodedCountingMonoid(6, SumMonoid(3326)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 229), items: [46, 80], want_response: true }, ItemSet { range: Range(229, 372), items: [246], want_response: true }, ItemSet { range: Range(372, 503), items: [372], want_response: true }, ItemSet { range: Range(503, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 229), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227], want_response: false }, ItemSet { range: Range(229, 372), items: [229, 231, 244, 277, 282, 313, 342, 366, 371], want_response: false }, ItemSet { range: Range(372, 503), items: [382, 389, 413, 439, 458, 468, 496], want_response: false }, ItemSet { range: Range(503, 653), items: [503, 509, 523, 527, 624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 246, 372, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897], provide: [(46, true), (80, true), (246, true), (372, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 246, 372, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 246, 372, 604, 632, 720, 830, 856, 992, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 246, 372, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 932), fp: EncodedCountingMonoid(19, SumMonoid(12531)) }], item_sets: [ItemSet { range: Range(932, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 523), fp: EncodedCountingMonoid(28, SumMonoid(8409)) }, Fingerprint { range: Range(523, 932), fp: EncodedCountingMonoid(28, SumMonoid(21631)) }], item_sets: [ItemSet { range: Range(932, 46), items: [947, 953, 954, 969, 970, 973, 990, 996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(523, 856), fp: EncodedCountingMonoid(8, SumMonoid(5533)) }, Fingerprint { range: Range(856, 932), fp: EncodedCountingMonoid(7, SumMonoid(6254)) }], item_sets: [ItemSet { range: Range(46, 246), items: [46, 80], want_response: true }, ItemSet { range: Range(246, 523), items: [246, 372], want_response: true }], wants: [947, 953, 954, 969, 970, 973, 990, 996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(523, 742), fp: EncodedCountingMonoid(10, SumMonoid(6446)) }, Fingerprint { range: Range(742, 856), fp: EncodedCountingMonoid(9, SumMonoid(7185)) }, Fingerprint { range: Range(856, 897), fp: EncodedCountingMonoid(5, SumMonoid(4350)) }, Fingerprint { range: Range(897, 932), fp: EncodedCountingMonoid(4, SumMonoid(3650)) }], item_sets: [ItemSet { range: Range(46, 246), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244], want_response: false }, ItemSet { range: Range(246, 523), items: [277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509], want_response: false }], wants: [46, 80, 246, 372], provide: [(947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(523, 660), fp: EncodedCountingMonoid(3, SumMonoid(1889)) }, Fingerprint { range: Range(660, 742), fp: EncodedCountingMonoid(3, SumMonoid(2054)) }], item_sets: [ItemSet { range: Range(742, 856), items: [760, 830], want_response: true }, ItemSet { range: Range(856, 888), items: [856, 866], want_response: true }, ItemSet { range: Range(888, 897), items: [888, 891], want_response: true }, ItemSet { range: Range(897, 931), items: [901, 921], want_response: true }, ItemSet { range: Range(931, 932), items: [931], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509], provide: [(46, true), (80, true), (246, true), (372, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(523, 640), fp: EncodedCountingMonoid(3, SumMonoid(1674)) }, Fingerprint { range: Range(660, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }], item_sets: [ItemSet { range: Range(742, 856), items: [742, 760, 772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(856, 888), items: [862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(888, 897), items: [], want_response: false }, ItemSet { range: Range(897, 931), items: [897, 902, 925, 926], want_response: false }, ItemSet { range: Range(931, 932), items: [], want_response: false }, ItemSet { range: Range(640, 660), items: [640, 653], want_response: true }, ItemSet { range: Range(705, 742), items: [705, 737], want_response: true }], wants: [830, 856, 866, 888, 891, 901, 921, 931], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 660), items: [653], want_response: false }, ItemSet { range: Range(705, 742), items: [720], want_response: false }, ItemSet { range: Range(523, 640), items: [604, 632], want_response: true }, ItemSet { range: Range(660, 705), items: [660, 674], want_response: true }], wants: [742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 640, 705, 737], provide: [(830, true), (856, true), (866, true), (888, true), (891, true), (901, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(523, 640), items: [523, 527, 624], want_response: false }, ItemSet { range: Range(660, 705), items: [666, 682, 689], want_response: false }], wants: [720, 604, 632, 660, 674], provide: [(742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true), (925, true), (926, true), (640, true), (705, true), (737, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [523, 527, 624, 666, 682, 689], provide: [(720, true), (604, true), (632, true), (660, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(523, true), (527, true), (624, true), (666, true), (682, true), (689, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 246, 372, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931} + [947, 953, 954, 969, 970, 973, 990, 996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 640, 705, 737, 523, 527, 624, 666, 682, 689]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 246, 372, 830, 856, 866, 888, 891, 901, 921, 931, 720, 604, 632, 660, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 46, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 313, 342, 366, 371, 372, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 604, 624, 632, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 46, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 313, 342, 366, 371, 372, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 604, 624, 632, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 46, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 313, 342, 366, 371, 372, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 604, 624, 632, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 246, 372, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(20, SumMonoid(13523)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 372), fp: EncodedCountingMonoid(3, SumMonoid(372)) }, Fingerprint { range: Range(372, 653), fp: EncodedCountingMonoid(3, SumMonoid(1608)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 229), fp: EncodedCountingMonoid(10, SumMonoid(1697)) }, Fingerprint { range: Range(229, 372), fp: EncodedCountingMonoid(9, SumMonoid(2655)) }, Fingerprint { range: Range(372, 503), fp: EncodedCountingMonoid(7, SumMonoid(3045)) }, Fingerprint { range: Range(503, 653), fp: EncodedCountingMonoid(6, SumMonoid(3326)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [], wants: [], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 229), items: [46, 80], want_response: true }, ItemSet { range: Range(229, 372), items: [246], want_response: true }, ItemSet { range: Range(372, 503), items: [372], want_response: true }, ItemSet { range: Range(503, 653), items: [604, 632], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 229), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227], want_response: false }, ItemSet { range: Range(229, 372), items: [229, 231, 244, 277, 282, 313, 342, 366, 371], want_response: false }, ItemSet { range: Range(372, 503), items: [382, 389, 413, 439, 458, 468, 496], want_response: false }, ItemSet { range: Range(503, 653), items: [503, 509, 523, 527, 624, 640], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 246, 372, 604, 632, 720, 830, 856, 992], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897], provide: [(46, true), (80, true), (246, true), (372, true), (604, true), (632, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 246, 372, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [46, 80, 246, 372, 604, 632, 720, 830, 856, 992, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {46, 80, 246, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 993), fp: EncodedCountingMonoid(19, SumMonoid(13151)) }], item_sets: [ItemSet { range: Range(993, 46), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 46), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(46, 604), fp: EncodedCountingMonoid(3, SumMonoid(372)) }, Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(604, 653), items: [604, 632], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(46, 313), fp: EncodedCountingMonoid(15, SumMonoid(2960)) }, Fingerprint { range: Range(313, 604), fp: EncodedCountingMonoid(15, SumMonoid(6499)) }, Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(604, 653), items: [624, 640], want_response: false }], wants: [604, 632], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(46, 246), items: [46, 80], want_response: true }, ItemSet { range: Range(246, 313), items: [246], want_response: true }, ItemSet { range: Range(313, 604), items: [], want_response: true }, ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [624, 640], provide: [(604, true), (632, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(46, 246), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244], want_response: false }, ItemSet { range: Range(246, 313), items: [277, 282], want_response: false }, ItemSet { range: Range(313, 604), items: [313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527], want_response: false }, ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [46, 80, 246, 720, 830, 856, 992], provide: [(624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897], provide: [(46, true), (80, true), (246, true), (720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 660, 674, 866], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {46, 80, 246, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 624, 640, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [604, 632, 46, 80, 246, 720, 830, 856, 992, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 246, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(18, SumMonoid(13105)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 604), items: [80, 246], want_response: true }, ItemSet { range: Range(604, 653), items: [604, 632], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 604), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527], want_response: false }, ItemSet { range: Range(604, 653), items: [624, 640], want_response: false }], wants: [80, 246, 604, 632], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (246, true), (604, true), (632, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [720, 830, 856, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897], provide: [(720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 660, 674, 866], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 246, 604, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 246, 604, 632, 720, 830, 856, 992, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 246, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(17, SumMonoid(12501)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 632), items: [80, 246], want_response: true }, ItemSet { range: Range(632, 653), items: [632], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 632), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }, ItemSet { range: Range(632, 653), items: [640], want_response: false }], wants: [80, 246, 632], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (246, true), (632, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [720, 830, 856, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897], provide: [(720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 660, 674, 866], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 246, 632, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 246, 632, 720, 830, 856, 992, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 246, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(16, SumMonoid(11869)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 246], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 246], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (246, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [720, 830, 856, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897], provide: [(720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 660, 674, 866], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 246, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 246, 720, 830, 856, 992, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {246, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(246, 993), fp: EncodedCountingMonoid(15, SumMonoid(11789)) }], item_sets: [ItemSet { range: Range(993, 246), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(246, 742), fp: EncodedCountingMonoid(25, SumMonoid(12454)) }, Fingerprint { range: Range(742, 993), fp: EncodedCountingMonoid(25, SumMonoid(21941)) }], item_sets: [ItemSet { range: Range(993, 246), items: [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(246, 674), fp: EncodedCountingMonoid(3, SumMonoid(1559)) }, Fingerprint { range: Range(742, 891), fp: EncodedCountingMonoid(5, SumMonoid(4200)) }, Fingerprint { range: Range(891, 993), fp: EncodedCountingMonoid(5, SumMonoid(4636)) }], item_sets: [ItemSet { range: Range(674, 742), items: [674, 720], want_response: true }], wants: [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(246, 468), fp: EncodedCountingMonoid(11, SumMonoid(4032)) }, Fingerprint { range: Range(468, 674), fp: EncodedCountingMonoid(10, SumMonoid(5609)) }, Fingerprint { range: Range(742, 847), fp: EncodedCountingMonoid(7, SumMonoid(5484)) }, Fingerprint { range: Range(847, 891), fp: EncodedCountingMonoid(7, SumMonoid(6051)) }, Fingerprint { range: Range(891, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(674, 742), items: [682, 689, 705, 737], want_response: false }], wants: [674, 720], provide: [(996, true), (10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(246, 468), items: [246], want_response: true }, ItemSet { range: Range(468, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(742, 847), items: [760, 830], want_response: true }, ItemSet { range: Range(847, 888), items: [856, 866], want_response: true }, ItemSet { range: Range(888, 891), items: [888], want_response: true }, ItemSet { range: Range(891, 921), items: [891, 901], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [682, 689, 705, 737], provide: [(674, true), (720, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(246, 468), items: [277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458], want_response: false }, ItemSet { range: Range(468, 674), items: [468, 496, 503, 509, 523, 527, 624, 640, 653, 666], want_response: false }, ItemSet { range: Range(742, 847), items: [742, 760, 772, 777, 788, 807, 838], want_response: false }, ItemSet { range: Range(847, 888), items: [847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(888, 891), items: [], want_response: false }, ItemSet { range: Range(891, 921), items: [897, 902], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }], wants: [246, 660, 830, 856, 866, 888, 891, 901, 921, 931, 992], provide: [(682, true), (689, true), (705, true), (737, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 666, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(246, true), (660, true), (830, true), (856, true), (866, true), (888, true), (891, true), (901, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (666, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {246, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 682, 689, 705, 737, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 666, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [674, 720, 246, 660, 830, 856, 866, 888, 891, 901, 921, 931, 992]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 246, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(16, SumMonoid(11869)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 246], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 246], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (246, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [720, 830, 856, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897], provide: [(720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 660, 674, 866], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 246, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 246, 720, 830, 856, 992, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 246, 653, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11209)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5359)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 246], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 246], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(653, 720), items: [653, 674], want_response: true }, ItemSet { range: Range(720, 788), items: [720, 760], want_response: true }, ItemSet { range: Range(788, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(866, 888), items: [866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (246, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 720), items: [653, 666, 682, 689, 705], want_response: false }, ItemSet { range: Range(720, 788), items: [737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 866), items: [788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(866, 888), items: [867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [674, 720, 830, 856, 866, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }], wants: [666, 682, 689, 705, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 897, 902], provide: [(674, true), (720, true), (830, true), (856, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [888, 891, 901], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(888, true), (891, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 246, 653, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 666, 682, 689, 705, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 246, 674, 720, 830, 856, 866, 921, 931, 992, 888, 891, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 246, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 246, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(16, SumMonoid(11869)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 246], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 246], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (246, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [720, 830, 856, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897], provide: [(720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 660, 674, 866], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 246, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 246, 720, 830, 856, 992, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11623)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [720, 830, 856, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897], provide: [(720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 660, 674, 866], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 720, 830, 856, 992, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 451, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11173)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(6, SumMonoid(5489)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 451], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 451], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 921), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }], item_sets: [ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (451, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }], wants: [720, 830, 856, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(879, 921), items: [888, 891], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705], provide: [(720, true), (830, true), (856, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [660, 674, 866, 888, 891], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873, 879, 897, 902], provide: [(660, true), (674, true), (866, true), (888, true), (891, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 451, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 666, 682, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 451, 720, 830, 856, 921, 931, 992, 660, 674, 866, 888, 891]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 451, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 451, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 451, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 660, 674, 676, 720, 760, 830, 856, 866, 888, 891, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11398)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 856), fp: EncodedCountingMonoid(7, SumMonoid(4973)) }, Fingerprint { range: Range(856, 993), fp: EncodedCountingMonoid(7, SumMonoid(6345)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 856), fp: EncodedCountingMonoid(7, SumMonoid(5683)) }, Fingerprint { range: Range(856, 926), fp: EncodedCountingMonoid(8, SumMonoid(7074)) }, Fingerprint { range: Range(926, 993), fp: EncodedCountingMonoid(8, SumMonoid(7682)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 676), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(676, 772), fp: EncodedCountingMonoid(3, SumMonoid(2156)) }, Fingerprint { range: Range(856, 891), fp: EncodedCountingMonoid(3, SumMonoid(2610)) }], item_sets: [ItemSet { range: Range(772, 856), items: [830], want_response: true }, ItemSet { range: Range(891, 926), items: [891, 921], want_response: true }, ItemSet { range: Range(926, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(676, 737), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(856, 873), fp: EncodedCountingMonoid(3, SumMonoid(2598)) }], item_sets: [ItemSet { range: Range(772, 856), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(891, 926), items: [897, 902, 925], want_response: false }, ItemSet { range: Range(926, 993), items: [926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 676), items: [653, 666], want_response: true }, ItemSet { range: Range(873, 891), items: [873, 879], want_response: true }], wants: [830, 891, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 676), items: [653, 660, 674], want_response: false }, ItemSet { range: Range(873, 891), items: [888], want_response: false }, ItemSet { range: Range(676, 737), items: [676, 720], want_response: true }, ItemSet { range: Range(737, 772), items: [760], want_response: true }, ItemSet { range: Range(856, 873), items: [856, 866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 873, 879], provide: [(830, true), (891, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(676, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(856, 873), items: [862, 867, 869], want_response: false }], wants: [660, 674, 888, 676, 720, 856, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (897, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (666, true), (873, true), (879, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [682, 689, 705, 737, 742, 862, 867, 869], provide: [(660, true), (674, true), (888, true), (676, true), (720, true), (856, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(682, true), (689, true), (705, true), (737, true), (742, true), (862, true), (867, true), (869, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 660, 674, 676, 720, 760, 830, 856, 866, 888, 891, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 873, 879, 682, 689, 705, 737, 742, 862, 867, 869]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 891, 921, 931, 992, 660, 674, 888, 676, 720, 856, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 676, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 676, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 676, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 660, 674, 720, 760, 789, 830, 856, 866, 888, 891, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11511)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 856), fp: EncodedCountingMonoid(7, SumMonoid(5086)) }, Fingerprint { range: Range(856, 993), fp: EncodedCountingMonoid(7, SumMonoid(6345)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 856), fp: EncodedCountingMonoid(7, SumMonoid(5683)) }, Fingerprint { range: Range(856, 926), fp: EncodedCountingMonoid(8, SumMonoid(7074)) }, Fingerprint { range: Range(926, 993), fp: EncodedCountingMonoid(8, SumMonoid(7682)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(856, 891), fp: EncodedCountingMonoid(3, SumMonoid(2610)) }], item_sets: [ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 856), items: [789, 830], want_response: true }, ItemSet { range: Range(891, 926), items: [891, 921], want_response: true }, ItemSet { range: Range(926, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(856, 873), fp: EncodedCountingMonoid(3, SumMonoid(2598)) }], item_sets: [ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 856), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(891, 926), items: [897, 902, 925], want_response: false }, ItemSet { range: Range(926, 993), items: [926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(873, 891), items: [873, 879], want_response: true }], wants: [720, 789, 830, 891, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(873, 891), items: [888], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(856, 873), items: [856, 866], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 873, 879], provide: [(720, true), (789, true), (830, true), (891, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(856, 873), items: [862, 867, 869], want_response: false }], wants: [888, 660, 674, 856, 866], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (897, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (873, true), (879, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 862, 867, 869], provide: [(888, true), (660, true), (674, true), (856, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (862, true), (867, true), (869, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 660, 674, 720, 760, 789, 830, 856, 866, 888, 891, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 873, 879, 666, 682, 862, 867, 869]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 720, 789, 830, 891, 921, 931, 992, 888, 660, 674, 856, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 789, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 789, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 789, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 660, 674, 720, 760, 830, 845, 856, 866, 888, 891, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11567)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 856), fp: EncodedCountingMonoid(7, SumMonoid(5142)) }, Fingerprint { range: Range(856, 993), fp: EncodedCountingMonoid(7, SumMonoid(6345)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 856), fp: EncodedCountingMonoid(7, SumMonoid(5683)) }, Fingerprint { range: Range(856, 926), fp: EncodedCountingMonoid(8, SumMonoid(7074)) }, Fingerprint { range: Range(926, 993), fp: EncodedCountingMonoid(8, SumMonoid(7682)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(856, 891), fp: EncodedCountingMonoid(3, SumMonoid(2610)) }], item_sets: [ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 856), items: [830, 845], want_response: true }, ItemSet { range: Range(891, 926), items: [891, 921], want_response: true }, ItemSet { range: Range(926, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(856, 873), fp: EncodedCountingMonoid(3, SumMonoid(2598)) }], item_sets: [ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 856), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(891, 926), items: [897, 902, 925], want_response: false }, ItemSet { range: Range(926, 993), items: [926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(873, 891), items: [873, 879], want_response: true }], wants: [720, 830, 845, 891, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(873, 891), items: [888], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(856, 873), items: [856, 866], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 873, 879], provide: [(720, true), (830, true), (845, true), (891, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(856, 873), items: [862, 867, 869], want_response: false }], wants: [888, 660, 674, 856, 866], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (897, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (873, true), (879, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 862, 867, 869], provide: [(888, true), (660, true), (674, true), (856, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (862, true), (867, true), (869, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 660, 674, 720, 760, 830, 845, 856, 866, 888, 891, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 873, 879, 666, 682, 862, 867, 869]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 720, 830, 845, 891, 921, 931, 992, 888, 660, 674, 856, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 845, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 845, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 845, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 660, 674, 720, 760, 830, 856, 866, 873, 888, 891, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11595)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6362)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 891), fp: EncodedCountingMonoid(3, SumMonoid(2627)) }, Fingerprint { range: Range(891, 947), fp: EncodedCountingMonoid(3, SumMonoid(2743)) }], item_sets: [ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }], item_sets: [ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(866, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 891), items: [873, 879], want_response: true }, ItemSet { range: Range(891, 925), items: [897, 902], want_response: true }, ItemSet { range: Range(925, 947), items: [925, 926], want_response: true }], wants: [720, 830, 856, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(866, 873), items: [866], want_response: false }, ItemSet { range: Range(873, 891), items: [873, 888], want_response: false }, ItemSet { range: Range(891, 925), items: [891, 921], want_response: false }, ItemSet { range: Range(925, 947), items: [931], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 867, 869, 879, 897, 902, 925, 926], provide: [(720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }], wants: [866, 888, 891, 921, 931, 660, 674], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (867, true), (869, true), (879, true), (897, true), (902, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682], provide: [(866, true), (888, true), (891, true), (921, true), (931, true), (660, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 660, 674, 720, 760, 830, 856, 866, 873, 888, 891, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 867, 869, 879, 897, 902, 925, 926, 666, 682]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 720, 830, 856, 992, 866, 888, 891, 921, 931, 660, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 660, 674, 720, 760, 830, 856, 866, 887, 888, 891, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11609)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6376)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 891), fp: EncodedCountingMonoid(3, SumMonoid(2641)) }, Fingerprint { range: Range(891, 947), fp: EncodedCountingMonoid(3, SumMonoid(2743)) }], item_sets: [ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }], item_sets: [ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(866, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 891), items: [873, 879], want_response: true }, ItemSet { range: Range(891, 925), items: [897, 902], want_response: true }, ItemSet { range: Range(925, 947), items: [925, 926], want_response: true }], wants: [720, 830, 856, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(866, 873), items: [866], want_response: false }, ItemSet { range: Range(873, 891), items: [887, 888], want_response: false }, ItemSet { range: Range(891, 925), items: [891, 921], want_response: false }, ItemSet { range: Range(925, 947), items: [931], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 867, 869, 873, 879, 897, 902, 925, 926], provide: [(720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }], wants: [866, 887, 888, 891, 921, 931, 660, 674], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682], provide: [(866, true), (887, true), (888, true), (891, true), (921, true), (931, true), (660, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 660, 674, 720, 760, 830, 856, 866, 887, 888, 891, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 867, 869, 873, 879, 897, 902, 925, 926, 666, 682]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 720, 830, 856, 992, 866, 887, 888, 891, 921, 931, 660, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 887, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 887, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 887, 888, 891, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 894, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11616)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6383)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 894), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(894, 947), fp: EncodedCountingMonoid(3, SumMonoid(2746)) }], item_sets: [ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }], item_sets: [ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(866, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 894), items: [873, 879], want_response: true }, ItemSet { range: Range(894, 925), items: [897, 902], want_response: true }, ItemSet { range: Range(925, 947), items: [925, 926], want_response: true }], wants: [720, 830, 856, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(866, 873), items: [866], want_response: false }, ItemSet { range: Range(873, 894), items: [888, 891], want_response: false }, ItemSet { range: Range(894, 925), items: [894, 921], want_response: false }, ItemSet { range: Range(925, 947), items: [931], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 867, 869, 873, 879, 897, 902, 925, 926], provide: [(720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }], wants: [866, 888, 891, 894, 921, 931, 660, 674], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682], provide: [(866, true), (888, true), (891, true), (894, true), (921, true), (931, true), (660, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 894, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 867, 869, 873, 879, 897, 902, 925, 926, 666, 682]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 720, 830, 856, 992, 866, 888, 891, 894, 921, 931, 660, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 894, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 894, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 894, 897, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 898, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11620)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6387)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 898), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(898, 947), fp: EncodedCountingMonoid(3, SumMonoid(2750)) }], item_sets: [ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 898), items: [879, 897], want_response: true }, ItemSet { range: Range(898, 926), items: [902, 925], want_response: true }, ItemSet { range: Range(926, 947), items: [926], want_response: true }], wants: [720, 830, 856, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 898), items: [888, 891], want_response: false }, ItemSet { range: Range(898, 926), items: [898, 921], want_response: false }, ItemSet { range: Range(926, 947), items: [931], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 902, 925, 926], provide: [(720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 898, 921, 931, 660, 674, 866], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true), (902, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (898, true), (921, true), (931, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 898, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 902, 925, 926, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 720, 830, 856, 992, 888, 891, 898, 921, 931, 660, 674, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 898, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 898, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 898, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 900, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11622)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6389)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 900), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(900, 947), fp: EncodedCountingMonoid(3, SumMonoid(2752)) }], item_sets: [ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 900), items: [879, 897], want_response: true }, ItemSet { range: Range(900, 926), items: [902, 925], want_response: true }, ItemSet { range: Range(926, 947), items: [926], want_response: true }], wants: [720, 830, 856, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 900), items: [888, 891], want_response: false }, ItemSet { range: Range(900, 926), items: [900, 921], want_response: false }, ItemSet { range: Range(926, 947), items: [931], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 902, 925, 926], provide: [(720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 900, 921, 931, 660, 674, 866], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true), (902, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (900, true), (921, true), (931, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 900, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 902, 925, 926, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 720, 830, 856, 992, 888, 891, 900, 921, 931, 660, 674, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 900, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 900, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 856, 862, 866, 867, 869, 873, 879, 888, 891, 897, 900, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11623)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5153)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(720, 772), items: [720, 760], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 856], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(720, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [720, 830, 856, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897], provide: [(720, true), (830, true), (856, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [888, 891, 660, 674, 866], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 660, 674, 720, 760, 830, 856, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 879, 897, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 720, 830, 856, 992, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 428, 653, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11195)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5163)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 428], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 428], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(720, 788), items: [720, 760], want_response: true }, ItemSet { range: Range(788, 888), items: [830, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (428, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }], item_sets: [ItemSet { range: Range(720, 788), items: [737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [720, 830, 866, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902], provide: [(720, true), (830, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }], wants: [888, 891, 901, 660, 674], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682], provide: [(888, true), (891, true), (901, true), (660, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 428, 653, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902, 666, 682]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 428, 720, 830, 866, 921, 931, 992, 888, 891, 901, 660, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 428, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 428, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 428, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 642, 653, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11409)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5163)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 642], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 642], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(720, 788), items: [720, 760], want_response: true }, ItemSet { range: Range(788, 888), items: [830, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (642, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }], item_sets: [ItemSet { range: Range(720, 788), items: [737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [720, 830, 866, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902], provide: [(720, true), (830, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }], wants: [888, 891, 901, 660, 674], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682], provide: [(888, true), (891, true), (901, true), (660, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 642, 653, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902, 666, 682]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 642, 720, 830, 866, 921, 931, 992, 888, 891, 901, 660, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 642, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 642, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 642, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 660, 674, 720, 749, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11516)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(5046)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(720, 772), fp: EncodedCountingMonoid(3, SumMonoid(2229)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(720, 760), items: [737, 742], want_response: true }, ItemSet { range: Range(760, 772), items: [760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(720, 760), items: [720, 749], want_response: false }, ItemSet { range: Range(760, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 737, 742, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [720, 749, 888, 891, 660, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 867, 869, 873], provide: [(720, true), (749, true), (888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 660, 674, 720, 749, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 689, 705, 737, 742, 879, 897, 666, 682, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 720, 749, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 660, 674, 696, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11463)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4993)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 696), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(696, 772), fp: EncodedCountingMonoid(3, SumMonoid(2176)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 682), items: [653, 666], want_response: true }, ItemSet { range: Range(682, 696), items: [682, 689], want_response: true }, ItemSet { range: Range(696, 742), items: [705, 737], want_response: true }, ItemSet { range: Range(742, 772), items: [742, 760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 682), items: [653, 660, 674], want_response: false }, ItemSet { range: Range(682, 696), items: [], want_response: false }, ItemSet { range: Range(696, 742), items: [696, 720], want_response: false }, ItemSet { range: Range(742, 772), items: [760], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [660, 674, 696, 720, 888, 891, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [867, 869, 873], provide: [(660, true), (674, true), (696, true), (720, true), (888, true), (891, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 660, 674, 696, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 879, 897, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 660, 674, 696, 720, 888, 891, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 660, 669, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11436)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4966)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 674), fp: EncodedCountingMonoid(3, SumMonoid(1982)) }, Fingerprint { range: Range(674, 772), fp: EncodedCountingMonoid(3, SumMonoid(2154)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(674, 737), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 660, 669], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(674, 737), items: [674, 720], want_response: true }, ItemSet { range: Range(737, 772), items: [760], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 666, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [660, 669, 888, 891, 674, 720, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (666, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [682, 689, 705, 737, 742, 867, 869, 873], provide: [(660, true), (669, true), (888, true), (891, true), (674, true), (720, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(682, true), (689, true), (705, true), (737, true), (742, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 660, 669, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 666, 879, 897, 682, 689, 705, 737, 742, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 660, 669, 888, 891, 674, 720, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 656, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11423)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4953)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 674), fp: EncodedCountingMonoid(3, SumMonoid(1969)) }, Fingerprint { range: Range(674, 772), fp: EncodedCountingMonoid(3, SumMonoid(2154)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(674, 737), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 656, 660], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(674, 737), items: [674, 720], want_response: true }, ItemSet { range: Range(737, 772), items: [760], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 666, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [656, 660, 888, 891, 674, 720, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (666, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [682, 689, 705, 737, 742, 867, 869, 873], provide: [(656, true), (660, true), (888, true), (891, true), (674, true), (720, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(682, true), (689, true), (705, true), (737, true), (742, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 656, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 666, 879, 897, 682, 689, 705, 737, 742, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 656, 660, 888, 891, 674, 720, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 649, 653, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11416)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5163)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 649], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 649], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(720, 788), items: [720, 760], want_response: true }, ItemSet { range: Range(788, 888), items: [830, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (649, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }], item_sets: [ItemSet { range: Range(720, 788), items: [737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [720, 830, 866, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902], provide: [(720, true), (830, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }], wants: [888, 891, 901, 660, 674], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682], provide: [(888, true), (891, true), (901, true), (660, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 649, 653, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902, 666, 682]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 649, 720, 830, 866, 921, 931, 992, 888, 891, 901, 660, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 649, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 649, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 649, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(14, SumMonoid(10767)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5163)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1987)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(720, 788), items: [720, 760], want_response: true }, ItemSet { range: Range(788, 888), items: [830, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }], item_sets: [ItemSet { range: Range(720, 788), items: [737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [720, 830, 866, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902], provide: [(720, true), (830, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }], wants: [888, 891, 901, 660, 674], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682], provide: [(888, true), (891, true), (901, true), (660, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902, 666, 682]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 720, 830, 866, 921, 931, 992, 888, 891, 901, 660, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 655, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11422)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4952)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 674), fp: EncodedCountingMonoid(3, SumMonoid(1968)) }, Fingerprint { range: Range(674, 772), fp: EncodedCountingMonoid(3, SumMonoid(2154)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(674, 737), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 655, 660], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(674, 737), items: [674, 720], want_response: true }, ItemSet { range: Range(737, 772), items: [760], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 666, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [655, 660, 888, 891, 674, 720, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (666, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [682, 689, 705, 737, 742, 867, 869, 873], provide: [(655, true), (660, true), (888, true), (891, true), (674, true), (720, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(682, true), (689, true), (705, true), (737, true), (742, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 655, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 666, 879, 897, 682, 689, 705, 737, 742, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 655, 660, 888, 891, 674, 720, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11421)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4951)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 674), fp: EncodedCountingMonoid(3, SumMonoid(1967)) }, Fingerprint { range: Range(674, 772), fp: EncodedCountingMonoid(3, SumMonoid(2154)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(674, 737), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 654, 660], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(674, 737), items: [674, 720], want_response: true }, ItemSet { range: Range(737, 772), items: [760], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 666, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 660, 888, 891, 674, 720, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (666, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [682, 689, 705, 737, 742, 867, 869, 873], provide: [(654, true), (660, true), (888, true), (891, true), (674, true), (720, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(682, true), (689, true), (705, true), (737, true), (742, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 666, 879, 897, 682, 689, 705, 737, 742, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 654, 660, 888, 891, 674, 720, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 327, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11095)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5164)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 327], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 327], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1988)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(720, 788), items: [720, 760], want_response: true }, ItemSet { range: Range(788, 888), items: [830, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (327, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }], item_sets: [ItemSet { range: Range(720, 788), items: [737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [720, 830, 866, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }, ItemSet { range: Range(653, 674), items: [654, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902], provide: [(720, true), (830, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }], wants: [888, 891, 901, 654, 660, 674], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [653, 666, 682], provide: [(888, true), (891, true), (901, true), (654, true), (660, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (666, true), (682, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 327, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902, 653, 666, 682]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 327, 720, 830, 866, 921, 931, 992, 888, 891, 901, 654, 660, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 327, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 327, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 327, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 490, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11258)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5164)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 490], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 490], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1988)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(720, 788), items: [720, 760], want_response: true }, ItemSet { range: Range(788, 888), items: [830, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (490, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }], item_sets: [ItemSet { range: Range(720, 788), items: [737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [720, 830, 866, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }, ItemSet { range: Range(653, 674), items: [654, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902], provide: [(720, true), (830, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }], wants: [888, 891, 901, 654, 660, 674], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [653, 666, 682], provide: [(888, true), (891, true), (901, true), (654, true), (660, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (666, true), (682, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 490, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902, 653, 666, 682]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 490, 720, 830, 866, 921, 931, 992, 888, 891, 901, 654, 660, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 490, 496, 503, 509, 523, 527, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 490, 496, 503, 509, 523, 527, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 490, 496, 503, 509, 523, 527, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 572, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11340)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5164)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 572], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 572], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1988)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(720, 788), items: [720, 760], want_response: true }, ItemSet { range: Range(788, 888), items: [830, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (572, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }], item_sets: [ItemSet { range: Range(720, 788), items: [737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [720, 830, 866, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }, ItemSet { range: Range(653, 674), items: [654, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902], provide: [(720, true), (830, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }], wants: [888, 891, 901, 654, 660, 674], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [653, 666, 682], provide: [(888, true), (891, true), (901, true), (654, true), (660, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (666, true), (682, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 572, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902, 653, 666, 682]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 572, 720, 830, 866, 921, 931, 992, 888, 891, 901, 654, 660, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 572, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 572, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 572, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 613, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11381)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5164)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 613], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 613], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1988)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(720, 788), items: [720, 760], want_response: true }, ItemSet { range: Range(788, 888), items: [830, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (613, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }], item_sets: [ItemSet { range: Range(720, 788), items: [737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [720, 830, 866, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }, ItemSet { range: Range(653, 674), items: [654, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902], provide: [(720, true), (830, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }], wants: [888, 891, 901, 654, 660, 674], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [653, 666, 682], provide: [(888, true), (891, true), (901, true), (654, true), (660, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (666, true), (682, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 613, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902, 653, 666, 682]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 613, 720, 830, 866, 921, 931, 992, 888, 891, 901, 654, 660, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 613, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 613, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 613, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 633, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11401)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5164)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 633], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 633], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1988)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(720, 788), items: [720, 760], want_response: true }, ItemSet { range: Range(788, 888), items: [830, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (633, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }], item_sets: [ItemSet { range: Range(720, 788), items: [737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [720, 830, 866, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }, ItemSet { range: Range(653, 674), items: [654, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902], provide: [(720, true), (830, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }], wants: [888, 891, 901, 654, 660, 674], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [653, 666, 682], provide: [(888, true), (891, true), (901, true), (654, true), (660, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (666, true), (682, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 633, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902, 653, 666, 682]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 633, 720, 830, 866, 921, 931, 992, 888, 891, 901, 654, 660, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 633, 640, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 633, 640, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 633, 640, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 643, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11411)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5164)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 643], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 643], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1988)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(720, 788), items: [720, 760], want_response: true }, ItemSet { range: Range(788, 888), items: [830, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (643, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }], item_sets: [ItemSet { range: Range(720, 788), items: [737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [720, 830, 866, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }, ItemSet { range: Range(653, 674), items: [654, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902], provide: [(720, true), (830, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }], wants: [888, 891, 901, 654, 660, 674], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [653, 666, 682], provide: [(888, true), (891, true), (901, true), (654, true), (660, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (666, true), (682, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 643, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902, 653, 666, 682]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 643, 720, 830, 866, 921, 931, 992, 888, 891, 901, 654, 660, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 643, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 643, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 643, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 648, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11416)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5164)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 648], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 648], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1988)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(720, 788), items: [720, 760], want_response: true }, ItemSet { range: Range(788, 888), items: [830, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (648, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }], item_sets: [ItemSet { range: Range(720, 788), items: [737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [720, 830, 866, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }, ItemSet { range: Range(653, 674), items: [654, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902], provide: [(720, true), (830, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }], wants: [888, 891, 901, 654, 660, 674], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [653, 666, 682], provide: [(888, true), (891, true), (901, true), (654, true), (660, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (666, true), (682, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 648, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902, 653, 666, 682]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 648, 720, 830, 866, 921, 931, 992, 888, 891, 901, 654, 660, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 648, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 648, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 648, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 651, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11419)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5164)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 651], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 651], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1988)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(720, 788), items: [720, 760], want_response: true }, ItemSet { range: Range(788, 888), items: [830, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (651, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }], item_sets: [ItemSet { range: Range(720, 788), items: [737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [720, 830, 866, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }, ItemSet { range: Range(653, 674), items: [654, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902], provide: [(720, true), (830, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }], wants: [888, 891, 901, 654, 660, 674], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [653, 666, 682], provide: [(888, true), (891, true), (901, true), (654, true), (660, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (666, true), (682, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 651, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902, 653, 666, 682]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 651, 720, 830, 866, 921, 931, 992, 888, 891, 901, 654, 660, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 651, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 651, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 651, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 652, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11420)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5164)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 652], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 652], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 720), fp: EncodedCountingMonoid(3, SumMonoid(1988)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(720, 788), items: [720, 760], want_response: true }, ItemSet { range: Range(788, 888), items: [830, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (652, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 689), fp: EncodedCountingMonoid(3, SumMonoid(2001)) }], item_sets: [ItemSet { range: Range(720, 788), items: [737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(689, 720), items: [689, 705], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [720, 830, 866, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(689, 720), items: [], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }, ItemSet { range: Range(653, 674), items: [654, 660], want_response: true }, ItemSet { range: Range(674, 689), items: [674], want_response: true }], wants: [737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902], provide: [(720, true), (830, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 666], want_response: false }, ItemSet { range: Range(674, 689), items: [682], want_response: false }], wants: [888, 891, 901, 654, 660, 674], provide: [(737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (689, true), (705, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [653, 666, 682], provide: [(888, true), (891, true), (901, true), (654, true), (660, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (666, true), (682, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 652, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 689, 705, 897, 902, 653, 666, 682]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 652, 720, 830, 866, 921, 931, 992, 888, 891, 901, 654, 660, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 652, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 652, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 652, 653, 654, 660, 666, 674, 682, 689, 705, 720, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11421)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4951)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 674), fp: EncodedCountingMonoid(3, SumMonoid(1967)) }, Fingerprint { range: Range(674, 772), fp: EncodedCountingMonoid(3, SumMonoid(2154)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(674, 737), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 654, 660], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(674, 737), items: [674, 720], want_response: true }, ItemSet { range: Range(737, 772), items: [760], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 666, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 660, 888, 891, 674, 720, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (666, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [682, 689, 705, 737, 742, 867, 869, 873], provide: [(654, true), (660, true), (888, true), (891, true), (674, true), (720, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(682, true), (689, true), (705, true), (737, true), (742, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 660, 674, 720, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 666, 879, 897, 682, 689, 705, 737, 742, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 654, 660, 888, 891, 674, 720, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 360, 653, 654, 660, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11061)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5097)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 360], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 360], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 674), fp: EncodedCountingMonoid(3, SumMonoid(1967)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(674, 788), items: [674, 760], want_response: true }, ItemSet { range: Range(788, 888), items: [830, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (360, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 788), items: [682, 689, 705, 737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [674, 830, 866, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 654, 660], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }], wants: [682, 689, 705, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 897, 902], provide: [(674, true), (830, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [654, 660, 888, 891, 901], provide: [(682, true), (689, true), (705, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (666, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(654, true), (660, true), (888, true), (891, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 360, 653, 654, 660, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 682, 689, 705, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 360, 674, 830, 866, 921, 931, 992, 654, 660, 888, 891, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 360, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 360, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 360, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 540, 653, 654, 660, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11241)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5097)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 540], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 540], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 674), fp: EncodedCountingMonoid(3, SumMonoid(1967)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(674, 788), items: [674, 760], want_response: true }, ItemSet { range: Range(788, 888), items: [830, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (540, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 788), items: [682, 689, 705, 737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [674, 830, 866, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 654, 660], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }], wants: [682, 689, 705, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 897, 902], provide: [(674, true), (830, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [654, 660, 888, 891, 901], provide: [(682, true), (689, true), (705, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (666, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(654, true), (660, true), (888, true), (891, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 540, 653, 654, 660, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 682, 689, 705, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 540, 674, 830, 866, 921, 931, 992, 654, 660, 888, 891, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 540, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 540, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 540, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 630, 653, 654, 660, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11331)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5097)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 630], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 630], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 674), fp: EncodedCountingMonoid(3, SumMonoid(1967)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(674, 788), items: [674, 760], want_response: true }, ItemSet { range: Range(788, 888), items: [830, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (630, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 788), items: [682, 689, 705, 737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [674, 830, 866, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 654, 660], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }], wants: [682, 689, 705, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 897, 902], provide: [(674, true), (830, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [654, 660, 888, 891, 901], provide: [(682, true), (689, true), (705, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (666, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(654, true), (660, true), (888, true), (891, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 630, 653, 654, 660, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 682, 689, 705, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 630, 674, 830, 866, 921, 931, 992, 654, 660, 888, 891, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 630, 640, 653, 654, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 630, 640, 653, 654, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 630, 640, 653, 654, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 660, 674, 675, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11376)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4906)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 674), fp: EncodedCountingMonoid(3, SumMonoid(1967)) }, Fingerprint { range: Range(674, 772), fp: EncodedCountingMonoid(3, SumMonoid(2109)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(674, 737), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 654, 660], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(674, 737), items: [674, 675], want_response: true }, ItemSet { range: Range(737, 772), items: [760], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 666, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 660, 888, 891, 674, 675, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (666, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [682, 689, 705, 737, 742, 867, 869, 873], provide: [(654, true), (660, true), (888, true), (891, true), (674, true), (675, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(682, true), (689, true), (705, true), (737, true), (742, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 660, 674, 675, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 666, 879, 897, 682, 689, 705, 737, 742, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 654, 660, 888, 891, 674, 675, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 660, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(14, SumMonoid(10701)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5097)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 674), fp: EncodedCountingMonoid(3, SumMonoid(1967)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(674, 788), items: [674, 760], want_response: true }, ItemSet { range: Range(788, 888), items: [830, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 788), items: [682, 689, 705, 737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [674, 830, 866, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 654, 660], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }], wants: [682, 689, 705, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 897, 902], provide: [(674, true), (830, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [654, 660, 888, 891, 901], provide: [(682, true), (689, true), (705, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (666, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(654, true), (660, true), (888, true), (891, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 660, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 682, 689, 705, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 674, 830, 866, 921, 931, 992, 654, 660, 888, 891, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 660, 664, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11365)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4895)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 664), fp: EncodedCountingMonoid(3, SumMonoid(1967)) }, Fingerprint { range: Range(664, 772), fp: EncodedCountingMonoid(3, SumMonoid(2098)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(664, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 664), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 664), items: [653, 654, 660], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(664, 737), items: [664, 674], want_response: true }, ItemSet { range: Range(737, 772), items: [760], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(664, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 660, 888, 891, 664, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 867, 869, 873], provide: [(654, true), (660, true), (888, true), (891, true), (664, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 660, 664, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 654, 660, 888, 891, 664, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 659, 660, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11360)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4890)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1966)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(2094)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 659], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(660, 737), items: [660, 674], want_response: true }, ItemSet { range: Range(737, 772), items: [760], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 659, 888, 891, 660, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 867, 869, 873], provide: [(654, true), (659, true), (888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 659, 660, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 654, 659, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 656, 660, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11357)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4887)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1963)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(2094)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(660, 737), items: [660, 674], want_response: true }, ItemSet { range: Range(737, 772), items: [760], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 656, 888, 891, 660, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 867, 869, 873], provide: [(654, true), (656, true), (888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 656, 660, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 654, 656, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11356)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4886)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(2094)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(660, 737), items: [660, 674], want_response: true }, ItemSet { range: Range(737, 772), items: [760], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 888, 891, 660, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 867, 869, 873], provide: [(654, true), (655, true), (888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 654, 655, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 660, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(14, SumMonoid(10701)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 888), fp: EncodedCountingMonoid(7, SumMonoid(5097)) }, Fingerprint { range: Range(888, 993), fp: EncodedCountingMonoid(6, SumMonoid(5524)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 788), fp: EncodedCountingMonoid(10, SumMonoid(7183)) }, Fingerprint { range: Range(788, 888), fp: EncodedCountingMonoid(10, SumMonoid(8484)) }, Fingerprint { range: Range(888, 954), fp: EncodedCountingMonoid(6, SumMonoid(5550)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(5, SumMonoid(4856)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 674), fp: EncodedCountingMonoid(3, SumMonoid(1967)) }, Fingerprint { range: Range(888, 921), fp: EncodedCountingMonoid(3, SumMonoid(2680)) }], item_sets: [ItemSet { range: Range(674, 788), items: [674, 760], want_response: true }, ItemSet { range: Range(788, 888), items: [830, 866], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 788), items: [682, 689, 705, 737, 742, 760, 772, 777], want_response: false }, ItemSet { range: Range(788, 888), items: [788, 807, 838, 847, 854, 862, 867, 869, 873, 879], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: true }, ItemSet { range: Range(888, 921), items: [897, 902], want_response: true }], wants: [674, 830, 866, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 654, 660], want_response: false }, ItemSet { range: Range(888, 921), items: [888, 891, 901], want_response: false }], wants: [682, 689, 705, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 897, 902], provide: [(674, true), (830, true), (866, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [654, 660, 888, 891, 901], provide: [(682, true), (689, true), (705, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (666, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(654, true), (660, true), (888, true), (891, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 660, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 682, 689, 705, 737, 742, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 674, 830, 866, 921, 931, 992, 654, 660, 888, 891, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 891, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11356)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4886)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(7, SumMonoid(6390)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(2094)) }, Fingerprint { range: Range(866, 901), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [888, 891], want_response: false }, ItemSet { range: Range(660, 737), items: [660, 674], want_response: true }, ItemSet { range: Range(737, 772), items: [760], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 888, 891, 660, 674, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 867, 869, 873], provide: [(654, true), (655, true), (888, true), (891, true), (660, true), (674, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 674, 760, 830, 866, 888, 891, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 654, 655, 888, 891, 660, 674, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 446, 653, 654, 655, 660, 674, 760, 830, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10911)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4886)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(6, SumMonoid(5499)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 446], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 446], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(2094)) }, Fingerprint { range: Range(866, 921), fp: EncodedCountingMonoid(3, SumMonoid(2655)) }], item_sets: [ItemSet { range: Range(772, 866), items: [830], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (446, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [830, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(660, 737), items: [660, 674], want_response: true }, ItemSet { range: Range(737, 772), items: [760], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(879, 921), items: [888, 901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(830, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 660, 674, 866, 888, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (660, true), (674, true), (866, true), (888, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 446, 653, 654, 655, 660, 674, 760, 830, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 446, 830, 921, 931, 992, 654, 655, 660, 674, 866, 888, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 446, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 446, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 446, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 669, 674, 760, 830, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11134)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 830), fp: EncodedCountingMonoid(7, SumMonoid(4725)) }, Fingerprint { range: Range(830, 993), fp: EncodedCountingMonoid(7, SumMonoid(6329)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 742), fp: EncodedCountingMonoid(6, SumMonoid(4132)) }, Fingerprint { range: Range(742, 830), fp: EncodedCountingMonoid(6, SumMonoid(4646)) }, Fingerprint { range: Range(830, 925), fp: EncodedCountingMonoid(10, SumMonoid(8688)) }, Fingerprint { range: Range(925, 993), fp: EncodedCountingMonoid(9, SumMonoid(8607)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(660, 742), fp: EncodedCountingMonoid(3, SumMonoid(2003)) }, Fingerprint { range: Range(830, 901), fp: EncodedCountingMonoid(3, SumMonoid(2584)) }], item_sets: [ItemSet { range: Range(742, 830), items: [760], want_response: true }, ItemSet { range: Range(901, 925), items: [901, 921], want_response: true }, ItemSet { range: Range(925, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(830, 869), fp: EncodedCountingMonoid(5, SumMonoid(4268)) }, Fingerprint { range: Range(869, 901), fp: EncodedCountingMonoid(4, SumMonoid(3518)) }], item_sets: [ItemSet { range: Range(742, 830), items: [742, 760, 772, 777, 788, 807], want_response: false }, ItemSet { range: Range(901, 925), items: [902], want_response: false }, ItemSet { range: Range(925, 993), items: [925, 926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(705, 742), items: [705, 737], want_response: true }], wants: [901, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(705, 742), items: [], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 669], want_response: true }, ItemSet { range: Range(674, 705), items: [674], want_response: true }, ItemSet { range: Range(830, 869), items: [830, 866], want_response: true }, ItemSet { range: Range(869, 901), items: [888], want_response: true }], wants: [742, 772, 777, 788, 807, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 705, 737], provide: [(901, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 705), items: [682, 689], want_response: false }, ItemSet { range: Range(830, 869), items: [838, 847, 854, 862, 867], want_response: false }, ItemSet { range: Range(869, 901), items: [869, 873, 879, 897], want_response: false }], wants: [654, 655, 660, 669, 674, 830, 866, 888], provide: [(742, true), (772, true), (777, true), (788, true), (807, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (705, true), (737, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 838, 847, 854, 862, 867, 869, 873, 879, 897], provide: [(654, true), (655, true), (660, true), (669, true), (674, true), (830, true), (866, true), (888, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 669, 674, 760, 830, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 742, 772, 777, 788, 807, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 705, 737, 666, 682, 689, 838, 847, 854, 862, 867, 869, 873, 879, 897]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 901, 921, 931, 992, 654, 655, 660, 669, 674, 830, 866, 888]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 669, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 669, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 669, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 674, 760, 780, 830, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11245)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 830), fp: EncodedCountingMonoid(7, SumMonoid(4836)) }, Fingerprint { range: Range(830, 993), fp: EncodedCountingMonoid(7, SumMonoid(6329)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 742), fp: EncodedCountingMonoid(6, SumMonoid(4132)) }, Fingerprint { range: Range(742, 830), fp: EncodedCountingMonoid(6, SumMonoid(4646)) }, Fingerprint { range: Range(830, 925), fp: EncodedCountingMonoid(10, SumMonoid(8688)) }, Fingerprint { range: Range(925, 993), fp: EncodedCountingMonoid(9, SumMonoid(8607)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(830, 901), fp: EncodedCountingMonoid(3, SumMonoid(2584)) }], item_sets: [ItemSet { range: Range(660, 742), items: [660, 674], want_response: true }, ItemSet { range: Range(742, 830), items: [760, 780], want_response: true }, ItemSet { range: Range(901, 925), items: [901, 921], want_response: true }, ItemSet { range: Range(925, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(830, 869), fp: EncodedCountingMonoid(5, SumMonoid(4268)) }, Fingerprint { range: Range(869, 901), fp: EncodedCountingMonoid(4, SumMonoid(3518)) }], item_sets: [ItemSet { range: Range(660, 742), items: [666, 682, 689, 705, 737], want_response: false }, ItemSet { range: Range(742, 830), items: [742, 760, 772, 777, 788, 807], want_response: false }, ItemSet { range: Range(901, 925), items: [902], want_response: false }, ItemSet { range: Range(925, 993), items: [925, 926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [660, 674, 780, 901, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(830, 869), items: [830, 866], want_response: true }, ItemSet { range: Range(869, 901), items: [888], want_response: true }], wants: [666, 682, 689, 705, 737, 742, 772, 777, 788, 807, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(660, true), (674, true), (780, true), (901, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(830, 869), items: [838, 847, 854, 862, 867], want_response: false }, ItemSet { range: Range(869, 901), items: [869, 873, 879, 897], want_response: false }], wants: [654, 655, 830, 866, 888], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [838, 847, 854, 862, 867, 869, 873, 879, 897], provide: [(654, true), (655, true), (830, true), (866, true), (888, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 674, 760, 780, 830, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 666, 682, 689, 705, 737, 742, 772, 777, 788, 807, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 838, 847, 854, 862, 867, 869, 873, 879, 897]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 660, 674, 780, 901, 921, 931, 992, 654, 655, 830, 866, 888]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 780, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 780, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 780, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 674, 760, 830, 836, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11301)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 836), fp: EncodedCountingMonoid(7, SumMonoid(4886)) }, Fingerprint { range: Range(836, 993), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 742), fp: EncodedCountingMonoid(6, SumMonoid(4132)) }, Fingerprint { range: Range(742, 836), fp: EncodedCountingMonoid(6, SumMonoid(4646)) }, Fingerprint { range: Range(836, 925), fp: EncodedCountingMonoid(10, SumMonoid(8688)) }, Fingerprint { range: Range(925, 993), fp: EncodedCountingMonoid(9, SumMonoid(8607)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(836, 901), fp: EncodedCountingMonoid(3, SumMonoid(2590)) }], item_sets: [ItemSet { range: Range(660, 742), items: [660, 674], want_response: true }, ItemSet { range: Range(742, 836), items: [760, 830], want_response: true }, ItemSet { range: Range(901, 925), items: [901, 921], want_response: true }, ItemSet { range: Range(925, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(836, 869), fp: EncodedCountingMonoid(5, SumMonoid(4268)) }, Fingerprint { range: Range(869, 901), fp: EncodedCountingMonoid(4, SumMonoid(3518)) }], item_sets: [ItemSet { range: Range(660, 742), items: [666, 682, 689, 705, 737], want_response: false }, ItemSet { range: Range(742, 836), items: [742, 760, 772, 777, 788, 807], want_response: false }, ItemSet { range: Range(901, 925), items: [902], want_response: false }, ItemSet { range: Range(925, 993), items: [925, 926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [660, 674, 830, 901, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(836, 869), items: [836, 866], want_response: true }, ItemSet { range: Range(869, 901), items: [888], want_response: true }], wants: [666, 682, 689, 705, 737, 742, 772, 777, 788, 807, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(660, true), (674, true), (830, true), (901, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(836, 869), items: [838, 847, 854, 862, 867], want_response: false }, ItemSet { range: Range(869, 901), items: [869, 873, 879, 897], want_response: false }], wants: [654, 655, 836, 866, 888], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [838, 847, 854, 862, 867, 869, 873, 879, 897], provide: [(654, true), (655, true), (836, true), (866, true), (888, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 674, 760, 830, 836, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 666, 682, 689, 705, 737, 742, 772, 777, 788, 807, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 838, 847, 854, 862, 867, 869, 873, 879, 897]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 660, 674, 830, 901, 921, 931, 992, 654, 655, 836, 866, 888]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 836, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 836, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 836, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 674, 760, 830, 864, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11329)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 864), fp: EncodedCountingMonoid(7, SumMonoid(4886)) }, Fingerprint { range: Range(864, 993), fp: EncodedCountingMonoid(7, SumMonoid(6363)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(2094)) }, Fingerprint { range: Range(864, 901), fp: EncodedCountingMonoid(3, SumMonoid(2618)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 864), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [888], want_response: false }, ItemSet { range: Range(660, 737), items: [660, 674], want_response: true }, ItemSet { range: Range(737, 772), items: [760], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 888, 660, 674, 864, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 867, 869, 873], provide: [(654, true), (655, true), (888, true), (660, true), (674, true), (864, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 674, 760, 830, 864, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 654, 655, 888, 660, 674, 864, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 674, 760, 830, 850, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11315)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 850), fp: EncodedCountingMonoid(7, SumMonoid(4886)) }, Fingerprint { range: Range(850, 993), fp: EncodedCountingMonoid(7, SumMonoid(6349)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 760), fp: EncodedCountingMonoid(7, SumMonoid(4874)) }, Fingerprint { range: Range(760, 850), fp: EncodedCountingMonoid(7, SumMonoid(5589)) }, Fingerprint { range: Range(850, 926), fp: EncodedCountingMonoid(9, SumMonoid(7928)) }, Fingerprint { range: Range(926, 993), fp: EncodedCountingMonoid(8, SumMonoid(7682)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(850, 901), fp: EncodedCountingMonoid(3, SumMonoid(2604)) }], item_sets: [ItemSet { range: Range(660, 760), items: [660, 674], want_response: true }, ItemSet { range: Range(760, 850), items: [760, 830], want_response: true }, ItemSet { range: Range(901, 926), items: [901, 921], want_response: true }, ItemSet { range: Range(926, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(850, 873), fp: EncodedCountingMonoid(4, SumMonoid(3452)) }, Fingerprint { range: Range(873, 901), fp: EncodedCountingMonoid(3, SumMonoid(2649)) }], item_sets: [ItemSet { range: Range(660, 760), items: [666, 682, 689, 705, 737, 742], want_response: false }, ItemSet { range: Range(760, 850), items: [760, 772, 777, 788, 807, 838, 847], want_response: false }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: false }, ItemSet { range: Range(926, 993), items: [926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [660, 674, 830, 901, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(850, 873), items: [850, 866], want_response: true }, ItemSet { range: Range(873, 901), items: [888], want_response: true }], wants: [666, 682, 689, 705, 737, 742, 772, 777, 788, 807, 838, 847, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(660, true), (674, true), (830, true), (901, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(850, 873), items: [854, 862, 867, 869], want_response: false }, ItemSet { range: Range(873, 901), items: [873, 879, 897], want_response: false }], wants: [654, 655, 850, 866, 888], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [854, 862, 867, 869, 873, 879, 897], provide: [(654, true), (655, true), (850, true), (866, true), (888, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 674, 760, 830, 850, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 666, 682, 689, 705, 737, 742, 772, 777, 788, 807, 838, 847, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 854, 862, 867, 869, 873, 879, 897]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 660, 674, 830, 901, 921, 931, 992, 654, 655, 850, 866, 888]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 850, 854, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 850, 854, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 850, 854, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 674, 760, 830, 857, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11322)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 857), fp: EncodedCountingMonoid(7, SumMonoid(4886)) }, Fingerprint { range: Range(857, 993), fp: EncodedCountingMonoid(7, SumMonoid(6356)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 857), fp: EncodedCountingMonoid(7, SumMonoid(5683)) }, Fingerprint { range: Range(857, 926), fp: EncodedCountingMonoid(8, SumMonoid(7074)) }, Fingerprint { range: Range(926, 993), fp: EncodedCountingMonoid(8, SumMonoid(7682)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(2094)) }, Fingerprint { range: Range(857, 901), fp: EncodedCountingMonoid(3, SumMonoid(2611)) }], item_sets: [ItemSet { range: Range(772, 857), items: [830], want_response: true }, ItemSet { range: Range(901, 926), items: [901, 921], want_response: true }, ItemSet { range: Range(926, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(857, 873), fp: EncodedCountingMonoid(3, SumMonoid(2598)) }, Fingerprint { range: Range(873, 901), fp: EncodedCountingMonoid(3, SumMonoid(2649)) }], item_sets: [ItemSet { range: Range(772, 857), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: false }, ItemSet { range: Range(926, 993), items: [926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [830, 901, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(660, 737), items: [660, 674], want_response: true }, ItemSet { range: Range(737, 772), items: [760], want_response: true }, ItemSet { range: Range(857, 873), items: [857, 866], want_response: true }, ItemSet { range: Range(873, 901), items: [888], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(830, true), (901, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(857, 873), items: [862, 867, 869], want_response: false }, ItemSet { range: Range(873, 901), items: [873, 879, 897], want_response: false }], wants: [654, 655, 660, 674, 857, 866, 888], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 862, 867, 869, 873, 879, 897], provide: [(654, true), (655, true), (660, true), (674, true), (857, true), (866, true), (888, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 674, 760, 830, 857, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 862, 867, 869, 873, 879, 897]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 901, 921, 931, 992, 654, 655, 660, 674, 857, 866, 888]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 857, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 857, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 857, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 674, 760, 830, 861, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11326)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 861), fp: EncodedCountingMonoid(7, SumMonoid(4886)) }, Fingerprint { range: Range(861, 993), fp: EncodedCountingMonoid(7, SumMonoid(6360)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 861), fp: EncodedCountingMonoid(7, SumMonoid(5683)) }, Fingerprint { range: Range(861, 926), fp: EncodedCountingMonoid(8, SumMonoid(7074)) }, Fingerprint { range: Range(926, 993), fp: EncodedCountingMonoid(8, SumMonoid(7682)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(2094)) }, Fingerprint { range: Range(861, 901), fp: EncodedCountingMonoid(3, SumMonoid(2615)) }], item_sets: [ItemSet { range: Range(772, 861), items: [830], want_response: true }, ItemSet { range: Range(901, 926), items: [901, 921], want_response: true }, ItemSet { range: Range(926, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(861, 873), fp: EncodedCountingMonoid(3, SumMonoid(2598)) }, Fingerprint { range: Range(873, 901), fp: EncodedCountingMonoid(3, SumMonoid(2649)) }], item_sets: [ItemSet { range: Range(772, 861), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: false }, ItemSet { range: Range(926, 993), items: [926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [830, 901, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(660, 737), items: [660, 674], want_response: true }, ItemSet { range: Range(737, 772), items: [760], want_response: true }, ItemSet { range: Range(861, 873), items: [861, 866], want_response: true }, ItemSet { range: Range(873, 901), items: [888], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(830, true), (901, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(861, 873), items: [862, 867, 869], want_response: false }, ItemSet { range: Range(873, 901), items: [873, 879, 897], want_response: false }], wants: [654, 655, 660, 674, 861, 866, 888], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 862, 867, 869, 873, 879, 897], provide: [(654, true), (655, true), (660, true), (674, true), (861, true), (866, true), (888, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 674, 760, 830, 861, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 862, 867, 869, 873, 879, 897]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 901, 921, 931, 992, 654, 655, 660, 674, 861, 866, 888]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 861, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 861, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 861, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 674, 760, 830, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11328)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4886)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6362)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(2094)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2617)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [888], want_response: false }, ItemSet { range: Range(660, 737), items: [660, 674], want_response: true }, ItemSet { range: Range(737, 772), items: [760], want_response: true }, ItemSet { range: Range(863, 879), items: [863, 866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 888, 660, 674, 863, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 867, 869, 873], provide: [(654, true), (655, true), (888, true), (660, true), (674, true), (863, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 674, 760, 830, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 654, 655, 888, 660, 674, 863, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 674, 760, 830, 862, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11327)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 862), fp: EncodedCountingMonoid(7, SumMonoid(4886)) }, Fingerprint { range: Range(862, 993), fp: EncodedCountingMonoid(7, SumMonoid(6361)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 862), fp: EncodedCountingMonoid(7, SumMonoid(5683)) }, Fingerprint { range: Range(862, 926), fp: EncodedCountingMonoid(8, SumMonoid(7074)) }, Fingerprint { range: Range(926, 993), fp: EncodedCountingMonoid(8, SumMonoid(7682)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(2094)) }, Fingerprint { range: Range(862, 901), fp: EncodedCountingMonoid(3, SumMonoid(2616)) }], item_sets: [ItemSet { range: Range(772, 862), items: [830], want_response: true }, ItemSet { range: Range(901, 926), items: [901, 921], want_response: true }, ItemSet { range: Range(926, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(862, 873), fp: EncodedCountingMonoid(3, SumMonoid(2598)) }, Fingerprint { range: Range(873, 901), fp: EncodedCountingMonoid(3, SumMonoid(2649)) }], item_sets: [ItemSet { range: Range(772, 862), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: false }, ItemSet { range: Range(926, 993), items: [926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [830, 901, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(660, 737), items: [660, 674], want_response: true }, ItemSet { range: Range(737, 772), items: [760], want_response: true }, ItemSet { range: Range(862, 873), items: [862, 866], want_response: true }, ItemSet { range: Range(873, 901), items: [888], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(830, true), (901, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(862, 873), items: [862, 867, 869], want_response: false }, ItemSet { range: Range(873, 901), items: [873, 879, 897], want_response: false }], wants: [654, 655, 660, 674, 866, 888], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 867, 869, 873, 879, 897], provide: [(654, true), (655, true), (660, true), (674, true), (866, true), (888, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (867, true), (869, true), (873, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 674, 760, 830, 862, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 867, 869, 873, 879, 897]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 901, 921, 931, 992, 654, 655, 660, 674, 866, 888]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 674, 760, 830, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11328)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4886)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6362)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(2094)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2617)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [888], want_response: false }, ItemSet { range: Range(660, 737), items: [660, 674], want_response: true }, ItemSet { range: Range(737, 772), items: [760], want_response: true }, ItemSet { range: Range(863, 879), items: [863, 866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 888, 660, 674, 863, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 867, 869, 873], provide: [(654, true), (655, true), (888, true), (660, true), (674, true), (863, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 674, 760, 830, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 654, 655, 888, 660, 674, 863, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 380, 653, 654, 655, 660, 674, 830, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10948)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4989)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(6, SumMonoid(5499)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 380], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 380], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(866, 921), fp: EncodedCountingMonoid(3, SumMonoid(2655)) }], item_sets: [ItemSet { range: Range(660, 772), items: [660, 674], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (380, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(660, 772), items: [666, 682, 689, 705, 737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [660, 674, 830, 863, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(879, 921), items: [888, 901], want_response: true }], wants: [666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(660, true), (674, true), (830, true), (863, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 866, 888, 901], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (866, true), (888, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 380, 653, 654, 655, 660, 674, 830, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 380, 660, 674, 830, 863, 921, 931, 992, 654, 655, 866, 888, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 380, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 380, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 380, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 570, 653, 654, 655, 660, 674, 830, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11138)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4989)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(6, SumMonoid(5499)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 570], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 570], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(866, 921), fp: EncodedCountingMonoid(3, SumMonoid(2655)) }], item_sets: [ItemSet { range: Range(660, 772), items: [660, 674], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (570, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(660, 772), items: [666, 682, 689, 705, 737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [660, 674, 830, 863, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(879, 921), items: [888, 901], want_response: true }], wants: [666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(660, true), (674, true), (830, true), (863, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 866, 888, 901], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (866, true), (888, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 570, 653, 654, 655, 660, 674, 830, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 570, 660, 674, 830, 863, 921, 931, 992, 654, 655, 866, 888, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 570, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 570, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 570, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 665, 674, 830, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11233)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4791)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6362)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1999)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2617)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [888], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 665], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 879), items: [863, 866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 888, 660, 665, 674, 863, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (888, true), (660, true), (665, true), (674, true), (863, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 665, 674, 830, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 654, 655, 888, 660, 665, 674, 863, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 618, 653, 654, 655, 660, 674, 830, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11186)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4989)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(6, SumMonoid(5499)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 618], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 618], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(866, 921), fp: EncodedCountingMonoid(3, SumMonoid(2655)) }], item_sets: [ItemSet { range: Range(660, 772), items: [660, 674], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (618, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(660, 772), items: [666, 682, 689, 705, 737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [660, 674, 830, 863, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(879, 921), items: [888, 901], want_response: true }], wants: [666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(660, true), (674, true), (830, true), (863, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 866, 888, 901], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (866, true), (888, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 618, 653, 654, 655, 660, 674, 830, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 618, 660, 674, 830, 863, 921, 931, 992, 654, 655, 866, 888, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 618, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 618, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 618, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 642, 653, 654, 655, 660, 674, 830, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11210)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4989)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(6, SumMonoid(5499)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 642], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 642], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(866, 921), fp: EncodedCountingMonoid(3, SumMonoid(2655)) }], item_sets: [ItemSet { range: Range(660, 772), items: [660, 674], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (642, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(660, 772), items: [666, 682, 689, 705, 737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [660, 674, 830, 863, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(879, 921), items: [888, 901], want_response: true }], wants: [666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(660, true), (674, true), (830, true), (863, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 866, 888, 901], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (866, true), (888, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 642, 653, 654, 655, 660, 674, 830, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 642, 660, 674, 830, 863, 921, 931, 992, 654, 655, 866, 888, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 642, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 642, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 642, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 674, 830, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(14, SumMonoid(10568)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4989)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(6, SumMonoid(5499)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(866, 921), fp: EncodedCountingMonoid(3, SumMonoid(2655)) }], item_sets: [ItemSet { range: Range(660, 772), items: [660, 674], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(660, 772), items: [666, 682, 689, 705, 737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [660, 674, 830, 863, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(879, 921), items: [888, 901], want_response: true }], wants: [666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(660, true), (674, true), (830, true), (863, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 866, 888, 901], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (866, true), (888, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 674, 830, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 660, 674, 830, 863, 921, 931, 992, 654, 655, 866, 888, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 674, 830, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(14, SumMonoid(10568)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4989)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(6, SumMonoid(5499)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(866, 921), fp: EncodedCountingMonoid(3, SumMonoid(2655)) }], item_sets: [ItemSet { range: Range(660, 772), items: [660, 674], want_response: true }, ItemSet { range: Range(772, 866), items: [830, 863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(660, 772), items: [666, 682, 689, 705, 737, 742, 760], want_response: false }, ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [660, 674, 830, 863, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(879, 921), items: [888, 901], want_response: true }], wants: [666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(660, true), (674, true), (830, true), (863, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 866, 888, 901], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (866, true), (888, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 674, 830, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 660, 674, 830, 863, 921, 931, 992, 654, 655, 866, 888, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 830, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 663, 674, 830, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11231)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4789)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6362)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1997)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2617)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [888], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 663], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 879), items: [863, 866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 888, 660, 663, 674, 863, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (888, true), (660, true), (663, true), (674, true), (863, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 663, 674, 830, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 654, 655, 888, 660, 663, 674, 863, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 662, 674, 830, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11230)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4788)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6362)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1996)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2617)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [888], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 662], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 879), items: [863, 866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 888, 660, 662, 674, 863, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (888, true), (660, true), (662, true), (674, true), (863, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 662, 674, 830, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 654, 655, 888, 660, 662, 674, 863, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 661, 674, 830, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11229)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4787)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6362)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2617)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [830], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [830, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [888], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 879), items: [863, 866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(830, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 888, 660, 661, 674, 863, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (888, true), (660, true), (661, true), (674, true), (863, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 661, 674, 830, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 830, 992, 654, 655, 888, 660, 661, 674, 863, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 415, 653, 654, 655, 660, 661, 674, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10814)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4820)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(6, SumMonoid(5499)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 415], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 415], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(866, 921), fp: EncodedCountingMonoid(3, SumMonoid(2655)) }], item_sets: [ItemSet { range: Range(772, 866), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (415, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [863, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(879, 921), items: [888, 901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(863, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 660, 661, 674, 866, 888, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (660, true), (661, true), (674, true), (866, true), (888, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 415, 653, 654, 655, 660, 661, 674, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 415, 863, 921, 931, 992, 654, 655, 660, 661, 674, 866, 888, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 415, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 415, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 415, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 623, 653, 654, 655, 660, 661, 674, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11022)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4820)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(6, SumMonoid(5499)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 623], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 623], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(866, 921), fp: EncodedCountingMonoid(3, SumMonoid(2655)) }], item_sets: [ItemSet { range: Range(772, 866), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (623, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [863, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(879, 921), items: [888, 901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(863, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 660, 661, 674, 866, 888, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (660, true), (661, true), (674, true), (866, true), (888, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 623, 653, 654, 655, 660, 661, 674, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 623, 863, 921, 931, 992, 654, 655, 660, 661, 674, 866, 888, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 623, 624, 640, 653, 654, 655, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 623, 624, 640, 653, 654, 655, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 623, 624, 640, 653, 654, 655, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 661, 674, 727, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11126)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4684)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6362)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 661), fp: EncodedCountingMonoid(4, SumMonoid(2622)) }, Fingerprint { range: Range(661, 772), fp: EncodedCountingMonoid(3, SumMonoid(2062)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2617)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(661, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 661), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 661), items: [653, 654, 655, 660], want_response: false }, ItemSet { range: Range(879, 901), items: [888], want_response: false }, ItemSet { range: Range(661, 727), items: [661, 674], want_response: true }, ItemSet { range: Range(727, 737), items: [727], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 879), items: [863, 866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(661, 727), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(727, 737), items: [], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 660, 888, 661, 674, 727, 863, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (660, true), (888, true), (661, true), (674, true), (727, true), (863, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 661, 674, 727, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 660, 888, 661, 674, 727, 863, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 661, 674, 675, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11074)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4632)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6362)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 661), fp: EncodedCountingMonoid(4, SumMonoid(2622)) }, Fingerprint { range: Range(661, 772), fp: EncodedCountingMonoid(3, SumMonoid(2010)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2617)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(661, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 661), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 661), items: [653, 654, 655, 660], want_response: false }, ItemSet { range: Range(879, 901), items: [888], want_response: false }, ItemSet { range: Range(661, 675), items: [661, 674], want_response: true }, ItemSet { range: Range(675, 737), items: [675], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 879), items: [863, 866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(661, 675), items: [666], want_response: false }, ItemSet { range: Range(675, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 660, 888, 661, 674, 675, 863, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (660, true), (888, true), (661, true), (674, true), (675, true), (863, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 661, 674, 675, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 660, 888, 661, 674, 675, 863, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 649, 653, 654, 655, 660, 661, 674, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11048)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4820)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(6, SumMonoid(5499)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 649], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 649], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(866, 921), fp: EncodedCountingMonoid(3, SumMonoid(2655)) }], item_sets: [ItemSet { range: Range(772, 866), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (649, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [863, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(879, 921), items: [888, 901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(863, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 660, 661, 674, 866, 888, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (660, true), (661, true), (674, true), (866, true), (888, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 649, 653, 654, 655, 660, 661, 674, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 649, 863, 921, 931, 992, 654, 655, 660, 661, 674, 866, 888, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 649, 653, 654, 655, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 649, 653, 654, 655, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 649, 653, 654, 655, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 661, 662, 674, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11061)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4619)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6362)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 661), fp: EncodedCountingMonoid(4, SumMonoid(2622)) }, Fingerprint { range: Range(661, 772), fp: EncodedCountingMonoid(3, SumMonoid(1997)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2617)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(661, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 661), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 661), items: [653, 654, 655, 660], want_response: false }, ItemSet { range: Range(879, 901), items: [888], want_response: false }, ItemSet { range: Range(661, 674), items: [661, 662], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 879), items: [863, 866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(661, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 660, 888, 661, 662, 674, 863, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (660, true), (888, true), (661, true), (662, true), (674, true), (863, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 661, 662, 674, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 660, 888, 661, 662, 674, 863, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11055)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6362)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2617)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [888], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 879), items: [863, 866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 888, 660, 661, 674, 863, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (888, true), (660, true), (661, true), (674, true), (863, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 888, 660, 661, 674, 863, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 661, 674, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(14, SumMonoid(10399)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4820)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(6, SumMonoid(5499)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(866, 921), fp: EncodedCountingMonoid(3, SumMonoid(2655)) }], item_sets: [ItemSet { range: Range(772, 866), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [863, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(879, 921), items: [888, 901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(863, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 660, 661, 674, 866, 888, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (660, true), (661, true), (674, true), (866, true), (888, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 661, 674, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 863, 921, 931, 992, 654, 655, 660, 661, 674, 866, 888, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 660, 661, 674, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(14, SumMonoid(10399)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 866), fp: EncodedCountingMonoid(7, SumMonoid(4820)) }, Fingerprint { range: Range(866, 993), fp: EncodedCountingMonoid(6, SumMonoid(5499)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 866), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(866, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(866, 921), fp: EncodedCountingMonoid(3, SumMonoid(2655)) }], item_sets: [ItemSet { range: Range(772, 866), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 866), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [863, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(879, 921), items: [888, 901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(863, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 660, 661, 674, 866, 888, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (660, true), (661, true), (674, true), (866, true), (888, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 660, 661, 674, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 863, 921, 931, 992, 654, 655, 660, 661, 674, 866, 888, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 888, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 866, 888, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11055)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6362)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2617)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [888], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 879), items: [863, 866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 888, 660, 661, 674, 863, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (888, true), (660, true), (661, true), (674, true), (863, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 866, 888, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 888, 660, 661, 674, 863, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 444, 653, 654, 655, 656, 660, 661, 674, 863, 866, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10611)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(6, SumMonoid(5474)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 444], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 444], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (444, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 879), items: [863, 866], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 863, 866, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (863, true), (866, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 444, 653, 654, 655, 656, 660, 661, 674, 863, 866, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 444, 921, 931, 992, 654, 655, 656, 660, 661, 674, 863, 866, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 444, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 444, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 444, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 666, 674, 863, 866, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10833)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 674), fp: EncodedCountingMonoid(7, SumMonoid(4605)) }, Fingerprint { range: Range(674, 993), fp: EncodedCountingMonoid(7, SumMonoid(6148)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(674, 869), fp: EncodedCountingMonoid(15, SumMonoid(11727)) }, Fingerprint { range: Range(869, 993), fp: EncodedCountingMonoid(14, SumMonoid(13027)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }, ItemSet { range: Range(653, 674), items: [653, 666], want_response: true }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 674), items: [653, 654, 655, 656, 660, 661, 666], want_response: false }, ItemSet { range: Range(674, 866), items: [674, 863], want_response: true }, ItemSet { range: Range(866, 869), items: [866], want_response: true }, ItemSet { range: Range(869, 931), items: [901, 921], want_response: true }, ItemSet { range: Range(931, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 866), items: [682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(866, 869), items: [867], want_response: false }, ItemSet { range: Range(869, 931), items: [869, 873, 879, 897, 902, 925, 926], want_response: false }, ItemSet { range: Range(931, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 863, 866, 901, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (863, true), (866, true), (901, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 666, 674, 863, 866, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 654, 655, 656, 660, 661, 674, 863, 866, 901, 921, 931, 992]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 777, 863, 866, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10944)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 777), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(777, 993), fp: EncodedCountingMonoid(7, SumMonoid(6251)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 737), fp: EncodedCountingMonoid(5, SumMonoid(3395)) }, Fingerprint { range: Range(737, 777), fp: EncodedCountingMonoid(4, SumMonoid(3011)) }, Fingerprint { range: Range(777, 897), fp: EncodedCountingMonoid(11, SumMonoid(9261)) }, Fingerprint { range: Range(897, 993), fp: EncodedCountingMonoid(11, SumMonoid(10406)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }], item_sets: [ItemSet { range: Range(737, 777), items: [], want_response: true }, ItemSet { range: Range(777, 866), items: [777, 863], want_response: true }, ItemSet { range: Range(866, 897), items: [866], want_response: true }, ItemSet { range: Range(897, 931), items: [901, 921], want_response: true }, ItemSet { range: Range(931, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(737, 777), items: [737, 742, 760, 772], want_response: false }, ItemSet { range: Range(777, 866), items: [777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(866, 897), items: [867, 869, 873, 879], want_response: false }, ItemSet { range: Range(897, 931), items: [897, 902, 925, 926], want_response: false }, ItemSet { range: Range(931, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(660, 689), items: [666, 682], want_response: true }, ItemSet { range: Range(689, 737), items: [689, 705], want_response: true }], wants: [863, 866, 901, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(660, 689), items: [660, 661, 674], want_response: false }, ItemSet { range: Range(689, 737), items: [], want_response: false }], wants: [737, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705], provide: [(863, true), (866, true), (901, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [654, 655, 656, 660, 661, 674], provide: [(737, true), (742, true), (760, true), (772, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (666, true), (682, true), (689, true), (705, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 777, 863, 866, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 737, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 863, 866, 901, 921, 931, 992, 654, 655, 656, 660, 661, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 833, 863, 866, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11000)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 833), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(833, 993), fp: EncodedCountingMonoid(7, SumMonoid(6307)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 742), fp: EncodedCountingMonoid(6, SumMonoid(4132)) }, Fingerprint { range: Range(742, 833), fp: EncodedCountingMonoid(6, SumMonoid(4646)) }, Fingerprint { range: Range(833, 925), fp: EncodedCountingMonoid(10, SumMonoid(8688)) }, Fingerprint { range: Range(925, 993), fp: EncodedCountingMonoid(9, SumMonoid(8607)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 742), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(833, 901), fp: EncodedCountingMonoid(3, SumMonoid(2562)) }], item_sets: [ItemSet { range: Range(742, 833), items: [], want_response: true }, ItemSet { range: Range(901, 925), items: [901, 921], want_response: true }, ItemSet { range: Range(925, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(833, 869), fp: EncodedCountingMonoid(5, SumMonoid(4268)) }, Fingerprint { range: Range(869, 901), fp: EncodedCountingMonoid(4, SumMonoid(3518)) }], item_sets: [ItemSet { range: Range(742, 833), items: [742, 760, 772, 777, 788, 807], want_response: false }, ItemSet { range: Range(901, 925), items: [902], want_response: false }, ItemSet { range: Range(925, 993), items: [925, 926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(705, 742), items: [705, 737], want_response: true }], wants: [901, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(705, 742), items: [], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 705), items: [674], want_response: true }, ItemSet { range: Range(833, 866), items: [833, 863], want_response: true }, ItemSet { range: Range(866, 869), items: [866], want_response: true }, ItemSet { range: Range(869, 901), items: [], want_response: true }], wants: [742, 760, 772, 777, 788, 807, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 705, 737], provide: [(901, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 705), items: [682, 689], want_response: false }, ItemSet { range: Range(833, 866), items: [838, 847, 854, 862], want_response: false }, ItemSet { range: Range(866, 869), items: [867], want_response: false }, ItemSet { range: Range(869, 901), items: [869, 873, 879, 897], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 833, 863, 866], provide: [(742, true), (760, true), (772, true), (777, true), (788, true), (807, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (705, true), (737, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 838, 847, 854, 862, 867, 869, 873, 879, 897], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (833, true), (863, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 833, 863, 866, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 742, 760, 772, 777, 788, 807, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 705, 737, 666, 682, 689, 838, 847, 854, 862, 867, 869, 873, 879, 897]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 901, 921, 931, 992, 654, 655, 656, 660, 661, 674, 833, 863, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 833, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 833, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 833, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 861, 863, 866, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11028)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 861), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(861, 993), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 861), fp: EncodedCountingMonoid(7, SumMonoid(5683)) }, Fingerprint { range: Range(861, 926), fp: EncodedCountingMonoid(8, SumMonoid(7074)) }, Fingerprint { range: Range(926, 993), fp: EncodedCountingMonoid(8, SumMonoid(7682)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(861, 901), fp: EncodedCountingMonoid(3, SumMonoid(2590)) }], item_sets: [ItemSet { range: Range(772, 861), items: [], want_response: true }, ItemSet { range: Range(901, 926), items: [901, 921], want_response: true }, ItemSet { range: Range(926, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(861, 873), fp: EncodedCountingMonoid(3, SumMonoid(2598)) }, Fingerprint { range: Range(873, 901), fp: EncodedCountingMonoid(3, SumMonoid(2649)) }], item_sets: [ItemSet { range: Range(772, 861), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: false }, ItemSet { range: Range(926, 993), items: [926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [901, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(861, 866), items: [861, 863], want_response: true }, ItemSet { range: Range(866, 873), items: [866], want_response: true }, ItemSet { range: Range(873, 901), items: [], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(901, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(861, 866), items: [862], want_response: false }, ItemSet { range: Range(866, 873), items: [867, 869], want_response: false }, ItemSet { range: Range(873, 901), items: [873, 879, 897], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 861, 863, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 862, 867, 869, 873, 879, 897], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (861, true), (863, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 861, 863, 866, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 760, 862, 867, 869, 873, 879, 897]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 901, 921, 931, 992, 654, 655, 656, 660, 661, 674, 861, 863, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 861, 862, 863, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 861, 862, 863, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 861, 862, 863, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 866, 875, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11042)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6349)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2604)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 875), items: [863, 866], want_response: true }, ItemSet { range: Range(875, 879), items: [875], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 875), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(875, 879), items: [], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 863, 866, 875], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (863, true), (866, true), (875, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 866, 875, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 660, 661, 674, 863, 866, 875]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 866, 868, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11035)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6342)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2597)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 868), items: [863, 866], want_response: true }, ItemSet { range: Range(868, 879), items: [868], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 868), items: [867], want_response: false }, ItemSet { range: Range(868, 879), items: [869, 873], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 863, 866, 868], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (863, true), (866, true), (868, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 866, 868, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 660, 661, 674, 863, 866, 868]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 865, 866, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11032)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6339)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2594)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 866), items: [863, 865], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 866), items: [], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 863, 865, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (863, true), (865, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 865, 866, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 660, 661, 674, 863, 865, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 866, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(14, SumMonoid(10167)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(6, SumMonoid(5474)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 879), items: [863, 866], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 863, 866, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (863, true), (866, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 866, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 921, 931, 992, 654, 655, 656, 660, 661, 674, 863, 866, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11031)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6338)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2593)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 866), items: [863, 864], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 866), items: [], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 863, 864, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (863, true), (864, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 660, 661, 674, 863, 864, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 466, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 921, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10566)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(6, SumMonoid(5407)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 466], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 466], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2593)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(901, 947), items: [901, 921], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (466, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(901, 947), items: [902, 925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [901, 921, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 866), items: [863, 864], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(901, true), (921, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 866), items: [], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 863, 864, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (863, true), (864, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 466, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 921, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 466, 901, 921, 992, 654, 655, 656, 660, 661, 674, 863, 864, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 466, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 466, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 466, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 699, 863, 864, 866, 901, 921, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10799)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 699), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(699, 993), fp: EncodedCountingMonoid(7, SumMonoid(6106)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(699, 873), fp: EncodedCountingMonoid(14, SumMonoid(11225)) }, Fingerprint { range: Range(873, 993), fp: EncodedCountingMonoid(13, SumMonoid(12158)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }, ItemSet { range: Range(653, 682), items: [653, 666], want_response: true }, ItemSet { range: Range(682, 699), items: [682, 689], want_response: true }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 682), items: [653, 654, 655, 656, 660, 661, 674], want_response: false }, ItemSet { range: Range(682, 699), items: [], want_response: false }, ItemSet { range: Range(699, 864), items: [699, 863], want_response: true }, ItemSet { range: Range(864, 873), items: [864, 866], want_response: true }, ItemSet { range: Range(873, 992), items: [901, 921], want_response: true }, ItemSet { range: Range(992, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 666, 682, 689], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(699, 864), items: [705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(864, 873), items: [867, 869], want_response: false }, ItemSet { range: Range(873, 992), items: [873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 699, 863, 864, 866, 901, 921, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (666, true), (682, true), (689, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (699, true), (863, true), (864, true), (866, true), (901, true), (921, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(705, true), (737, true), (742, true), (760, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 699, 863, 864, 866, 901, 921, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 654, 655, 656, 660, 661, 674, 699, 863, 864, 866, 901, 921, 992]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 699, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 699, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 699, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 815, 863, 864, 866, 901, 921, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10915)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 815), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(815, 993), fp: EncodedCountingMonoid(7, SumMonoid(6222)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 742), fp: EncodedCountingMonoid(6, SumMonoid(4132)) }, Fingerprint { range: Range(742, 815), fp: EncodedCountingMonoid(6, SumMonoid(4646)) }, Fingerprint { range: Range(815, 925), fp: EncodedCountingMonoid(10, SumMonoid(8688)) }, Fingerprint { range: Range(925, 993), fp: EncodedCountingMonoid(9, SumMonoid(8607)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 742), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(815, 866), fp: EncodedCountingMonoid(3, SumMonoid(2542)) }, Fingerprint { range: Range(866, 925), fp: EncodedCountingMonoid(3, SumMonoid(2688)) }], item_sets: [ItemSet { range: Range(742, 815), items: [], want_response: true }, ItemSet { range: Range(925, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(866, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 925), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(742, 815), items: [742, 760, 772, 777, 788, 807], want_response: false }, ItemSet { range: Range(925, 993), items: [925, 926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(705, 742), items: [705, 737], want_response: true }, ItemSet { range: Range(815, 854), items: [838, 847], want_response: true }, ItemSet { range: Range(854, 866), items: [854, 862], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(705, 742), items: [], want_response: false }, ItemSet { range: Range(815, 854), items: [815], want_response: false }, ItemSet { range: Range(854, 866), items: [863, 864], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 705), items: [674], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }, ItemSet { range: Range(879, 925), items: [901, 921], want_response: true }], wants: [742, 760, 772, 777, 788, 807, 925, 926, 947, 953, 954, 969, 970, 973, 990, 705, 737, 838, 847, 854, 862], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 705), items: [682, 689], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 925), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 815, 863, 864, 660, 661, 674, 866, 901, 921], provide: [(742, true), (760, true), (772, true), (777, true), (788, true), (807, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (705, true), (737, true), (838, true), (847, true), (854, true), (862, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (815, true), (863, true), (864, true), (660, true), (661, true), (674, true), (866, true), (901, true), (921, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 815, 863, 864, 866, 901, 921, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 742, 760, 772, 777, 788, 807, 925, 926, 947, 953, 954, 969, 970, 973, 990, 705, 737, 838, 847, 854, 862, 666, 682, 689, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 815, 863, 864, 660, 661, 674, 866, 901, 921]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 815, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 815, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 815, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 873, 901, 921, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10973)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6280)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 873), fp: EncodedCountingMonoid(3, SumMonoid(2593)) }, Fingerprint { range: Range(873, 947), fp: EncodedCountingMonoid(3, SumMonoid(2695)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(873, 902), fp: EncodedCountingMonoid(3, SumMonoid(2649)) }, Fingerprint { range: Range(902, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 866], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(873, 902), items: [873, 901], want_response: true }, ItemSet { range: Range(902, 947), items: [921], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 867, 869], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(873, 902), items: [873, 879, 897], want_response: false }, ItemSet { range: Range(902, 947), items: [902, 925, 926], want_response: false }], wants: [654, 655, 656, 863, 864, 866, 660, 661, 674, 901, 921], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (867, true), (869, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 879, 897, 902, 925, 926], provide: [(654, true), (655, true), (656, true), (863, true), (864, true), (866, true), (660, true), (661, true), (674, true), (901, true), (921, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (879, true), (897, true), (902, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 873, 901, 921, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 867, 869, 666, 682, 689, 705, 737, 742, 760, 879, 897, 902, 925, 926]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 863, 864, 866, 660, 661, 674, 901, 921]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 902, 921, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11002)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6309)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2593)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2724)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: true }, ItemSet { range: Range(926, 947), items: [926], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(901, 926), items: [901, 902, 921], want_response: false }, ItemSet { range: Range(926, 947), items: [], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 866), items: [863, 864], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 925, 926], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 866), items: [], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 901, 921, 660, 661, 674, 863, 864, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (901, true), (921, true), (660, true), (661, true), (674, true), (863, true), (864, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 902, 921, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 925, 926, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 901, 921, 660, 661, 674, 863, 864, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 917, 921, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11017)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6324)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2593)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2739)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: true }, ItemSet { range: Range(926, 947), items: [926], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(901, 926), items: [901, 917, 921], want_response: false }, ItemSet { range: Range(926, 947), items: [], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 866), items: [863, 864], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 902, 925, 926], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 866), items: [], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 901, 917, 921, 660, 661, 674, 863, 864, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true), (902, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (901, true), (917, true), (921, true), (660, true), (661, true), (674, true), (863, true), (864, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 917, 921, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 902, 925, 926, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 901, 917, 921, 660, 661, 674, 863, 864, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 917, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 917, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 917, 921, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 921, 924, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11024)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6331)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2593)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2746)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: true }, ItemSet { range: Range(926, 947), items: [926], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(901, 926), items: [901, 921, 924], want_response: false }, ItemSet { range: Range(926, 947), items: [], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 866), items: [863, 864], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 902, 925, 926], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 866), items: [], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 901, 921, 924, 660, 661, 674, 863, 864, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true), (902, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (901, true), (921, true), (924, true), (660, true), (661, true), (674, true), (863, true), (864, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 921, 924, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 902, 925, 926, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 901, 921, 924, 660, 661, 674, 863, 864, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 924, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 924, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 924, 925, 926, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 921, 928, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11028)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2593)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2750)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: true }, ItemSet { range: Range(926, 947), items: [926], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(901, 926), items: [901, 921], want_response: false }, ItemSet { range: Range(926, 947), items: [928], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 866), items: [863, 864], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 902, 925, 926], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 866), items: [], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 901, 921, 928, 660, 661, 674, 863, 864, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true), (902, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (901, true), (921, true), (928, true), (660, true), (661, true), (674, true), (863, true), (864, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 921, 928, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 902, 925, 926, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 901, 921, 928, 660, 661, 674, 863, 864, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 928, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 928, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 928, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 921, 930, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11030)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6337)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2593)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2752)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: true }, ItemSet { range: Range(926, 947), items: [926], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(901, 926), items: [901, 921], want_response: false }, ItemSet { range: Range(926, 947), items: [930], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 866), items: [863, 864], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 902, 925, 926], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 866), items: [], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 901, 921, 930, 660, 661, 674, 863, 864, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true), (902, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (901, true), (921, true), (930, true), (660, true), (661, true), (674, true), (863, true), (864, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 921, 930, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 902, 925, 926, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 901, 921, 930, 660, 661, 674, 863, 864, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 930, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 930, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 930, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11031)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6338)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2593)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 866), items: [863, 864], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 866), items: [], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 863, 864, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (863, true), (864, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 660, 661, 674, 863, 864, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 461, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10571)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(6, SumMonoid(5417)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 461], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 461], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2593)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(901, 947), items: [901, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (461, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(901, 947), items: [902, 925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [901, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 866), items: [863, 864], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(901, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 866), items: [], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 863, 864, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (863, true), (864, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 461, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 461, 901, 931, 992, 654, 655, 656, 660, 661, 674, 863, 864, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 461, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 461, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 461, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 691, 863, 864, 866, 901, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10801)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 691), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(691, 993), fp: EncodedCountingMonoid(7, SumMonoid(6108)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(691, 873), fp: EncodedCountingMonoid(14, SumMonoid(11225)) }, Fingerprint { range: Range(873, 993), fp: EncodedCountingMonoid(13, SumMonoid(12158)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }, ItemSet { range: Range(653, 682), items: [653, 666], want_response: true }, ItemSet { range: Range(682, 691), items: [682, 689], want_response: true }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 682), items: [653, 654, 655, 656, 660, 661, 674], want_response: false }, ItemSet { range: Range(682, 691), items: [], want_response: false }, ItemSet { range: Range(691, 864), items: [691, 863], want_response: true }, ItemSet { range: Range(864, 873), items: [864, 866], want_response: true }, ItemSet { range: Range(873, 992), items: [901, 931], want_response: true }, ItemSet { range: Range(992, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 666, 682, 689], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(691, 864), items: [705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(864, 873), items: [867, 869], want_response: false }, ItemSet { range: Range(873, 992), items: [873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(992, 993), items: [], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 691, 863, 864, 866, 901, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true), (666, true), (682, true), (689, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (691, true), (863, true), (864, true), (866, true), (901, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(705, true), (737, true), (742, true), (760, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 691, 863, 864, 866, 901, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 654, 655, 656, 660, 661, 674, 691, 863, 864, 866, 901, 931, 992]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 691, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 691, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 691, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 806, 863, 864, 866, 901, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10916)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 806), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(806, 993), fp: EncodedCountingMonoid(7, SumMonoid(6223)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 742), fp: EncodedCountingMonoid(6, SumMonoid(4132)) }, Fingerprint { range: Range(742, 806), fp: EncodedCountingMonoid(5, SumMonoid(3839)) }, Fingerprint { range: Range(806, 902), fp: EncodedCountingMonoid(10, SumMonoid(8593)) }, Fingerprint { range: Range(902, 993), fp: EncodedCountingMonoid(10, SumMonoid(9509)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 742), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(806, 866), fp: EncodedCountingMonoid(3, SumMonoid(2533)) }], item_sets: [ItemSet { range: Range(742, 806), items: [], want_response: true }, ItemSet { range: Range(866, 902), items: [866, 901], want_response: true }, ItemSet { range: Range(902, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(806, 854), fp: EncodedCountingMonoid(3, SumMonoid(2492)) }], item_sets: [ItemSet { range: Range(742, 806), items: [742, 760, 772, 777, 788], want_response: false }, ItemSet { range: Range(866, 902), items: [867, 869, 873, 879, 897], want_response: false }, ItemSet { range: Range(902, 993), items: [902, 925, 926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(705, 742), items: [705, 737], want_response: true }, ItemSet { range: Range(854, 866), items: [854, 862], want_response: true }], wants: [866, 901, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(705, 742), items: [], want_response: false }, ItemSet { range: Range(854, 866), items: [863, 864], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 705), items: [674], want_response: true }, ItemSet { range: Range(806, 854), items: [806], want_response: true }], wants: [742, 760, 772, 777, 788, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 705, 737, 854, 862], provide: [(866, true), (901, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 705), items: [682, 689], want_response: false }, ItemSet { range: Range(806, 854), items: [807, 838, 847], want_response: false }], wants: [654, 655, 656, 863, 864, 660, 661, 674, 806], provide: [(742, true), (760, true), (772, true), (777, true), (788, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (705, true), (737, true), (854, true), (862, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 807, 838, 847], provide: [(654, true), (655, true), (656, true), (863, true), (864, true), (660, true), (661, true), (674, true), (806, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (807, true), (838, true), (847, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 806, 863, 864, 866, 901, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 742, 760, 772, 777, 788, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 705, 737, 854, 862, 666, 682, 689, 807, 838, 847]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 866, 901, 931, 992, 654, 655, 656, 863, 864, 660, 661, 674, 806]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 806, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 806, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 806, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(14, SumMonoid(10110)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(6, SumMonoid(5417)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2593)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(901, 947), items: [901, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(901, 947), items: [902, 925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [901, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 866), items: [863, 864], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(901, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 866), items: [], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 863, 864, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (863, true), (864, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 901, 931, 992, 654, 655, 656, 660, 661, 674, 863, 864, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 893, 901, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11003)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6310)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 893), fp: EncodedCountingMonoid(3, SumMonoid(2593)) }, Fingerprint { range: Range(893, 947), fp: EncodedCountingMonoid(3, SumMonoid(2725)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 893), items: [873, 879], want_response: true }, ItemSet { range: Range(893, 925), items: [897, 902], want_response: true }, ItemSet { range: Range(925, 947), items: [925, 926], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 866], want_response: false }, ItemSet { range: Range(873, 893), items: [], want_response: false }, ItemSet { range: Range(893, 925), items: [893, 901], want_response: false }, ItemSet { range: Range(925, 947), items: [931], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 867, 869, 873, 879, 897, 902, 925, 926], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }], wants: [654, 655, 656, 863, 864, 866, 893, 901, 931, 660, 661, 674], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760], provide: [(654, true), (655, true), (656, true), (863, true), (864, true), (866, true), (893, true), (901, true), (931, true), (660, true), (661, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 893, 901, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 867, 869, 873, 879, 897, 902, 925, 926, 666, 682, 689, 705, 737, 742, 760]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 863, 864, 866, 893, 901, 931, 660, 661, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 893, 897, 901, 902, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 893, 897, 901, 902, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 893, 897, 901, 902, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 907, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11017)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6324)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2593)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2739)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: true }, ItemSet { range: Range(926, 947), items: [926], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(901, 926), items: [901, 907], want_response: false }, ItemSet { range: Range(926, 947), items: [931], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 866), items: [863, 864], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 902, 925, 926], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 866), items: [], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 901, 907, 931, 660, 661, 674, 863, 864, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true), (902, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (901, true), (907, true), (931, true), (660, true), (661, true), (674, true), (863, true), (864, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 907, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 902, 925, 926, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 901, 907, 931, 660, 661, 674, 863, 864, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 907, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 907, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 907, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 914, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11024)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6331)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2593)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2746)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: true }, ItemSet { range: Range(926, 947), items: [926], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(901, 926), items: [901, 914], want_response: false }, ItemSet { range: Range(926, 947), items: [931], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 866), items: [863, 864], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 902, 925, 926], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 866), items: [], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 901, 914, 931, 660, 661, 674, 863, 864, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true), (902, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (901, true), (914, true), (931, true), (660, true), (661, true), (674, true), (863, true), (864, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 914, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 902, 925, 926, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 901, 914, 931, 660, 661, 674, 863, 864, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 914, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 914, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 914, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 918, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11028)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2593)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2750)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: true }, ItemSet { range: Range(926, 947), items: [926], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(901, 926), items: [901, 918], want_response: false }, ItemSet { range: Range(926, 947), items: [931], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 866), items: [863, 864], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 902, 925, 926], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 866), items: [], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 901, 918, 931, 660, 661, 674, 863, 864, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true), (902, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (901, true), (918, true), (931, true), (660, true), (661, true), (674, true), (863, true), (864, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 918, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 902, 925, 926, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 901, 918, 931, 660, 661, 674, 863, 864, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 918, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 918, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 918, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 920, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11030)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6337)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2593)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2752)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: true }, ItemSet { range: Range(926, 947), items: [926], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(901, 926), items: [901, 920], want_response: false }, ItemSet { range: Range(926, 947), items: [931], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 866), items: [863, 864], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 902, 925, 926], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 866), items: [], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 901, 920, 931, 660, 661, 674, 863, 864, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true), (902, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (901, true), (920, true), (931, true), (660, true), (661, true), (674, true), (863, true), (864, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 920, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 902, 925, 926, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 901, 920, 931, 660, 661, 674, 863, 864, 866]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 920, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 920, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 866, 867, 869, 873, 879, 897, 901, 902, 920, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11031)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6338)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2593)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 866), items: [863, 864], want_response: true }, ItemSet { range: Range(866, 879), items: [866], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 866), items: [], want_response: false }, ItemSet { range: Range(866, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 863, 864, 866], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (863, true), (864, true), (866, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 866, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 660, 661, 674, 863, 864, 866]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 433, 653, 654, 655, 656, 660, 661, 674, 863, 864, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10598)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 433], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 433], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 921), fp: EncodedCountingMonoid(3, SumMonoid(2628)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (433, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 879), items: [863, 864], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 863, 864, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (863, true), (864, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 433, 653, 654, 655, 656, 660, 661, 674, 863, 864, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 433, 921, 931, 992, 654, 655, 656, 660, 661, 674, 863, 864, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 433, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 433, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 433, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 650, 653, 654, 655, 656, 660, 661, 674, 863, 864, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10815)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 650], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 650], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 921), fp: EncodedCountingMonoid(3, SumMonoid(2628)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (650, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 879), items: [863, 864], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 863, 864, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (863, true), (864, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 650, 653, 654, 655, 656, 660, 661, 674, 863, 864, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 650, 921, 931, 992, 654, 655, 656, 660, 661, 674, 863, 864, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 650, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 650, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 650, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 758, 863, 864, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10923)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 758), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(758, 993), fp: EncodedCountingMonoid(7, SumMonoid(6230)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 705), fp: EncodedCountingMonoid(4, SumMonoid(2690)) }, Fingerprint { range: Range(705, 758), fp: EncodedCountingMonoid(3, SumMonoid(2184)) }, Fingerprint { range: Range(758, 879), fp: EncodedCountingMonoid(12, SumMonoid(9914)) }, Fingerprint { range: Range(879, 993), fp: EncodedCountingMonoid(12, SumMonoid(11285)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 705), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }], item_sets: [ItemSet { range: Range(705, 758), items: [], want_response: true }, ItemSet { range: Range(758, 864), items: [758, 863], want_response: true }, ItemSet { range: Range(864, 879), items: [864], want_response: true }, ItemSet { range: Range(879, 931), items: [901, 921], want_response: true }, ItemSet { range: Range(931, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 758), items: [705, 737, 742], want_response: false }, ItemSet { range: Range(758, 864), items: [760, 772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 931), items: [879, 897, 902, 925, 926], want_response: false }, ItemSet { range: Range(931, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(660, 689), items: [666, 682], want_response: true }, ItemSet { range: Range(689, 705), items: [689], want_response: true }], wants: [758, 863, 864, 901, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(660, 689), items: [660, 661, 674], want_response: false }, ItemSet { range: Range(689, 705), items: [], want_response: false }], wants: [705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689], provide: [(758, true), (863, true), (864, true), (901, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [654, 655, 656, 660, 661, 674], provide: [(705, true), (737, true), (742, true), (760, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (666, true), (682, true), (689, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 758, 863, 864, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 758, 863, 864, 901, 921, 931, 992, 654, 655, 656, 660, 661, 674]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 758, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 758, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 758, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 812, 863, 864, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10977)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 812), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(812, 993), fp: EncodedCountingMonoid(7, SumMonoid(6284)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 742), fp: EncodedCountingMonoid(6, SumMonoid(4132)) }, Fingerprint { range: Range(742, 812), fp: EncodedCountingMonoid(6, SumMonoid(4646)) }, Fingerprint { range: Range(812, 925), fp: EncodedCountingMonoid(10, SumMonoid(8688)) }, Fingerprint { range: Range(925, 993), fp: EncodedCountingMonoid(9, SumMonoid(8607)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 742), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(812, 901), fp: EncodedCountingMonoid(3, SumMonoid(2539)) }], item_sets: [ItemSet { range: Range(742, 812), items: [], want_response: true }, ItemSet { range: Range(901, 925), items: [901, 921], want_response: true }, ItemSet { range: Range(925, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(812, 869), fp: EncodedCountingMonoid(5, SumMonoid(4268)) }, Fingerprint { range: Range(869, 901), fp: EncodedCountingMonoid(4, SumMonoid(3518)) }], item_sets: [ItemSet { range: Range(742, 812), items: [742, 760, 772, 777, 788, 807], want_response: false }, ItemSet { range: Range(901, 925), items: [902], want_response: false }, ItemSet { range: Range(925, 993), items: [925, 926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(705, 742), items: [705, 737], want_response: true }], wants: [901, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(705, 742), items: [], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 705), items: [674], want_response: true }, ItemSet { range: Range(812, 864), items: [812, 863], want_response: true }, ItemSet { range: Range(864, 869), items: [864], want_response: true }, ItemSet { range: Range(869, 901), items: [], want_response: true }], wants: [742, 760, 772, 777, 788, 807, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 705, 737], provide: [(901, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 705), items: [682, 689], want_response: false }, ItemSet { range: Range(812, 864), items: [838, 847, 854, 862], want_response: false }, ItemSet { range: Range(864, 869), items: [867], want_response: false }, ItemSet { range: Range(869, 901), items: [869, 873, 879, 897], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 812, 863, 864], provide: [(742, true), (760, true), (772, true), (777, true), (788, true), (807, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (705, true), (737, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 838, 847, 854, 862, 867, 869, 873, 879, 897], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (812, true), (863, true), (864, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 812, 863, 864, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 742, 760, 772, 777, 788, 807, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 705, 737, 666, 682, 689, 838, 847, 854, 862, 867, 869, 873, 879, 897]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 901, 921, 931, 992, 654, 655, 656, 660, 661, 674, 812, 863, 864]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 812, 838, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 812, 838, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 812, 838, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 839, 863, 864, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11004)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 839), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(839, 993), fp: EncodedCountingMonoid(7, SumMonoid(6311)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 760), fp: EncodedCountingMonoid(7, SumMonoid(4874)) }, Fingerprint { range: Range(760, 839), fp: EncodedCountingMonoid(6, SumMonoid(4742)) }, Fingerprint { range: Range(839, 925), fp: EncodedCountingMonoid(9, SumMonoid(7850)) }, Fingerprint { range: Range(925, 993), fp: EncodedCountingMonoid(9, SumMonoid(8607)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 760), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(839, 901), fp: EncodedCountingMonoid(3, SumMonoid(2566)) }], item_sets: [ItemSet { range: Range(760, 839), items: [], want_response: true }, ItemSet { range: Range(901, 925), items: [901, 921], want_response: true }, ItemSet { range: Range(925, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(705, 760), fp: EncodedCountingMonoid(3, SumMonoid(2184)) }, Fingerprint { range: Range(839, 869), fp: EncodedCountingMonoid(4, SumMonoid(3430)) }, Fingerprint { range: Range(869, 901), fp: EncodedCountingMonoid(4, SumMonoid(3518)) }], item_sets: [ItemSet { range: Range(760, 839), items: [760, 772, 777, 788, 807, 838], want_response: false }, ItemSet { range: Range(901, 925), items: [902], want_response: false }, ItemSet { range: Range(925, 993), items: [925, 926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [901, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 705), items: [674], want_response: true }, ItemSet { range: Range(705, 760), items: [], want_response: true }, ItemSet { range: Range(839, 864), items: [839, 863], want_response: true }, ItemSet { range: Range(864, 869), items: [864], want_response: true }, ItemSet { range: Range(869, 901), items: [], want_response: true }], wants: [760, 772, 777, 788, 807, 838, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(901, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 705), items: [682, 689], want_response: false }, ItemSet { range: Range(705, 760), items: [705, 737, 742], want_response: false }, ItemSet { range: Range(839, 864), items: [847, 854, 862], want_response: false }, ItemSet { range: Range(864, 869), items: [867], want_response: false }, ItemSet { range: Range(869, 901), items: [869, 873, 879, 897], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 839, 863, 864], provide: [(760, true), (772, true), (777, true), (788, true), (807, true), (838, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 847, 854, 862, 867, 869, 873, 879, 897], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (839, true), (863, true), (864, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 839, 863, 864, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 760, 772, 777, 788, 807, 838, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 847, 854, 862, 867, 869, 873, 879, 897]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 901, 921, 931, 992, 654, 655, 656, 660, 661, 674, 839, 863, 864]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 839, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 839, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 839, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 853, 863, 864, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11018)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 853), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(853, 993), fp: EncodedCountingMonoid(7, SumMonoid(6325)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 760), fp: EncodedCountingMonoid(7, SumMonoid(4874)) }, Fingerprint { range: Range(760, 853), fp: EncodedCountingMonoid(7, SumMonoid(5589)) }, Fingerprint { range: Range(853, 926), fp: EncodedCountingMonoid(9, SumMonoid(7928)) }, Fingerprint { range: Range(926, 993), fp: EncodedCountingMonoid(8, SumMonoid(7682)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 760), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(853, 901), fp: EncodedCountingMonoid(3, SumMonoid(2580)) }], item_sets: [ItemSet { range: Range(760, 853), items: [], want_response: true }, ItemSet { range: Range(901, 926), items: [901, 921], want_response: true }, ItemSet { range: Range(926, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(705, 760), fp: EncodedCountingMonoid(3, SumMonoid(2184)) }, Fingerprint { range: Range(853, 873), fp: EncodedCountingMonoid(4, SumMonoid(3452)) }, Fingerprint { range: Range(873, 901), fp: EncodedCountingMonoid(3, SumMonoid(2649)) }], item_sets: [ItemSet { range: Range(760, 853), items: [760, 772, 777, 788, 807, 838, 847], want_response: false }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: false }, ItemSet { range: Range(926, 993), items: [926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [901, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 705), items: [674], want_response: true }, ItemSet { range: Range(705, 760), items: [], want_response: true }, ItemSet { range: Range(853, 864), items: [853, 863], want_response: true }, ItemSet { range: Range(864, 873), items: [864], want_response: true }, ItemSet { range: Range(873, 901), items: [], want_response: true }], wants: [760, 772, 777, 788, 807, 838, 847, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(901, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 705), items: [682, 689], want_response: false }, ItemSet { range: Range(705, 760), items: [705, 737, 742], want_response: false }, ItemSet { range: Range(853, 864), items: [854, 862], want_response: false }, ItemSet { range: Range(864, 873), items: [867, 869], want_response: false }, ItemSet { range: Range(873, 901), items: [873, 879, 897], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 853, 863, 864], provide: [(760, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 854, 862, 867, 869, 873, 879, 897], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (853, true), (863, true), (864, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 853, 863, 864, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 760, 772, 777, 788, 807, 838, 847, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 854, 862, 867, 869, 873, 879, 897]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 901, 921, 931, 992, 654, 655, 656, 660, 661, 674, 853, 863, 864]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 853, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 853, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 853, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 860, 863, 864, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11025)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 860), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(860, 993), fp: EncodedCountingMonoid(7, SumMonoid(6332)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 860), fp: EncodedCountingMonoid(7, SumMonoid(5683)) }, Fingerprint { range: Range(860, 926), fp: EncodedCountingMonoid(8, SumMonoid(7074)) }, Fingerprint { range: Range(926, 993), fp: EncodedCountingMonoid(8, SumMonoid(7682)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(860, 901), fp: EncodedCountingMonoid(3, SumMonoid(2587)) }], item_sets: [ItemSet { range: Range(772, 860), items: [], want_response: true }, ItemSet { range: Range(901, 926), items: [901, 921], want_response: true }, ItemSet { range: Range(926, 993), items: [931, 992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(860, 873), fp: EncodedCountingMonoid(3, SumMonoid(2598)) }, Fingerprint { range: Range(873, 901), fp: EncodedCountingMonoid(3, SumMonoid(2649)) }], item_sets: [ItemSet { range: Range(772, 860), items: [772, 777, 788, 807, 838, 847, 854], want_response: false }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: false }, ItemSet { range: Range(926, 993), items: [926, 947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [901, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(860, 864), items: [860, 863], want_response: true }, ItemSet { range: Range(864, 873), items: [864], want_response: true }, ItemSet { range: Range(873, 901), items: [], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(901, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(860, 864), items: [862], want_response: false }, ItemSet { range: Range(864, 873), items: [867, 869], want_response: false }, ItemSet { range: Range(873, 901), items: [873, 879, 897], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 860, 863, 864], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 862, 867, 869, 873, 879, 897], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (860, true), (863, true), (864, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 860, 863, 864, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 760, 862, 867, 869, 873, 879, 897]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 901, 921, 931, 992, 654, 655, 656, 660, 661, 674, 860, 863, 864]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 860, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 860, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 860, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(14, SumMonoid(10165)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 921), fp: EncodedCountingMonoid(3, SumMonoid(2628)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 879), items: [863, 864], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 863, 864, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (863, true), (864, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 921, 931, 992, 654, 655, 656, 660, 661, 674, 863, 864, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 865, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11030)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6337)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 865, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 660, 661, 674, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(14, SumMonoid(10165)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 921), fp: EncodedCountingMonoid(3, SumMonoid(2628)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }], wants: [921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 879), items: [863, 864], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 863, 864, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (863, true), (864, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 921, 931, 992, 654, 655, 656, 660, 661, 674, 863, 864, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 674, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 865, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11030)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4613)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6337)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1995)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(660, 674), items: [660, 661], want_response: true }, ItemSet { range: Range(674, 737), items: [674], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 674), items: [666], want_response: false }, ItemSet { range: Range(674, 737), items: [682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 660, 661, 674, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (674, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 674, 863, 864, 865, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 660, 661, 674, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 337, 653, 654, 655, 656, 660, 661, 863, 864, 865, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10693)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 864), fp: EncodedCountingMonoid(7, SumMonoid(4802)) }, Fingerprint { range: Range(864, 993), fp: EncodedCountingMonoid(6, SumMonoid(5474)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 337], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 337], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1977)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (337, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 656), items: [653], want_response: true }], wants: [863, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(863, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 660, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 337, 653, 654, 655, 656, 660, 661, 863, 864, 865, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 337, 863, 921, 931, 992, 654, 655, 656, 660, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 337, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 337, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 337, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 506, 653, 654, 655, 656, 660, 661, 863, 864, 865, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10862)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 864), fp: EncodedCountingMonoid(7, SumMonoid(4802)) }, Fingerprint { range: Range(864, 993), fp: EncodedCountingMonoid(6, SumMonoid(5474)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 506], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 506], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1977)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (506, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 656), items: [653], want_response: true }], wants: [863, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(863, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 660, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 506, 653, 654, 655, 656, 660, 661, 863, 864, 865, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 506, 863, 921, 931, 992, 654, 655, 656, 660, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 506, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 506, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 506, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 590, 653, 654, 655, 656, 660, 661, 863, 864, 865, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10946)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 864), fp: EncodedCountingMonoid(7, SumMonoid(4802)) }, Fingerprint { range: Range(864, 993), fp: EncodedCountingMonoid(6, SumMonoid(5474)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 590], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 590], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1977)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (590, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 656), items: [653], want_response: true }], wants: [863, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(863, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 660, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 590, 653, 654, 655, 656, 660, 661, 863, 864, 865, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 590, 863, 921, 931, 992, 654, 655, 656, 660, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 590, 624, 640, 653, 654, 655, 656, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 590, 624, 640, 653, 654, 655, 656, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 590, 624, 640, 653, 654, 655, 656, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 632, 653, 654, 655, 656, 660, 661, 863, 864, 865, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(10988)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 864), fp: EncodedCountingMonoid(7, SumMonoid(4802)) }, Fingerprint { range: Range(864, 993), fp: EncodedCountingMonoid(6, SumMonoid(5474)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80, 632], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80, 632], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1977)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true), (632, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 656), items: [653], want_response: true }], wants: [863, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(863, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 660, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 632, 653, 654, 655, 656, 660, 661, 863, 864, 865, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 632, 863, 921, 931, 992, 654, 655, 656, 660, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 632, 640, 653, 654, 655, 656, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 632, 640, 653, 654, 655, 656, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 632, 640, 653, 654, 655, 656, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 863, 864, 865, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(14, SumMonoid(10356)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 864), fp: EncodedCountingMonoid(7, SumMonoid(4802)) }, Fingerprint { range: Range(864, 993), fp: EncodedCountingMonoid(6, SumMonoid(5474)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1977)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 656), items: [653], want_response: true }], wants: [863, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(863, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 660, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 863, 864, 865, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 863, 921, 931, 992, 654, 655, 656, 660, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 664, 863, 864, 865, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11020)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4603)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6337)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 660), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(660, 772), fp: EncodedCountingMonoid(3, SumMonoid(1985)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(660, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 660), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 660), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(660, 664), items: [660, 661], want_response: true }, ItemSet { range: Range(664, 737), items: [664], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(660, 664), items: [], want_response: false }, ItemSet { range: Range(664, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 660, 661, 664, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (664, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 664, 863, 864, 865, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 660, 661, 664, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 659, 660, 661, 863, 864, 865, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11015)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4598)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6337)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 659), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(659, 772), fp: EncodedCountingMonoid(3, SumMonoid(1980)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(659, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 659), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 659), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(659, 661), items: [659, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(659, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 659, 660, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (659, true), (660, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 659, 660, 661, 863, 864, 865, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 659, 660, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 660, 661, 863, 864, 865, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(14, SumMonoid(10356)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 864), fp: EncodedCountingMonoid(7, SumMonoid(4802)) }, Fingerprint { range: Range(864, 993), fp: EncodedCountingMonoid(6, SumMonoid(5474)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1977)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 656), items: [653], want_response: true }], wants: [863, 921, 931, 992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990], provide: [(863, true), (921, true), (931, true), (992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 660, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (660, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 660, 661, 863, 864, 865, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 990, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 863, 921, 931, 992, 654, 655, 656, 660, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 992, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 658, 660, 661, 863, 864, 865, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11014)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4597)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6337)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 658), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(658, 772), fp: EncodedCountingMonoid(3, SumMonoid(1979)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(658, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 658), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 658), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(658, 661), items: [658, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(658, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 658, 660, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (658, true), (660, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 658, 660, 661, 863, 864, 865, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 658, 660, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 992}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 993), fp: EncodedCountingMonoid(15, SumMonoid(11013)) }], item_sets: [ItemSet { range: Range(993, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 993), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(993, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4596)) }, Fingerprint { range: Range(863, 993), fp: EncodedCountingMonoid(7, SumMonoid(6337)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 657), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(657, 772), fp: EncodedCountingMonoid(3, SumMonoid(1978)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 993), items: [992], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(657, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 993), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 657), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [992], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 657), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(657, 661), items: [657, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(992, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(657, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 660, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (660, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 992} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 992, 654, 655, 656, 657, 660, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 496, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 932), fp: EncodedCountingMonoid(15, SumMonoid(10517)) }], item_sets: [ItemSet { range: Range(932, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 523), fp: EncodedCountingMonoid(28, SumMonoid(8409)) }, Fingerprint { range: Range(523, 932), fp: EncodedCountingMonoid(28, SumMonoid(21631)) }], item_sets: [ItemSet { range: Range(932, 80), items: [947, 953, 954, 969, 970, 973, 990, 996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(523, 863), fp: EncodedCountingMonoid(7, SumMonoid(4596)) }, Fingerprint { range: Range(863, 932), fp: EncodedCountingMonoid(6, SumMonoid(5345)) }], item_sets: [ItemSet { range: Range(80, 523), items: [80, 496], want_response: true }], wants: [947, 953, 954, 969, 970, 973, 990, 996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(523, 742), fp: EncodedCountingMonoid(10, SumMonoid(6446)) }, Fingerprint { range: Range(742, 863), fp: EncodedCountingMonoid(10, SumMonoid(8047)) }, Fingerprint { range: Range(863, 897), fp: EncodedCountingMonoid(4, SumMonoid(3488)) }, Fingerprint { range: Range(897, 932), fp: EncodedCountingMonoid(4, SumMonoid(3650)) }], item_sets: [ItemSet { range: Range(80, 523), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509], want_response: false }], wants: [80], provide: [(947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(523, 657), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(657, 742), fp: EncodedCountingMonoid(3, SumMonoid(1978)) }], item_sets: [ItemSet { range: Range(742, 863), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 897), items: [865], want_response: true }, ItemSet { range: Range(897, 931), items: [901, 921], want_response: true }, ItemSet { range: Range(931, 932), items: [931], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 503, 509], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(523, 640), fp: EncodedCountingMonoid(3, SumMonoid(1674)) }, Fingerprint { range: Range(657, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }], item_sets: [ItemSet { range: Range(742, 863), items: [742, 760, 772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 897), items: [867, 869, 873, 879], want_response: false }, ItemSet { range: Range(897, 931), items: [897, 902, 925, 926], want_response: false }, ItemSet { range: Range(931, 932), items: [], want_response: false }, ItemSet { range: Range(640, 657), items: [640, 653], want_response: true }, ItemSet { range: Range(705, 742), items: [705, 737], want_response: true }], wants: [863, 864, 865, 901, 921, 931], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (503, true), (509, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 657), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(705, 742), items: [], want_response: false }, ItemSet { range: Range(523, 640), items: [], want_response: true }, ItemSet { range: Range(657, 661), items: [657, 660], want_response: true }, ItemSet { range: Range(661, 705), items: [661], want_response: true }], wants: [742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 640, 705, 737], provide: [(863, true), (864, true), (865, true), (901, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(523, 640), items: [523, 527, 624], want_response: false }, ItemSet { range: Range(657, 661), items: [], want_response: false }, ItemSet { range: Range(661, 705), items: [666, 682, 689], want_response: false }], wants: [654, 655, 656, 657, 660, 661], provide: [(742, true), (760, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true), (925, true), (926, true), (640, true), (705, true), (737, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [523, 527, 624, 666, 682, 689], provide: [(654, true), (655, true), (656, true), (657, true), (660, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(523, true), (527, true), (624, true), (666, true), (682, true), (689, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 496, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931} + [947, 953, 954, 969, 970, 973, 990, 996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 503, 509, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 640, 705, 737, 523, 527, 624, 666, 682, 689]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 863, 864, 865, 901, 921, 931, 654, 655, 656, 657, 660, 661]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 657, 660, 661, 744, 863, 864, 865, 901, 921, 931}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 932), fp: EncodedCountingMonoid(15, SumMonoid(10765)) }], item_sets: [ItemSet { range: Range(932, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 523), fp: EncodedCountingMonoid(28, SumMonoid(8409)) }, Fingerprint { range: Range(523, 932), fp: EncodedCountingMonoid(28, SumMonoid(21631)) }], item_sets: [ItemSet { range: Range(932, 80), items: [947, 953, 954, 969, 970, 973, 990, 996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(523, 744), fp: EncodedCountingMonoid(7, SumMonoid(4596)) }, Fingerprint { range: Range(744, 932), fp: EncodedCountingMonoid(7, SumMonoid(6089)) }], item_sets: [ItemSet { range: Range(80, 523), items: [80], want_response: true }], wants: [947, 953, 954, 969, 970, 973, 990, 996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(523, 682), fp: EncodedCountingMonoid(6, SumMonoid(3633)) }, Fingerprint { range: Range(682, 744), fp: EncodedCountingMonoid(5, SumMonoid(3555)) }, Fingerprint { range: Range(744, 867), fp: EncodedCountingMonoid(9, SumMonoid(7305)) }, Fingerprint { range: Range(867, 932), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }], item_sets: [ItemSet { range: Range(80, 523), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509], want_response: false }], wants: [80], provide: [(947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(523, 657), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(657, 682), fp: EncodedCountingMonoid(3, SumMonoid(1978)) }], item_sets: [ItemSet { range: Range(682, 744), items: [], want_response: true }, ItemSet { range: Range(744, 864), items: [744, 863], want_response: true }, ItemSet { range: Range(864, 867), items: [864, 865], want_response: true }, ItemSet { range: Range(867, 931), items: [901, 921], want_response: true }, ItemSet { range: Range(931, 932), items: [931], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(523, 640), fp: EncodedCountingMonoid(3, SumMonoid(1674)) }], item_sets: [ItemSet { range: Range(682, 744), items: [682, 689, 705, 737, 742], want_response: false }, ItemSet { range: Range(744, 864), items: [760, 772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(864, 867), items: [], want_response: false }, ItemSet { range: Range(867, 931), items: [867, 869, 873, 879, 897, 902, 925, 926], want_response: false }, ItemSet { range: Range(931, 932), items: [], want_response: false }, ItemSet { range: Range(640, 657), items: [640, 653], want_response: true }, ItemSet { range: Range(657, 682), items: [666], want_response: true }], wants: [744, 863, 864, 865, 901, 921, 931], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 657), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(657, 682), items: [657, 660, 661], want_response: false }, ItemSet { range: Range(523, 640), items: [], want_response: true }], wants: [682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 640, 666], provide: [(744, true), (863, true), (864, true), (865, true), (901, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(523, 640), items: [523, 527, 624], want_response: false }], wants: [654, 655, 656, 657, 660, 661], provide: [(682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true), (925, true), (926, true), (640, true), (666, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [523, 527, 624], provide: [(654, true), (655, true), (656, true), (657, true), (660, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 657, 660, 661, 744, 863, 864, 865, 901, 921, 931} + [947, 953, 954, 969, 970, 973, 990, 996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 640, 666, 523, 527, 624]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 744, 863, 864, 865, 901, 921, 931, 654, 655, 656, 657, 660, 661]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 744, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 744, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 744, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 868, 901, 921, 931}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 932), fp: EncodedCountingMonoid(15, SumMonoid(10889)) }], item_sets: [ItemSet { range: Range(932, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 523), fp: EncodedCountingMonoid(28, SumMonoid(8409)) }, Fingerprint { range: Range(523, 932), fp: EncodedCountingMonoid(28, SumMonoid(21631)) }], item_sets: [ItemSet { range: Range(932, 80), items: [947, 953, 954, 969, 970, 973, 990, 996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(523, 863), fp: EncodedCountingMonoid(7, SumMonoid(4596)) }, Fingerprint { range: Range(863, 932), fp: EncodedCountingMonoid(7, SumMonoid(6213)) }], item_sets: [ItemSet { range: Range(80, 523), items: [80], want_response: true }], wants: [947, 953, 954, 969, 970, 973, 990, 996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(523, 742), fp: EncodedCountingMonoid(10, SumMonoid(6446)) }, Fingerprint { range: Range(742, 863), fp: EncodedCountingMonoid(10, SumMonoid(8047)) }, Fingerprint { range: Range(863, 897), fp: EncodedCountingMonoid(4, SumMonoid(3488)) }, Fingerprint { range: Range(897, 932), fp: EncodedCountingMonoid(4, SumMonoid(3650)) }], item_sets: [ItemSet { range: Range(80, 523), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509], want_response: false }], wants: [80], provide: [(947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(523, 657), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(657, 742), fp: EncodedCountingMonoid(3, SumMonoid(1978)) }], item_sets: [ItemSet { range: Range(742, 863), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 897), items: [865, 868], want_response: true }, ItemSet { range: Range(897, 931), items: [901, 921], want_response: true }, ItemSet { range: Range(931, 932), items: [931], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(523, 640), fp: EncodedCountingMonoid(3, SumMonoid(1674)) }, Fingerprint { range: Range(657, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }], item_sets: [ItemSet { range: Range(742, 863), items: [742, 760, 772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 897), items: [867, 869, 873, 879], want_response: false }, ItemSet { range: Range(897, 931), items: [897, 902, 925, 926], want_response: false }, ItemSet { range: Range(931, 932), items: [], want_response: false }, ItemSet { range: Range(640, 657), items: [640, 653], want_response: true }, ItemSet { range: Range(705, 742), items: [705, 737], want_response: true }], wants: [863, 864, 865, 868, 901, 921, 931], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 657), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(705, 742), items: [], want_response: false }, ItemSet { range: Range(523, 640), items: [], want_response: true }, ItemSet { range: Range(657, 661), items: [657, 660], want_response: true }, ItemSet { range: Range(661, 705), items: [661], want_response: true }], wants: [742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 640, 705, 737], provide: [(863, true), (864, true), (865, true), (868, true), (901, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(523, 640), items: [523, 527, 624], want_response: false }, ItemSet { range: Range(657, 661), items: [], want_response: false }, ItemSet { range: Range(661, 705), items: [666, 682, 689], want_response: false }], wants: [654, 655, 656, 657, 660, 661], provide: [(742, true), (760, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true), (925, true), (926, true), (640, true), (705, true), (737, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [523, 527, 624, 666, 682, 689], provide: [(654, true), (655, true), (656, true), (657, true), (660, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(523, true), (527, true), (624, true), (666, true), (682, true), (689, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 868, 901, 921, 931} + [947, 953, 954, 969, 970, 973, 990, 996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 640, 705, 737, 523, 527, 624, 666, 682, 689]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 863, 864, 865, 868, 901, 921, 931, 654, 655, 656, 657, 660, 661]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 868, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 868, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 868, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 930, 931}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 932), fp: EncodedCountingMonoid(15, SumMonoid(10951)) }], item_sets: [ItemSet { range: Range(932, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 523), fp: EncodedCountingMonoid(28, SumMonoid(8409)) }, Fingerprint { range: Range(523, 932), fp: EncodedCountingMonoid(28, SumMonoid(21631)) }], item_sets: [ItemSet { range: Range(932, 80), items: [947, 953, 954, 969, 970, 973, 990, 996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(523, 863), fp: EncodedCountingMonoid(7, SumMonoid(4596)) }, Fingerprint { range: Range(863, 932), fp: EncodedCountingMonoid(7, SumMonoid(6275)) }], item_sets: [ItemSet { range: Range(80, 523), items: [80], want_response: true }], wants: [947, 953, 954, 969, 970, 973, 990, 996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(523, 742), fp: EncodedCountingMonoid(10, SumMonoid(6446)) }, Fingerprint { range: Range(742, 863), fp: EncodedCountingMonoid(10, SumMonoid(8047)) }, Fingerprint { range: Range(863, 897), fp: EncodedCountingMonoid(4, SumMonoid(3488)) }, Fingerprint { range: Range(897, 932), fp: EncodedCountingMonoid(4, SumMonoid(3650)) }], item_sets: [ItemSet { range: Range(80, 523), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509], want_response: false }], wants: [80], provide: [(947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(523, 657), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(657, 742), fp: EncodedCountingMonoid(3, SumMonoid(1978)) }], item_sets: [ItemSet { range: Range(742, 863), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 897), items: [865], want_response: true }, ItemSet { range: Range(897, 930), items: [901, 921], want_response: true }, ItemSet { range: Range(930, 932), items: [930, 931], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(523, 640), fp: EncodedCountingMonoid(3, SumMonoid(1674)) }, Fingerprint { range: Range(657, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }], item_sets: [ItemSet { range: Range(742, 863), items: [742, 760, 772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 897), items: [867, 869, 873, 879], want_response: false }, ItemSet { range: Range(897, 930), items: [897, 902, 925, 926], want_response: false }, ItemSet { range: Range(930, 932), items: [], want_response: false }, ItemSet { range: Range(640, 657), items: [640, 653], want_response: true }, ItemSet { range: Range(705, 742), items: [705, 737], want_response: true }], wants: [863, 864, 865, 901, 921, 930, 931], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 657), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(705, 742), items: [], want_response: false }, ItemSet { range: Range(523, 640), items: [], want_response: true }, ItemSet { range: Range(657, 661), items: [657, 660], want_response: true }, ItemSet { range: Range(661, 705), items: [661], want_response: true }], wants: [742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 640, 705, 737], provide: [(863, true), (864, true), (865, true), (901, true), (921, true), (930, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(523, 640), items: [523, 527, 624], want_response: false }, ItemSet { range: Range(657, 661), items: [], want_response: false }, ItemSet { range: Range(661, 705), items: [666, 682, 689], want_response: false }], wants: [654, 655, 656, 657, 660, 661], provide: [(742, true), (760, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true), (925, true), (926, true), (640, true), (705, true), (737, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [523, 527, 624, 666, 682, 689], provide: [(654, true), (655, true), (656, true), (657, true), (660, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(523, true), (527, true), (624, true), (666, true), (682, true), (689, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 930, 931} + [947, 953, 954, 969, 970, 973, 990, 996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 640, 705, 737, 523, 527, 624, 666, 682, 689]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 863, 864, 865, 901, 921, 930, 931, 654, 655, 656, 657, 660, 661]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 930, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 930, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 930, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 961}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 962), fp: EncodedCountingMonoid(15, SumMonoid(10982)) }], item_sets: [ItemSet { range: Range(962, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 624), fp: EncodedCountingMonoid(30, SumMonoid(9459)) }, Fingerprint { range: Range(624, 962), fp: EncodedCountingMonoid(29, SumMonoid(23435)) }], item_sets: [ItemSet { range: Range(962, 80), items: [969, 970, 973, 990, 996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4596)) }, Fingerprint { range: Range(863, 962), fp: EncodedCountingMonoid(7, SumMonoid(6306)) }], item_sets: [ItemSet { range: Range(80, 624), items: [80], want_response: true }], wants: [969, 970, 973, 990, 996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(624, 760), fp: EncodedCountingMonoid(9, SumMonoid(6138)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(9, SumMonoid(7305)) }, Fingerprint { range: Range(863, 925), fp: EncodedCountingMonoid(6, SumMonoid(5287)) }, Fingerprint { range: Range(925, 962), fp: EncodedCountingMonoid(5, SumMonoid(4705)) }], item_sets: [ItemSet { range: Range(80, 624), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527], want_response: false }], wants: [80], provide: [(969, true), (970, true), (973, true), (990, true), (996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 657), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(657, 760), fp: EncodedCountingMonoid(3, SumMonoid(1978)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(901, 925), items: [901, 921], want_response: true }, ItemSet { range: Range(925, 962), items: [931, 961], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(657, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(705, 760), fp: EncodedCountingMonoid(3, SumMonoid(2184)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(901, 925), items: [902], want_response: false }, ItemSet { range: Range(925, 962), items: [925, 926, 947, 953, 954], want_response: false }, ItemSet { range: Range(624, 653), items: [624, 640], want_response: true }, ItemSet { range: Range(653, 657), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [901, 921, 931, 961], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(624, 653), items: [], want_response: false }, ItemSet { range: Range(653, 657), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(657, 661), items: [657, 660], want_response: true }, ItemSet { range: Range(661, 705), items: [661], want_response: true }, ItemSet { range: Range(705, 760), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [760, 772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 624, 640, 879, 897], provide: [(901, true), (921, true), (931, true), (961, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(657, 661), items: [], want_response: false }, ItemSet { range: Range(661, 705), items: [666, 682, 689], want_response: false }, ItemSet { range: Range(705, 760), items: [705, 737, 742], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 660, 661, 863, 864, 865], provide: [(760, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (624, true), (640, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (660, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 961} + [969, 970, 973, 990, 996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 760, 772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 624, 640, 879, 897, 666, 682, 689, 705, 737, 742, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 901, 921, 931, 961, 654, 655, 656, 657, 660, 661, 863, 864, 865]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 961, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 961, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 961, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 977}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 978), fp: EncodedCountingMonoid(15, SumMonoid(10998)) }], item_sets: [ItemSet { range: Range(978, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 640), fp: EncodedCountingMonoid(31, SumMonoid(10083)) }, Fingerprint { range: Range(640, 978), fp: EncodedCountingMonoid(31, SumMonoid(25723)) }], item_sets: [ItemSet { range: Range(978, 80), items: [990, 996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4596)) }, Fingerprint { range: Range(863, 978), fp: EncodedCountingMonoid(7, SumMonoid(6322)) }], item_sets: [ItemSet { range: Range(80, 640), items: [80], want_response: true }], wants: [990, 996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 926), fp: EncodedCountingMonoid(7, SumMonoid(6212)) }, Fingerprint { range: Range(926, 978), fp: EncodedCountingMonoid(7, SumMonoid(6692)) }], item_sets: [ItemSet { range: Range(80, 640), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [80], provide: [(990, true), (996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 657), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(657, 772), fp: EncodedCountingMonoid(3, SumMonoid(1978)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(901, 926), items: [901, 921], want_response: true }, ItemSet { range: Range(926, 978), items: [931, 977], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(657, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: false }, ItemSet { range: Range(926, 978), items: [926, 947, 953, 954, 969, 970, 973], want_response: false }, ItemSet { range: Range(640, 657), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [901, 921, 931, 977], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 657), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(657, 661), items: [657, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 970, 973, 640, 879, 897], provide: [(901, true), (921, true), (931, true), (977, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(657, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 660, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (640, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (660, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 977} + [990, 996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 970, 973, 640, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 901, 921, 931, 977, 654, 655, 656, 657, 660, 661, 863, 864, 865]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 977, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 977, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 977, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 985}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 986), fp: EncodedCountingMonoid(15, SumMonoid(11006)) }], item_sets: [ItemSet { range: Range(986, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 640), fp: EncodedCountingMonoid(31, SumMonoid(10083)) }, Fingerprint { range: Range(640, 986), fp: EncodedCountingMonoid(31, SumMonoid(25723)) }], item_sets: [ItemSet { range: Range(986, 80), items: [990, 996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4596)) }, Fingerprint { range: Range(863, 986), fp: EncodedCountingMonoid(7, SumMonoid(6330)) }], item_sets: [ItemSet { range: Range(80, 640), items: [80], want_response: true }], wants: [990, 996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 926), fp: EncodedCountingMonoid(7, SumMonoid(6212)) }, Fingerprint { range: Range(926, 986), fp: EncodedCountingMonoid(7, SumMonoid(6692)) }], item_sets: [ItemSet { range: Range(80, 640), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [80], provide: [(990, true), (996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 657), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(657, 772), fp: EncodedCountingMonoid(3, SumMonoid(1978)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(901, 926), items: [901, 921], want_response: true }, ItemSet { range: Range(926, 986), items: [931, 985], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(657, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: false }, ItemSet { range: Range(926, 986), items: [926, 947, 953, 954, 969, 970, 973], want_response: false }, ItemSet { range: Range(640, 657), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [901, 921, 931, 985], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 657), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(657, 661), items: [657, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 970, 973, 640, 879, 897], provide: [(901, true), (921, true), (931, true), (985, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(657, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 660, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (640, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (660, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 985} + [990, 996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 970, 973, 640, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 901, 921, 931, 985, 654, 655, 656, 657, 660, 661, 863, 864, 865]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 985, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 985, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 985, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 989}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 990), fp: EncodedCountingMonoid(15, SumMonoid(11010)) }], item_sets: [ItemSet { range: Range(990, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 640), fp: EncodedCountingMonoid(31, SumMonoid(10083)) }, Fingerprint { range: Range(640, 990), fp: EncodedCountingMonoid(31, SumMonoid(25723)) }], item_sets: [ItemSet { range: Range(990, 80), items: [990, 996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4596)) }, Fingerprint { range: Range(863, 990), fp: EncodedCountingMonoid(7, SumMonoid(6334)) }], item_sets: [ItemSet { range: Range(80, 640), items: [80], want_response: true }], wants: [990, 996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 926), fp: EncodedCountingMonoid(7, SumMonoid(6212)) }, Fingerprint { range: Range(926, 990), fp: EncodedCountingMonoid(7, SumMonoid(6692)) }], item_sets: [ItemSet { range: Range(80, 640), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [80], provide: [(990, true), (996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 657), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(657, 772), fp: EncodedCountingMonoid(3, SumMonoid(1978)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(901, 926), items: [901, 921], want_response: true }, ItemSet { range: Range(926, 990), items: [931, 989], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(657, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: false }, ItemSet { range: Range(926, 990), items: [926, 947, 953, 954, 969, 970, 973], want_response: false }, ItemSet { range: Range(640, 657), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [901, 921, 931, 989], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 657), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(657, 661), items: [657, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 970, 973, 640, 879, 897], provide: [(901, true), (921, true), (931, true), (989, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(657, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 660, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (640, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (660, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 989} + [990, 996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 970, 973, 640, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 901, 921, 931, 989, 654, 655, 656, 657, 660, 661, 863, 864, 865]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 989, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 989, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 43, 80, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 660, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 989, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 991}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 992), fp: EncodedCountingMonoid(15, SumMonoid(11012)) }], item_sets: [ItemSet { range: Range(992, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 992), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(992, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4596)) }, Fingerprint { range: Range(863, 992), fp: EncodedCountingMonoid(7, SumMonoid(6336)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 992), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 657), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(657, 772), fp: EncodedCountingMonoid(3, SumMonoid(1978)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 992), items: [991], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(657, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 992), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 657), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [991], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 657), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(657, 661), items: [657, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897], provide: [(991, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(657, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 660, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (990, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (660, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 991} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 990, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 991, 654, 655, 656, 657, 660, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {80, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 991), fp: EncodedCountingMonoid(15, SumMonoid(11011)) }], item_sets: [ItemSet { range: Range(991, 80), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 653), fp: EncodedCountingMonoid(32, SumMonoid(10723)) }, Fingerprint { range: Range(653, 991), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(991, 80), items: [996, 10, 43], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 863), fp: EncodedCountingMonoid(7, SumMonoid(4596)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(80, 653), items: [80], want_response: true }], wants: [996, 10, 43], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(80, 653), items: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [80], provide: [(996, true), (10, true), (43, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 657), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(657, 772), fp: EncodedCountingMonoid(3, SumMonoid(1978)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640], provide: [(80, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(657, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 657), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 657), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(657, 661), items: [657, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(657, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 660, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (660, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {80, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [80, 654, 655, 656, 657, 660, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {40, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(40, 991), fp: EncodedCountingMonoid(15, SumMonoid(10971)) }], item_sets: [ItemSet { range: Range(991, 40), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(40, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 40), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4596)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(40, 640), items: [40], want_response: true }], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(40, 640), items: [43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [40], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 657), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(657, 772), fp: EncodedCountingMonoid(3, SumMonoid(1978)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(40, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(657, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 657), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 657), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(657, 661), items: [657, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 640, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(657, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 660, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (640, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (660, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {40, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 640, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [40, 654, 655, 656, 657, 660, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {20, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(20, 991), fp: EncodedCountingMonoid(15, SumMonoid(10951)) }], item_sets: [ItemSet { range: Range(991, 20), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(20, 640), fp: EncodedCountingMonoid(32, SumMonoid(10126)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 20), items: [996, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4596)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(20, 640), items: [20], want_response: true }], wants: [996, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(20, 640), items: [43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [20], provide: [(996, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 657), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(657, 772), fp: EncodedCountingMonoid(3, SumMonoid(1978)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(20, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(657, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 657), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 657), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(657, 661), items: [657, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 640, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(657, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 660, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (640, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (660, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {20, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 640, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [20, 654, 655, 656, 657, 660, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {10, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(10, 991), fp: EncodedCountingMonoid(15, SumMonoid(10941)) }], item_sets: [ItemSet { range: Range(991, 10), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(10, 640), fp: EncodedCountingMonoid(33, SumMonoid(10136)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 10), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4596)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(10, 640), items: [10], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(10, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 657), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(657, 772), fp: EncodedCountingMonoid(3, SumMonoid(1978)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(657, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 657), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 657), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(657, 661), items: [657, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 640, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(657, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 660, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (640, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (660, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {10, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 640, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [654, 655, 656, 657, 660, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 991), fp: EncodedCountingMonoid(15, SumMonoid(10936)) }], item_sets: [ItemSet { range: Range(991, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 640), fp: EncodedCountingMonoid(33, SumMonoid(10136)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 5), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4596)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(5, 640), items: [5], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(5, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [5], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 657), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(657, 772), fp: EncodedCountingMonoid(3, SumMonoid(1978)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(5, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(657, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 657), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 657), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(657, 661), items: [657, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 640, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(657, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 660, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (640, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (660, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 640, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [5, 654, 655, 656, 657, 660, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {3, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 991), fp: EncodedCountingMonoid(15, SumMonoid(10934)) }], item_sets: [ItemSet { range: Range(991, 3), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 640), fp: EncodedCountingMonoid(33, SumMonoid(10136)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 3), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4596)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(3, 640), items: [3], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(3, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [3], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 657), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(657, 772), fp: EncodedCountingMonoid(3, SumMonoid(1978)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(3, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(657, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 657), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 657), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(657, 661), items: [657, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 640, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(657, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 660, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (640, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (660, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {3, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 640, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [3, 654, 655, 656, 657, 660, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {2, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 991), fp: EncodedCountingMonoid(15, SumMonoid(10933)) }], item_sets: [ItemSet { range: Range(991, 2), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(2, 640), fp: EncodedCountingMonoid(33, SumMonoid(10136)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 2), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4596)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(2, 640), items: [2], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(2, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [2], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 657), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(657, 772), fp: EncodedCountingMonoid(3, SumMonoid(1978)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(2, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(657, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 657), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 657), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(657, 661), items: [657, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 640, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(657, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 660, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (640, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (660, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {2, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 640, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [2, 654, 655, 656, 657, 660, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10932)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(33, SumMonoid(10136)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4596)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 657), fp: EncodedCountingMonoid(4, SumMonoid(2618)) }, Fingerprint { range: Range(657, 772), fp: EncodedCountingMonoid(3, SumMonoid(1978)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(657, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 657), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 657), items: [653, 654, 655, 656], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(657, 661), items: [657, 660], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 640, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(657, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 660, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (640, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (660, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 653, 654, 655, 656, 657, 660, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 640, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 660, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 330, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10602)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(33, SumMonoid(10136)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 864), fp: EncodedCountingMonoid(7, SumMonoid(4799)) }, Fingerprint { range: Range(864, 991), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1, 330], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1, 330], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(1, true), (330, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }], wants: [863, 921, 931], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 640], provide: [(863, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 657, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 330, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 640, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 330, 863, 921, 931, 654, 655, 656, 657, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 330, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 330, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 330, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 495, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10767)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(33, SumMonoid(10136)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 864), fp: EncodedCountingMonoid(7, SumMonoid(4799)) }, Fingerprint { range: Range(864, 991), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1, 495], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1, 495], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(1, true), (495, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }], wants: [863, 921, 931], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 640], provide: [(863, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 657, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 495, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 640, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 495, 863, 921, 931, 654, 655, 656, 657, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 495, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 495, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 495, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 578, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10850)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(33, SumMonoid(10136)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 864), fp: EncodedCountingMonoid(7, SumMonoid(4799)) }, Fingerprint { range: Range(864, 991), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1, 578], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1, 578], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(1, true), (578, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }], wants: [863, 921, 931], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 640], provide: [(863, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 657, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 578, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 640, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 578, 863, 921, 931, 654, 655, 656, 657, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 578, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 578, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 578, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 619, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10891)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(33, SumMonoid(10136)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 864), fp: EncodedCountingMonoid(7, SumMonoid(4799)) }, Fingerprint { range: Range(864, 991), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1, 619], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1, 619], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(1, true), (619, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }], wants: [863, 921, 931], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 640], provide: [(863, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 657, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 619, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 640, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 619, 863, 921, 931, 654, 655, 656, 657, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 619, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 619, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 619, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(33, SumMonoid(10136)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 630, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10902)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(33, SumMonoid(10136)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 864), fp: EncodedCountingMonoid(7, SumMonoid(4799)) }, Fingerprint { range: Range(864, 991), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1, 630], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1, 630], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(1, true), (630, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }], wants: [863, 921, 931], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 640], provide: [(863, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 657, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 630, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 640, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 630, 863, 921, 931, 654, 655, 656, 657, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 630, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 630, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 630, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 635, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10907)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(33, SumMonoid(10136)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 864), fp: EncodedCountingMonoid(7, SumMonoid(4799)) }, Fingerprint { range: Range(864, 991), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1, 635], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1, 635], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(1, true), (635, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }], wants: [863, 921, 931], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 640], provide: [(863, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 657, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 635, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 640, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 635, 863, 921, 931, 654, 655, 656, 657, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 635, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 635, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 635, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 638, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10910)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(33, SumMonoid(10136)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 864), fp: EncodedCountingMonoid(7, SumMonoid(4799)) }, Fingerprint { range: Range(864, 991), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1, 638], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1, 638], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(1, true), (638, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }], wants: [863, 921, 931], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 640], provide: [(863, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 657, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 638, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 640, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 638, 863, 921, 931, 654, 655, 656, 657, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 638, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 638, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 638, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 639, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10911)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(33, SumMonoid(10136)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 864), fp: EncodedCountingMonoid(7, SumMonoid(4799)) }, Fingerprint { range: Range(864, 991), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1, 639], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1, 639], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(1, true), (639, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }], wants: [863, 921, 931], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 640], provide: [(863, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 657, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (640, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 639, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 640, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 639, 863, 921, 931, 654, 655, 656, 657, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 639, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 639, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 639, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(33, SumMonoid(10136)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 624), fp: EncodedCountingMonoid(32, SumMonoid(9512)) }, Fingerprint { range: Range(624, 991), fp: EncodedCountingMonoid(32, SumMonoid(26347)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 624), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(624, 760), fp: EncodedCountingMonoid(9, SumMonoid(6138)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(9, SumMonoid(7305)) }, Fingerprint { range: Range(863, 926), fp: EncodedCountingMonoid(7, SumMonoid(6212)) }, Fingerprint { range: Range(926, 991), fp: EncodedCountingMonoid(7, SumMonoid(6692)) }], item_sets: [ItemSet { range: Range(1, 624), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(901, 926), items: [901, 921], want_response: true }, ItemSet { range: Range(926, 991), items: [931, 990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(705, 760), fp: EncodedCountingMonoid(3, SumMonoid(2184)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: false }, ItemSet { range: Range(926, 991), items: [926, 947, 953, 954, 969, 970, 973], want_response: false }, ItemSet { range: Range(624, 653), items: [624, 640], want_response: true }, ItemSet { range: Range(653, 656), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [901, 921, 931, 990], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(624, 653), items: [640], want_response: false }, ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 705), items: [661], want_response: true }, ItemSet { range: Range(705, 760), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [760, 772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 970, 973, 624, 879, 897], provide: [(901, true), (921, true), (931, true), (990, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 705), items: [666, 682, 689], want_response: false }, ItemSet { range: Range(705, 760), items: [705, 737, 742], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (624, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 760, 772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 970, 973, 624, 879, 897, 666, 682, 689, 705, 737, 742, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 996} + [1, 901, 921, 931, 990, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(33, SumMonoid(10136)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 624), fp: EncodedCountingMonoid(32, SumMonoid(9512)) }, Fingerprint { range: Range(624, 991), fp: EncodedCountingMonoid(32, SumMonoid(26367)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 624), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(624, 760), fp: EncodedCountingMonoid(9, SumMonoid(6138)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(9, SumMonoid(7305)) }, Fingerprint { range: Range(863, 926), fp: EncodedCountingMonoid(7, SumMonoid(6212)) }, Fingerprint { range: Range(926, 991), fp: EncodedCountingMonoid(7, SumMonoid(6712)) }], item_sets: [ItemSet { range: Range(1, 624), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(901, 926), items: [901, 921], want_response: true }, ItemSet { range: Range(926, 991), items: [931, 990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(705, 760), fp: EncodedCountingMonoid(3, SumMonoid(2184)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: false }, ItemSet { range: Range(926, 991), items: [926, 947, 953, 954, 969, 973, 990], want_response: false }, ItemSet { range: Range(624, 653), items: [624, 640], want_response: true }, ItemSet { range: Range(653, 656), items: [653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [901, 921, 931], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(624, 653), items: [640], want_response: false }, ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 705), items: [661], want_response: true }, ItemSet { range: Range(705, 760), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [760, 772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 973, 624, 879, 897], provide: [(901, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 705), items: [666, 682, 689], want_response: false }, ItemSet { range: Range(705, 760), items: [705, 737, 742], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (973, true), (624, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 760, 772, 777, 788, 807, 838, 847, 854, 862, 902, 925, 926, 947, 953, 954, 969, 973, 624, 879, 897, 666, 682, 689, 705, 737, 742, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 973, 990, 996} + [1, 901, 921, 931, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(33, SumMonoid(10136)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (468, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 468, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(32, SumMonoid(9668)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 653), fp: EncodedCountingMonoid(32, SumMonoid(10064)) }, Fingerprint { range: Range(653, 991), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 864), fp: EncodedCountingMonoid(7, SumMonoid(4799)) }, Fingerprint { range: Range(864, 991), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(1, 653), items: [1, 640], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 653), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 656), items: [653], want_response: true }], wants: [863, 921, 931], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973], provide: [(863, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 657, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 863, 921, 931, 654, 655, 656, 657, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(32, SumMonoid(9668)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 653), fp: EncodedCountingMonoid(32, SumMonoid(10031)) }, Fingerprint { range: Range(653, 991), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 864), fp: EncodedCountingMonoid(7, SumMonoid(4799)) }, Fingerprint { range: Range(864, 991), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(1, 653), items: [1, 640], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 653), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 656), items: [653], want_response: true }], wants: [863, 921, 931], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973], provide: [(863, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 657, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 863, 921, 931, 654, 655, 656, 657, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(32, SumMonoid(9668)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 653), fp: EncodedCountingMonoid(32, SumMonoid(9850)) }, Fingerprint { range: Range(653, 991), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 864), fp: EncodedCountingMonoid(7, SumMonoid(4799)) }, Fingerprint { range: Range(864, 991), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(1, 653), items: [1, 640], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 653), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 656), items: [653], want_response: true }], wants: [863, 921, 931], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973], provide: [(863, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 657, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 863, 921, 931, 654, 655, 656, 657, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(32, SumMonoid(9668)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 653), fp: EncodedCountingMonoid(32, SumMonoid(9937)) }, Fingerprint { range: Range(653, 991), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 864), fp: EncodedCountingMonoid(7, SumMonoid(4799)) }, Fingerprint { range: Range(864, 991), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(1, 653), items: [1, 640], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 653), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 656), items: [653], want_response: true }], wants: [863, 921, 931], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973], provide: [(863, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 657, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 863, 921, 931, 654, 655, 656, 657, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(32, SumMonoid(9668)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 653), fp: EncodedCountingMonoid(32, SumMonoid(9781)) }, Fingerprint { range: Range(653, 991), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 864), fp: EncodedCountingMonoid(7, SumMonoid(4799)) }, Fingerprint { range: Range(864, 991), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(1, 653), items: [1, 640], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 653), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 624, 640], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 656), items: [653], want_response: true }], wants: [863, 921, 931], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973], provide: [(863, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 657, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 624, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 863, 921, 931, 654, 655, 656, 657, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(32, SumMonoid(9668)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 653), fp: EncodedCountingMonoid(32, SumMonoid(9799)) }, Fingerprint { range: Range(653, 991), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 864), fp: EncodedCountingMonoid(7, SumMonoid(4799)) }, Fingerprint { range: Range(864, 991), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(1, 653), items: [1, 640], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 653), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 523, 527, 624, 640], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 656), items: [653], want_response: true }], wants: [863, 921, 931], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973], provide: [(863, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 657, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 863, 921, 931, 654, 655, 656, 657, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(32, SumMonoid(9668)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 653), fp: EncodedCountingMonoid(32, SumMonoid(10165)) }, Fingerprint { range: Range(653, 991), fp: EncodedCountingMonoid(31, SumMonoid(26073)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 864), fp: EncodedCountingMonoid(7, SumMonoid(4799)) }, Fingerprint { range: Range(864, 991), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(1, 653), items: [1, 640], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(8, SumMonoid(5634)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 653), items: [10, 43, 102, 105, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 656), items: [653], want_response: true }], wants: [863, 921, 931], provide: [(10, true), (43, true), (102, true), (105, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973], provide: [(863, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 657, 661, 864, 865, 901], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 43, 102, 105, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 863, 921, 931, 654, 655, 656, 657, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 43, 102, 105, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 43, 102, 105, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 43, 102, 105, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(32, SumMonoid(9668)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(32, SumMonoid(26713)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(9, SumMonoid(6274)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 737), fp: EncodedCountingMonoid(4, SumMonoid(2742)) }, Fingerprint { range: Range(737, 772), fp: EncodedCountingMonoid(3, SumMonoid(2239)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 737), items: [661], want_response: true }, ItemSet { range: Range(737, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 737), items: [666, 682, 689, 705], want_response: false }, ItemSet { range: Range(737, 772), items: [737, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 737, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (737, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 737, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 737, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(32, SumMonoid(9668)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(31, SumMonoid(25976)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(8, SumMonoid(5537)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(705, 772), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 777, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 705), items: [661], want_response: true }, ItemSet { range: Range(705, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 705), items: [666, 682, 689], want_response: false }, ItemSet { range: Range(705, 772), items: [705, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (777, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 777, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 777, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 624), fp: EncodedCountingMonoid(31, SumMonoid(9044)) }, Fingerprint { range: Range(624, 991), fp: EncodedCountingMonoid(31, SumMonoid(25823)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 624), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(624, 760), fp: EncodedCountingMonoid(8, SumMonoid(5401)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(8, SumMonoid(6528)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 624), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(624, 653), items: [624, 640], want_response: true }, ItemSet { range: Range(653, 656), items: [653], want_response: true }, ItemSet { range: Range(705, 760), items: [705, 742], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (231, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(624, 653), items: [640], want_response: false }, ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(705, 760), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 705), items: [661], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [760, 772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 624, 705, 742, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 705), items: [666, 682, 689], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (624, true), (705, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 760, 772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 624, 705, 742, 879, 897, 666, 682, 689, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 231, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(31, SumMonoid(9437)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(30, SumMonoid(25199)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(8, SumMonoid(5537)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(7, SumMonoid(5768)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(705, 772), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 705), items: [661], want_response: true }, ItemSet { range: Range(705, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 705), items: [666, 682, 689], want_response: false }, ItemSet { range: Range(705, 772), items: [705, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(31, SumMonoid(9437)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(30, SumMonoid(25199)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(8, SumMonoid(5537)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(7, SumMonoid(5768)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(705, 772), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (43, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 705), items: [661], want_response: true }, ItemSet { range: Range(705, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 705), items: [666, 682, 689], want_response: false }, ItemSet { range: Range(705, 772), items: [705, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 43, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(30, SumMonoid(9394)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(30, SumMonoid(25199)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(8, SumMonoid(5537)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(7, SumMonoid(5768)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(705, 772), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 705), items: [661], want_response: true }, ItemSet { range: Range(705, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 705), items: [666, 682, 689], want_response: false }, ItemSet { range: Range(705, 772), items: [705, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 102, 105, 143, 153, 165, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 653), fp: EncodedCountingMonoid(30, SumMonoid(9867)) }, Fingerprint { range: Range(653, 991), fp: EncodedCountingMonoid(29, SumMonoid(24559)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 864), fp: EncodedCountingMonoid(7, SumMonoid(4799)) }, Fingerprint { range: Range(864, 991), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(1, 653), items: [1, 640], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(7, SumMonoid(4897)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(7, SumMonoid(5768)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 653), items: [10, 102, 105, 143, 153, 165, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 102, 105, 143, 153, 165, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(705, 772), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 656), items: [653], want_response: true }], wants: [863, 921, 931], provide: [(10, true), (102, true), (105, true), (143, true), (153, true), (165, true), (203, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 705), items: [661], want_response: true }, ItemSet { range: Range(705, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973], provide: [(863, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 705), items: [666, 682, 689], want_response: false }, ItemSet { range: Range(705, 772), items: [705, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 657, 661, 864, 865, 901], provide: [(772, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 102, 105, 143, 153, 165, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 666, 682, 689, 705, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 102, 105, 143, 153, 165, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 863, 921, 931, 654, 655, 656, 657, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 102, 105, 143, 153, 165, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 102, 105, 143, 153, 165, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 102, 105, 143, 153, 165, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(30, SumMonoid(9394)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(30, SumMonoid(25199)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(8, SumMonoid(5537)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(7, SumMonoid(5768)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(705, 772), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 705), items: [661], want_response: true }, ItemSet { range: Range(705, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 705), items: [666, 682, 689], want_response: false }, ItemSet { range: Range(705, 772), items: [705, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 653), fp: EncodedCountingMonoid(30, SumMonoid(9394)) }, Fingerprint { range: Range(653, 991), fp: EncodedCountingMonoid(29, SumMonoid(24559)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 864), fp: EncodedCountingMonoid(7, SumMonoid(4799)) }, Fingerprint { range: Range(864, 991), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(1, 653), items: [1, 640], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(7, SumMonoid(4897)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(7, SumMonoid(5768)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 653), items: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1, 640], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true), (640, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(705, 772), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 656), items: [653], want_response: true }], wants: [863, 921, 931], provide: [(10, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 705), items: [661], want_response: true }, ItemSet { range: Range(705, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973], provide: [(863, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 705), items: [666, 682, 689], want_response: false }, ItemSet { range: Range(705, 772), items: [705, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 657, 661, 864, 865, 901], provide: [(772, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 666, 682, 689, 705, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 640, 863, 921, 931, 654, 655, 656, 657, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(30, SumMonoid(9394)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(30, SumMonoid(25199)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(8, SumMonoid(5537)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(7, SumMonoid(5768)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(705, 772), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 705), items: [661], want_response: true }, ItemSet { range: Range(705, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 705), items: [666, 682, 689], want_response: false }, ItemSet { range: Range(705, 772), items: [705, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 653), fp: EncodedCountingMonoid(30, SumMonoid(9807)) }, Fingerprint { range: Range(653, 991), fp: EncodedCountingMonoid(29, SumMonoid(24559)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 864), fp: EncodedCountingMonoid(7, SumMonoid(4799)) }, Fingerprint { range: Range(864, 991), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(1, 653), items: [1, 640], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(7, SumMonoid(4897)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(7, SumMonoid(5768)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 653), items: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(705, 772), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 656), items: [653], want_response: true }], wants: [863, 921, 931], provide: [(10, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 705), items: [661], want_response: true }, ItemSet { range: Range(705, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973], provide: [(863, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 705), items: [666, 682, 689], want_response: false }, ItemSet { range: Range(705, 772), items: [705, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 657, 661, 864, 865, 901], provide: [(772, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 666, 682, 689, 705, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 863, 921, 931, 654, 655, 656, 657, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(30, SumMonoid(9394)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(30, SumMonoid(25199)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(8, SumMonoid(5537)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(7, SumMonoid(5768)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(705, 772), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 705), items: [661], want_response: true }, ItemSet { range: Range(705, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 705), items: [666, 682, 689], want_response: false }, ItemSet { range: Range(705, 772), items: [705, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 653), fp: EncodedCountingMonoid(30, SumMonoid(9595)) }, Fingerprint { range: Range(653, 991), fp: EncodedCountingMonoid(29, SumMonoid(24559)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 864), fp: EncodedCountingMonoid(7, SumMonoid(4799)) }, Fingerprint { range: Range(864, 991), fp: EncodedCountingMonoid(6, SumMonoid(5472)) }], item_sets: [ItemSet { range: Range(1, 653), items: [1, 640], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(653, 772), fp: EncodedCountingMonoid(7, SumMonoid(4897)) }, Fingerprint { range: Range(772, 864), fp: EncodedCountingMonoid(7, SumMonoid(5768)) }, Fingerprint { range: Range(864, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 653), items: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 458, 496, 503, 509, 523, 527, 624, 640], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(653, 656), fp: EncodedCountingMonoid(3, SumMonoid(1962)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(864, 921), fp: EncodedCountingMonoid(3, SumMonoid(2630)) }], item_sets: [ItemSet { range: Range(772, 864), items: [863], want_response: true }, ItemSet { range: Range(921, 947), items: [921, 931], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(705, 772), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }, Fingerprint { range: Range(864, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }, Fingerprint { range: Range(879, 921), fp: EncodedCountingMonoid(3, SumMonoid(2678)) }], item_sets: [ItemSet { range: Range(772, 864), items: [772, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(921, 947), items: [925, 926], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(653, 656), items: [653], want_response: true }], wants: [863, 921, 931], provide: [(10, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 705), items: [661], want_response: true }, ItemSet { range: Range(705, 772), items: [], want_response: true }, ItemSet { range: Range(864, 879), items: [864, 865], want_response: true }, ItemSet { range: Range(879, 921), items: [901], want_response: true }], wants: [772, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973], provide: [(863, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 705), items: [666, 682, 689], want_response: false }, ItemSet { range: Range(705, 772), items: [705, 742, 760], want_response: false }, ItemSet { range: Range(864, 879), items: [867, 869, 873], want_response: false }, ItemSet { range: Range(879, 921), items: [879, 897, 902], want_response: false }], wants: [654, 655, 656, 657, 661, 864, 865, 901], provide: [(772, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (925, true), (926, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 742, 760, 867, 869, 873, 879, 897, 902], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (864, true), (865, true), (901, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (742, true), (760, true), (867, true), (869, true), (873, true), (879, true), (897, true), (902, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 458, 496, 503, 509, 523, 527, 624, 772, 788, 807, 838, 847, 854, 862, 925, 926, 947, 953, 954, 969, 970, 973, 666, 682, 689, 705, 742, 760, 867, 869, 873, 879, 897, 902]
[INFO] [stdout] b all: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 863, 921, 931, 654, 655, 656, 657, 661, 864, 865, 901]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(30, SumMonoid(9394)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(30, SumMonoid(25199)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(8, SumMonoid(5537)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(7, SumMonoid(5768)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 705), fp: EncodedCountingMonoid(3, SumMonoid(2037)) }, Fingerprint { range: Range(705, 772), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 705), items: [661], want_response: true }, ItemSet { range: Range(705, 772), items: [], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 705), items: [666, 682, 689], want_response: false }, ItemSet { range: Range(705, 772), items: [705, 742, 760], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 682, 689, 705, 742, 760, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (682, true), (689, true), (705, true), (742, true), (760, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 879, 897, 666, 682, 689, 705, 742, 760, 867, 869, 873]
[INFO] [stdout] b all: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 682, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(30, SumMonoid(9394)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(29, SumMonoid(24517)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(7, SumMonoid(4855)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(7, SumMonoid(5768)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 742), fp: EncodedCountingMonoid(3, SumMonoid(2060)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(742, 772), items: [742, 760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(742, 772), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 742), items: [661], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 742, 760, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 742), items: [666, 689, 705], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (742, true), (760, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 689, 705, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 742, 760, 879, 897, 666, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 624), fp: EncodedCountingMonoid(29, SumMonoid(8770)) }, Fingerprint { range: Range(624, 991), fp: EncodedCountingMonoid(29, SumMonoid(24216)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 624), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(624, 772), fp: EncodedCountingMonoid(8, SumMonoid(5479)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(7, SumMonoid(5768)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6213)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 624), items: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 742), fp: EncodedCountingMonoid(3, SumMonoid(2060)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(624, 653), items: [624, 640], want_response: true }, ItemSet { range: Range(653, 656), items: [653], want_response: true }, ItemSet { range: Range(742, 772), items: [742, 760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }, ItemSet { range: Range(901, 947), items: [902, 926], want_response: true }], wants: [], provide: [(10, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(624, 653), items: [640], want_response: false }, ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(742, 772), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(901, 947), items: [901, 921, 931], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 742), items: [661], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 624, 742, 760, 879, 897, 902, 926], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 742), items: [666, 689, 705], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 901, 921, 931, 656, 657, 661, 863, 864, 865], provide: [(772, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (624, true), (742, true), (760, true), (879, true), (897, true), (902, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 689, 705, 867, 869, 873], provide: [(654, true), (655, true), (901, true), (921, true), (931, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 624, 742, 760, 879, 897, 902, 926, 666, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 901, 921, 931, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 863, 864, 865, 867, 869, 873, 879, 897, 901, 902, 921, 926, 931, 947, 953, 954, 969, 970, 973, 990, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(30, SumMonoid(9394)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(29, SumMonoid(24517)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(7, SumMonoid(4855)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(7, SumMonoid(5768)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 640), items: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(656, 742), fp: EncodedCountingMonoid(3, SumMonoid(2060)) }, Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(742, 772), items: [742, 760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(742, 772), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(656, 661), items: [656, 657], want_response: true }, ItemSet { range: Range(661, 742), items: [661], want_response: true }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 742, 760, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(656, 661), items: [], want_response: false }, ItemSet { range: Range(661, 742), items: [666, 689, 705], want_response: false }, ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (742, true), (760, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [666, 689, 705, 867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(666, true), (689, true), (705, true), (867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 742, 760, 879, 897, 666, 689, 705, 867, 869, 873]
[INFO] [stdout] b all: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 705, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 624), fp: EncodedCountingMonoid(29, SumMonoid(8770)) }, Fingerprint { range: Range(624, 991), fp: EncodedCountingMonoid(29, SumMonoid(24436)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 624), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(624, 772), fp: EncodedCountingMonoid(7, SumMonoid(4774)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(7, SumMonoid(5768)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 624), items: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 788, 807, 838, 847, 854, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(624, 653), items: [624, 640], want_response: true }, ItemSet { range: Range(653, 656), items: [653], want_response: true }, ItemSet { range: Range(656, 742), items: [666, 689], want_response: true }, ItemSet { range: Range(742, 772), items: [742, 760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(624, 653), items: [640], want_response: false }, ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 742), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(742, 772), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 624, 666, 689, 742, 760, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (788, true), (807, true), (838, true), (847, true), (854, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (624, true), (666, true), (689, true), (742, true), (760, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 772, 788, 807, 838, 847, 854, 862, 947, 953, 954, 969, 970, 973, 624, 666, 689, 742, 760, 879, 897, 867, 869, 873]
[INFO] [stdout] b all: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 788, 807, 838, 847, 854, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 788, 807, 838, 847, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 624), fp: EncodedCountingMonoid(29, SumMonoid(8770)) }, Fingerprint { range: Range(624, 991), fp: EncodedCountingMonoid(28, SumMonoid(23582)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 624), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(624, 772), fp: EncodedCountingMonoid(7, SumMonoid(4774)) }, Fingerprint { range: Range(772, 863), fp: EncodedCountingMonoid(6, SumMonoid(4914)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 624), items: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(772, 863), items: [772, 788, 807, 838, 847, 862], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(624, 653), items: [624, 640], want_response: true }, ItemSet { range: Range(653, 656), items: [653], want_response: true }, ItemSet { range: Range(656, 742), items: [666, 689], want_response: true }, ItemSet { range: Range(742, 772), items: [742, 760], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(624, 653), items: [640], want_response: false }, ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 742), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(742, 772), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [772, 788, 807, 838, 847, 862, 947, 953, 954, 969, 970, 973, 624, 666, 689, 742, 760, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(772, true), (788, true), (807, true), (838, true), (847, true), (862, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (624, true), (666, true), (689, true), (742, true), (760, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 772, 788, 807, 838, 847, 862, 947, 953, 954, 969, 970, 973, 624, 666, 689, 742, 760, 879, 897, 867, 869, 873]
[INFO] [stdout] b all: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 788, 807, 838, 847, 862, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 788, 807, 838, 847, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 527), fp: EncodedCountingMonoid(28, SumMonoid(8243)) }, Fingerprint { range: Range(527, 991), fp: EncodedCountingMonoid(28, SumMonoid(23247)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 527), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(527, 760), fp: EncodedCountingMonoid(7, SumMonoid(4541)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(6, SumMonoid(4812)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 527), items: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 788, 807, 838, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(527, 640), items: [527, 624], want_response: true }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(656, 742), items: [666, 689], want_response: true }, ItemSet { range: Range(742, 760), items: [742], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (413, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(527, 640), items: [], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 742), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(742, 760), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [760, 772, 788, 807, 838, 847, 947, 953, 954, 969, 970, 973, 527, 624, 666, 689, 742, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (788, true), (807, true), (838, true), (847, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (527, true), (624, true), (666, true), (689, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 760, 772, 788, 807, 838, 847, 947, 953, 954, 969, 970, 973, 527, 624, 666, 689, 742, 879, 897, 867, 869, 873]
[INFO] [stdout] b all: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 413, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 788, 807, 838, 847, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 788, 807, 838, 847, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 624), fp: EncodedCountingMonoid(28, SumMonoid(8357)) }, Fingerprint { range: Range(624, 991), fp: EncodedCountingMonoid(27, SumMonoid(22720)) }], item_sets: [ItemSet { range: Range(991, 1), items: [996], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 624), items: [1], want_response: true }], wants: [996], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(624, 760), fp: EncodedCountingMonoid(6, SumMonoid(4014)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(6, SumMonoid(4812)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 624), items: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527], want_response: false }], wants: [1], provide: [(996, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 788, 807, 838, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(624, 653), items: [624, 640], want_response: true }, ItemSet { range: Range(653, 656), items: [653], want_response: true }, ItemSet { range: Range(656, 742), items: [666, 689], want_response: true }, ItemSet { range: Range(742, 760), items: [742], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(624, 653), items: [640], want_response: false }, ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 742), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(742, 760), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [760, 772, 788, 807, 838, 847, 947, 953, 954, 969, 970, 973, 624, 666, 689, 742, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (788, true), (807, true), (838, true), (847, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (624, true), (666, true), (689, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [996, 10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 760, 772, 788, 807, 838, 847, 947, 953, 954, 969, 970, 973, 624, 666, 689, 742, 879, 897, 867, 869, 873]
[INFO] [stdout] b all: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 788, 807, 838, 847, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990, 996} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 788, 807, 838, 847, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 624), fp: EncodedCountingMonoid(28, SumMonoid(8357)) }, Fingerprint { range: Range(624, 991), fp: EncodedCountingMonoid(27, SumMonoid(22720)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 624), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(624, 760), fp: EncodedCountingMonoid(6, SumMonoid(4014)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(6, SumMonoid(4812)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 624), items: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527], want_response: false }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 788, 807, 838, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(624, 653), items: [624, 640], want_response: true }, ItemSet { range: Range(653, 656), items: [653], want_response: true }, ItemSet { range: Range(656, 742), items: [666, 689], want_response: true }, ItemSet { range: Range(742, 760), items: [742], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (203, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(624, 653), items: [640], want_response: false }, ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 742), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(742, 760), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [760, 772, 788, 807, 838, 847, 947, 953, 954, 969, 970, 973, 624, 666, 689, 742, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (788, true), (807, true), (838, true), (847, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (624, true), (666, true), (689, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 760, 772, 788, 807, 838, 847, 947, 953, 954, 969, 970, 973, 624, 666, 689, 742, 879, 897, 867, 869, 873]
[INFO] [stdout] b all: {10, 102, 105, 143, 153, 165, 167, 203, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 788, 807, 838, 847, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 788, 807, 838, 847, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 624), fp: EncodedCountingMonoid(27, SumMonoid(8154)) }, Fingerprint { range: Range(624, 991), fp: EncodedCountingMonoid(27, SumMonoid(22720)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 624), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(624, 760), fp: EncodedCountingMonoid(6, SumMonoid(4014)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(6, SumMonoid(4812)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(8, SumMonoid(7138)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 624), items: [10, 102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527], want_response: false }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 879), fp: EncodedCountingMonoid(3, SumMonoid(2609)) }], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 788, 807, 838, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(624, 653), items: [624, 640], want_response: true }, ItemSet { range: Range(653, 656), items: [653], want_response: true }, ItemSet { range: Range(656, 742), items: [666, 689], want_response: true }, ItemSet { range: Range(742, 760), items: [742], want_response: true }, ItemSet { range: Range(879, 901), items: [879, 897], want_response: true }], wants: [], provide: [(10, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(624, 653), items: [640], want_response: false }, ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 742), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(742, 760), items: [], want_response: false }, ItemSet { range: Range(879, 901), items: [], want_response: false }, ItemSet { range: Range(863, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 879), items: [865], want_response: true }], wants: [760, 772, 788, 807, 838, 847, 947, 953, 954, 969, 970, 973, 624, 666, 689, 742, 879, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 865), items: [], want_response: false }, ItemSet { range: Range(865, 879), items: [867, 869, 873], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (788, true), (807, true), (838, true), (847, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (624, true), (666, true), (689, true), (742, true), (879, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [867, 869, 873], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(867, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [10, 102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 760, 772, 788, 807, 838, 847, 947, 953, 954, 969, 970, 973, 624, 666, 689, 742, 879, 897, 867, 869, 873]
[INFO] [stdout] b all: {10, 102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 788, 807, 838, 847, 867, 869, 873, 879, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {10, 102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 788, 807, 838, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 624), fp: EncodedCountingMonoid(27, SumMonoid(8154)) }, Fingerprint { range: Range(624, 991), fp: EncodedCountingMonoid(26, SumMonoid(21841)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 624), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(624, 760), fp: EncodedCountingMonoid(6, SumMonoid(4014)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(6, SumMonoid(4812)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 624), items: [10, 102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527], want_response: false }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [10, 102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 788, 807, 838, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(624, 653), items: [624, 640], want_response: true }, ItemSet { range: Range(653, 656), items: [653], want_response: true }, ItemSet { range: Range(656, 742), items: [666, 689], want_response: true }, ItemSet { range: Range(742, 760), items: [742], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(10, true), (102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(624, 653), items: [640], want_response: false }, ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 742), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(742, 760), items: [], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [760, 772, 788, 807, 838, 847, 947, 953, 954, 969, 970, 973, 624, 666, 689, 742, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (788, true), (807, true), (838, true), (847, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (624, true), (666, true), (689, true), (742, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [10, 102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 760, 772, 788, 807, 838, 847, 947, 953, 954, 969, 970, 973, 624, 666, 689, 742, 867, 869, 873, 897]
[INFO] [stdout] b all: {10, 102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 788, 807, 838, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 788, 807, 838, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 624), fp: EncodedCountingMonoid(26, SumMonoid(8144)) }, Fingerprint { range: Range(624, 991), fp: EncodedCountingMonoid(26, SumMonoid(21841)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 624), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(624, 760), fp: EncodedCountingMonoid(6, SumMonoid(4014)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(6, SumMonoid(4812)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(7, SumMonoid(6756)) }], item_sets: [ItemSet { range: Range(1, 624), items: [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527], want_response: false }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 788, 807, 838, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 969, 970, 973, 990], want_response: false }, ItemSet { range: Range(624, 653), items: [624, 640], want_response: true }, ItemSet { range: Range(653, 656), items: [653], want_response: true }, ItemSet { range: Range(656, 742), items: [666, 689], want_response: true }, ItemSet { range: Range(742, 760), items: [742], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(624, 653), items: [640], want_response: false }, ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 742), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(742, 760), items: [], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [760, 772, 788, 807, 838, 847, 947, 953, 954, 969, 970, 973, 624, 666, 689, 742, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (788, true), (807, true), (838, true), (847, true), (947, true), (953, true), (954, true), (969, true), (970, true), (973, true), (624, true), (666, true), (689, true), (742, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 760, 772, 788, 807, 838, 847, 947, 953, 954, 969, 970, 973, 624, 666, 689, 742, 867, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 788, 807, 838, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 969, 970, 973, 990} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 788, 807, 838, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 624), fp: EncodedCountingMonoid(26, SumMonoid(8144)) }, Fingerprint { range: Range(624, 991), fp: EncodedCountingMonoid(25, SumMonoid(20872)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 624), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(624, 760), fp: EncodedCountingMonoid(6, SumMonoid(4014)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(6, SumMonoid(4812)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 624), items: [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527], want_response: false }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 788, 807, 838, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(624, 653), items: [624, 640], want_response: true }, ItemSet { range: Range(653, 656), items: [653], want_response: true }, ItemSet { range: Range(656, 742), items: [666, 689], want_response: true }, ItemSet { range: Range(742, 760), items: [742], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true), (527, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(624, 653), items: [640], want_response: false }, ItemSet { range: Range(653, 656), items: [653, 654, 655], want_response: false }, ItemSet { range: Range(656, 742), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(742, 760), items: [], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [760, 772, 788, 807, 838, 847, 947, 953, 954, 970, 973, 624, 666, 689, 742, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (788, true), (807, true), (838, true), (847, true), (947, true), (953, true), (954, true), (970, true), (973, true), (624, true), (666, true), (689, true), (742, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 760, 772, 788, 807, 838, 847, 947, 953, 954, 970, 973, 624, 666, 689, 742, 867, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 788, 807, 838, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 807, 838, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 527), fp: EncodedCountingMonoid(25, SumMonoid(7617)) }, Fingerprint { range: Range(527, 991), fp: EncodedCountingMonoid(25, SumMonoid(20611)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 527), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(527, 742), fp: EncodedCountingMonoid(6, SumMonoid(3799)) }, Fingerprint { range: Range(742, 863), fp: EncodedCountingMonoid(6, SumMonoid(4766)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 527), items: [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523], want_response: false }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 742), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(742, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(742, 863), items: [742, 760, 772, 807, 838, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(527, 640), items: [527, 624], want_response: true }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(656, 742), items: [666, 689], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(527, 640), items: [], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 742), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [742, 760, 772, 807, 838, 847, 947, 953, 954, 970, 973, 527, 624, 666, 689, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(742, true), (760, true), (772, true), (807, true), (838, true), (847, true), (947, true), (953, true), (954, true), (970, true), (973, true), (527, true), (624, true), (666, true), (689, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 742, 760, 772, 807, 838, 847, 947, 953, 954, 970, 973, 527, 624, 666, 689, 867, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 742, 760, 772, 807, 838, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 760, 772, 807, 838, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 527), fp: EncodedCountingMonoid(25, SumMonoid(7617)) }, Fingerprint { range: Range(527, 991), fp: EncodedCountingMonoid(24, SumMonoid(19869)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 527), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(527, 760), fp: EncodedCountingMonoid(6, SumMonoid(3799)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(5, SumMonoid(4024)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 527), items: [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523], want_response: false }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 807, 838, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(527, 640), items: [527, 624], want_response: true }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(656, 760), items: [666, 689], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(527, 640), items: [], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 760), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [760, 772, 807, 838, 847, 947, 953, 954, 970, 973, 527, 624, 666, 689, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (807, true), (838, true), (847, true), (947, true), (953, true), (954, true), (970, true), (973, true), (527, true), (624, true), (666, true), (689, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 760, 772, 807, 838, 847, 947, 953, 954, 970, 973, 527, 624, 666, 689, 867, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 689, 760, 772, 807, 838, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 760, 772, 807, 838, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 523), fp: EncodedCountingMonoid(24, SumMonoid(7094)) }, Fingerprint { range: Range(523, 991), fp: EncodedCountingMonoid(24, SumMonoid(19703)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(523, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 523), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(523, 760), fp: EncodedCountingMonoid(6, SumMonoid(3633)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(5, SumMonoid(4024)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 523), items: [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509], want_response: false }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(523, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(523, 640), fp: EncodedCountingMonoid(3, SumMonoid(1674)) }], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 807, 838, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(656, 760), items: [666], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (439, true), (458, true), (496, true), (503, true), (509, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 760), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }, ItemSet { range: Range(523, 640), items: [], want_response: true }], wants: [760, 772, 807, 838, 847, 947, 953, 954, 970, 973, 666, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(523, 640), items: [523, 527, 624], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (807, true), (838, true), (847, true), (947, true), (953, true), (954, true), (970, true), (973, true), (666, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [523, 527, 624], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 760, 772, 807, 838, 847, 947, 953, 954, 970, 973, 666, 867, 869, 873, 897, 523, 527, 624]
[INFO] [stdout] b all: {102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 760, 772, 807, 838, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 760, 772, 807, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 523), fp: EncodedCountingMonoid(24, SumMonoid(7094)) }, Fingerprint { range: Range(523, 991), fp: EncodedCountingMonoid(23, SumMonoid(18865)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(523, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 523), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(523, 666), fp: EncodedCountingMonoid(5, SumMonoid(2967)) }, Fingerprint { range: Range(666, 863), fp: EncodedCountingMonoid(5, SumMonoid(3852)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 523), items: [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509], want_response: false }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(523, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 666), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(666, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(523, 640), fp: EncodedCountingMonoid(3, SumMonoid(1674)) }], item_sets: [ItemSet { range: Range(666, 863), items: [666, 760, 772, 807, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(656, 666), items: [], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (389, true), (439, true), (458, true), (496, true), (503, true), (509, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 666), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }, ItemSet { range: Range(523, 640), items: [], want_response: true }], wants: [666, 760, 772, 807, 847, 947, 953, 954, 970, 973, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(523, 640), items: [523, 527, 624], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(666, true), (760, true), (772, true), (807, true), (847, true), (947, true), (953, true), (954, true), (970, true), (973, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [523, 527, 624], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 666, 760, 772, 807, 847, 947, 953, 954, 970, 973, 867, 869, 873, 897, 523, 527, 624]
[INFO] [stdout] b all: {102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 389, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 760, 772, 807, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 760, 772, 807, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 523), fp: EncodedCountingMonoid(23, SumMonoid(6705)) }, Fingerprint { range: Range(523, 991), fp: EncodedCountingMonoid(23, SumMonoid(18865)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(523, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 523), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(523, 666), fp: EncodedCountingMonoid(5, SumMonoid(2967)) }, Fingerprint { range: Range(666, 863), fp: EncodedCountingMonoid(5, SumMonoid(3852)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 523), items: [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509], want_response: false }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(523, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 666), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(666, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(523, 640), fp: EncodedCountingMonoid(3, SumMonoid(1674)) }], item_sets: [ItemSet { range: Range(666, 863), items: [666, 760, 772, 807, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(656, 666), items: [], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (209, true), (223, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (439, true), (458, true), (496, true), (503, true), (509, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 666), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }, ItemSet { range: Range(523, 640), items: [], want_response: true }], wants: [666, 760, 772, 807, 847, 947, 953, 954, 970, 973, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(523, 640), items: [523, 527, 624], want_response: false }], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(666, true), (760, true), (772, true), (807, true), (847, true), (947, true), (953, true), (954, true), (970, true), (973, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [523, 527, 624], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(523, true), (527, true), (624, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 666, 760, 772, 807, 847, 947, 953, 954, 970, 973, 867, 869, 873, 897, 523, 527, 624]
[INFO] [stdout] b all: {102, 105, 143, 153, 165, 167, 209, 223, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 760, 772, 807, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 165, 167, 209, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 760, 772, 807, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 527), fp: EncodedCountingMonoid(23, SumMonoid(7005)) }, Fingerprint { range: Range(527, 991), fp: EncodedCountingMonoid(22, SumMonoid(18342)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 527), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(527, 760), fp: EncodedCountingMonoid(5, SumMonoid(3110)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(4, SumMonoid(3186)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 527), items: [102, 105, 143, 153, 165, 167, 209, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523], want_response: false }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 209, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 807, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(527, 640), items: [527, 624], want_response: true }, ItemSet { range: Range(640, 656), items: [640, 653], want_response: true }, ItemSet { range: Range(656, 760), items: [666], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (209, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(527, 640), items: [], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 760), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [760, 772, 807, 847, 947, 953, 954, 970, 973, 527, 624, 666, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (807, true), (847, true), (947, true), (953, true), (954, true), (970, true), (973, true), (527, true), (624, true), (666, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 165, 167, 209, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523, 760, 772, 807, 847, 947, 953, 954, 970, 973, 527, 624, 666, 867, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 165, 167, 209, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523, 527, 624, 640, 653, 666, 760, 772, 807, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 165, 167, 209, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523, 527, 624, 640, 666, 760, 772, 807, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 523), fp: EncodedCountingMonoid(22, SumMonoid(6482)) }, Fingerprint { range: Range(523, 991), fp: EncodedCountingMonoid(22, SumMonoid(18212)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(523, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 523), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(523, 760), fp: EncodedCountingMonoid(5, SumMonoid(2980)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(4, SumMonoid(3186)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 523), items: [102, 105, 143, 153, 165, 167, 209, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509], want_response: false }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(523, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 209, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 807, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(523, 624), items: [523, 527], want_response: true }, ItemSet { range: Range(624, 656), items: [624, 640], want_response: true }, ItemSet { range: Range(656, 760), items: [666], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (209, true), (227, true), (229, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (439, true), (458, true), (496, true), (503, true), (509, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(523, 624), items: [], want_response: false }, ItemSet { range: Range(624, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 760), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [760, 772, 807, 847, 947, 953, 954, 970, 973, 523, 527, 624, 666, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [653, 654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (807, true), (847, true), (947, true), (953, true), (954, true), (970, true), (973, true), (523, true), (527, true), (624, true), (666, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 165, 167, 209, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 760, 772, 807, 847, 947, 953, 954, 970, 973, 523, 527, 624, 666, 867, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 165, 167, 209, 227, 229, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523, 527, 624, 640, 666, 760, 772, 807, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523, 527, 624, 640, 666, 760, 772, 807, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 527), fp: EncodedCountingMonoid(22, SumMonoid(6776)) }, Fingerprint { range: Range(527, 991), fp: EncodedCountingMonoid(21, SumMonoid(17689)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 527), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(527, 760), fp: EncodedCountingMonoid(4, SumMonoid(2457)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(4, SumMonoid(3186)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 527), items: [102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523], want_response: false }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 807, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(527, 640), items: [527, 624], want_response: true }, ItemSet { range: Range(640, 656), items: [640], want_response: true }, ItemSet { range: Range(656, 760), items: [666], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (209, true), (227, true), (244, true), (277, true), (282, true), (313, true), (342, true), (366, true), (371, true), (382, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(527, 640), items: [], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 760), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [760, 772, 807, 847, 947, 953, 954, 970, 973, 527, 624, 666, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [653, 654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (807, true), (847, true), (947, true), (953, true), (954, true), (970, true), (973, true), (527, true), (624, true), (666, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523, 760, 772, 807, 847, 947, 953, 954, 970, 973, 527, 624, 666, 867, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 282, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523, 527, 624, 640, 666, 760, 772, 807, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523, 527, 624, 640, 666, 760, 772, 807, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 527), fp: EncodedCountingMonoid(21, SumMonoid(6494)) }, Fingerprint { range: Range(527, 991), fp: EncodedCountingMonoid(21, SumMonoid(17689)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 527), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(527, 760), fp: EncodedCountingMonoid(4, SumMonoid(2457)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(4, SumMonoid(3186)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 527), items: [102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523], want_response: false }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 807, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(527, 640), items: [527, 624], want_response: true }, ItemSet { range: Range(640, 656), items: [640], want_response: true }, ItemSet { range: Range(656, 760), items: [666], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (209, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (382, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(527, 640), items: [], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 760), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [760, 772, 807, 847, 947, 953, 954, 970, 973, 527, 624, 666, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [653, 654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (807, true), (847, true), (947, true), (953, true), (954, true), (970, true), (973, true), (527, true), (624, true), (666, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523, 760, 772, 807, 847, 947, 953, 954, 970, 973, 527, 624, 666, 867, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523, 527, 624, 640, 666, 760, 772, 807, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 527), fp: EncodedCountingMonoid(21, SumMonoid(6494)) }, Fingerprint { range: Range(527, 991), fp: EncodedCountingMonoid(20, SumMonoid(16882)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 527), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(527, 760), fp: EncodedCountingMonoid(4, SumMonoid(2457)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(3, SumMonoid(2379)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 527), items: [102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523], want_response: false }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(527, 640), items: [527, 624], want_response: true }, ItemSet { range: Range(640, 656), items: [640], want_response: true }, ItemSet { range: Range(656, 760), items: [666], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (209, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (382, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(527, 640), items: [], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 760), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [760, 772, 847, 947, 953, 954, 970, 973, 527, 624, 666, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [653, 654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (847, true), (947, true), (953, true), (954, true), (970, true), (973, true), (527, true), (624, true), (666, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523, 760, 772, 847, 947, 953, 954, 970, 973, 527, 624, 666, 867, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 382, 439, 458, 496, 503, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 496, 503, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 527), fp: EncodedCountingMonoid(20, SumMonoid(6112)) }, Fingerprint { range: Range(527, 991), fp: EncodedCountingMonoid(20, SumMonoid(16882)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 527), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(527, 760), fp: EncodedCountingMonoid(4, SumMonoid(2457)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(3, SumMonoid(2379)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 527), items: [102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 496, 503, 509, 523], want_response: false }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 496, 503, 509, 523], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(527, 640), items: [527, 624], want_response: true }, ItemSet { range: Range(640, 656), items: [640], want_response: true }, ItemSet { range: Range(656, 760), items: [666], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (209, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (496, true), (503, true), (509, true), (523, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(527, 640), items: [], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 760), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [760, 772, 847, 947, 953, 954, 970, 973, 527, 624, 666, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [653, 654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (847, true), (947, true), (953, true), (954, true), (970, true), (973, true), (527, true), (624, true), (666, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 496, 503, 509, 523, 760, 772, 847, 947, 953, 954, 970, 973, 527, 624, 666, 867, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 496, 503, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 496, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 624), fp: EncodedCountingMonoid(20, SumMonoid(6136)) }, Fingerprint { range: Range(624, 991), fp: EncodedCountingMonoid(19, SumMonoid(16355)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 624), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(624, 760), fp: EncodedCountingMonoid(3, SumMonoid(1930)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(3, SumMonoid(2379)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 624), items: [102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 496, 509, 523, 527], want_response: false }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 496, 509, 523, 527], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(624, 656), items: [624, 640], want_response: true }, ItemSet { range: Range(656, 760), items: [666], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (165, true), (167, true), (209, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (496, true), (509, true), (523, true), (527, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(624, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 760), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [760, 772, 847, 947, 953, 954, 970, 973, 624, 666, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [653, 654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (847, true), (947, true), (953, true), (954, true), (970, true), (973, true), (624, true), (666, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 496, 509, 523, 527, 760, 772, 847, 947, 953, 954, 970, 973, 624, 666, 867, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 165, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 496, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 496, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 624), fp: EncodedCountingMonoid(19, SumMonoid(5971)) }, Fingerprint { range: Range(624, 991), fp: EncodedCountingMonoid(19, SumMonoid(16355)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 624), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(624, 760), fp: EncodedCountingMonoid(3, SumMonoid(1930)) }, Fingerprint { range: Range(760, 863), fp: EncodedCountingMonoid(3, SumMonoid(2379)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 624), items: [102, 105, 143, 153, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 496, 509, 523, 527], want_response: false }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 760), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(760, 863), items: [], want_response: true }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 496, 509, 523, 527], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(760, 863), items: [760, 772, 847], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(624, 656), items: [624, 640], want_response: true }, ItemSet { range: Range(656, 760), items: [666], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (167, true), (209, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (496, true), (509, true), (523, true), (527, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(624, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 760), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [760, 772, 847, 947, 953, 954, 970, 973, 624, 666, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [653, 654, 655, 656, 657, 661, 863, 864, 865], provide: [(760, true), (772, true), (847, true), (947, true), (953, true), (954, true), (970, true), (973, true), (624, true), (666, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 496, 509, 523, 527, 760, 772, 847, 947, 953, 954, 970, 973, 624, 666, 867, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 496, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(19, SumMonoid(6099)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(18, SumMonoid(15731)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(3, SumMonoid(2066)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 640), items: [102, 105, 143, 153, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624], want_response: false }, ItemSet { range: Range(772, 863), items: [772, 847], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: false }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640], want_response: true }, ItemSet { range: Range(656, 772), items: [666, 760], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (167, true), (209, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (527, true), (624, true), (772, true), (847, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 772), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [947, 953, 954, 970, 973, 666, 760, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [653, 654, 655, 656, 657, 661, 863, 864, 865], provide: [(947, true), (953, true), (954, true), (970, true), (973, true), (666, true), (760, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847, 947, 953, 954, 970, 973, 666, 760, 867, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 167, 209, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(18, SumMonoid(5890)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(18, SumMonoid(15731)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(3, SumMonoid(2066)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 640), items: [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624], want_response: false }, ItemSet { range: Range(772, 863), items: [772, 847], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: false }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640], want_response: true }, ItemSet { range: Range(656, 772), items: [666, 760], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (167, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (527, true), (624, true), (772, true), (847, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 772), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [947, 953, 954, 970, 973, 666, 760, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [653, 654, 655, 656, 657, 661, 863, 864, 865], provide: [(947, true), (953, true), (954, true), (970, true), (973, true), (666, true), (760, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847, 947, 953, 954, 970, 973, 666, 760, 867, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(18, SumMonoid(5890)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(17, SumMonoid(14777)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(3, SumMonoid(2066)) }, Fingerprint { range: Range(863, 926), fp: EncodedCountingMonoid(6, SumMonoid(5333)) }, Fingerprint { range: Range(926, 991), fp: EncodedCountingMonoid(6, SumMonoid(5759)) }], item_sets: [ItemSet { range: Range(1, 640), items: [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624], want_response: false }, ItemSet { range: Range(772, 863), items: [772, 847], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: false }, ItemSet { range: Range(901, 926), items: [901, 921], want_response: true }, ItemSet { range: Range(926, 991), items: [931, 990], want_response: true }], wants: [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(901, 926), items: [902, 925], want_response: false }, ItemSet { range: Range(926, 991), items: [926, 947, 953, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640], want_response: true }, ItemSet { range: Range(656, 772), items: [666, 760], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [901, 921, 931], provide: [(102, true), (105, true), (143, true), (153, true), (167, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (527, true), (624, true), (772, true), (847, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 772), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [902, 925, 926, 947, 953, 970, 973, 666, 760, 867, 869, 873, 897], provide: [(901, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [653, 654, 655, 656, 657, 661, 863, 864, 865], provide: [(902, true), (925, true), (926, true), (947, true), (953, true), (970, true), (973, true), (666, true), (760, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847, 902, 925, 926, 947, 953, 970, 973, 666, 760, 867, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 970, 973, 990} + [1, 901, 921, 931, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 760, 772, 847, 863, 864, 865, 867, 869, 873, 897, 901, 902, 921, 925, 926, 931, 947, 953, 970, 973, 990]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 760, 772, 847, 863, 864, 865, 867, 869, 873, 897, 901, 902, 921, 925, 926, 931, 947, 953, 970, 973, 990], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 760, 772, 847, 863, 864, 865, 867, 869, 873, 897, 901, 902, 921, 925, 926, 931, 947, 953, 970, 973, 990], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(18, SumMonoid(5890)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(18, SumMonoid(15731)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(3, SumMonoid(2066)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 640), items: [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624], want_response: false }, ItemSet { range: Range(772, 863), items: [772, 847], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: false }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640], want_response: true }, ItemSet { range: Range(656, 772), items: [666, 760], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (167, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (527, true), (624, true), (772, true), (847, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 772), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [947, 953, 954, 970, 973, 666, 760, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [653, 654, 655, 656, 657, 661, 863, 864, 865], provide: [(947, true), (953, true), (954, true), (970, true), (973, true), (666, true), (760, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847, 947, 953, 954, 970, 973, 666, 760, 867, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(18, SumMonoid(5890)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(17, SumMonoid(14829)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(3, SumMonoid(2066)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(6, SumMonoid(5357)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 640), items: [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624], want_response: false }, ItemSet { range: Range(772, 863), items: [772, 847], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: false }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640], want_response: true }, ItemSet { range: Range(656, 772), items: [666, 760], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }, ItemSet { range: Range(901, 947), items: [925, 926], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (167, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (527, true), (624, true), (772, true), (847, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 772), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }, ItemSet { range: Range(901, 947), items: [901, 921, 931], want_response: false }], wants: [947, 953, 954, 970, 973, 666, 760, 867, 869, 873, 897, 925, 926], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931], provide: [(947, true), (953, true), (954, true), (970, true), (973, true), (666, true), (760, true), (867, true), (869, true), (873, true), (897, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true), (901, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847, 947, 953, 954, 970, 973, 666, 760, 867, 869, 873, 897, 925, 926]
[INFO] [stdout] b all: {102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 760, 772, 847, 863, 864, 865, 867, 869, 873, 897, 901, 921, 925, 926, 931, 947, 953, 954, 970, 973, 990]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 760, 772, 847, 863, 864, 865, 867, 869, 873, 897, 901, 921, 925, 926, 931, 947, 953, 954, 970, 973, 990], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 760, 772, 847, 863, 864, 865, 867, 869, 873, 897, 901, 921, 925, 926, 931, 947, 953, 954, 970, 973, 990], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(18, SumMonoid(5890)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(18, SumMonoid(15731)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(3, SumMonoid(2066)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 640), items: [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624], want_response: false }, ItemSet { range: Range(772, 863), items: [772, 847], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: false }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640], want_response: true }, ItemSet { range: Range(656, 772), items: [666, 760], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (167, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (527, true), (624, true), (772, true), (847, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 772), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [947, 953, 954, 970, 973, 666, 760, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [653, 654, 655, 656, 657, 661, 863, 864, 865], provide: [(947, true), (953, true), (954, true), (970, true), (973, true), (666, true), (760, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847, 947, 953, 954, 970, 973, 666, 760, 867, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 167, 227, 244, 277, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 666), fp: EncodedCountingMonoid(18, SumMonoid(6217)) }, Fingerprint { range: Range(666, 991), fp: EncodedCountingMonoid(17, SumMonoid(15091)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 655), fp: EncodedCountingMonoid(4, SumMonoid(1948)) }, Fingerprint { range: Range(655, 666), fp: EncodedCountingMonoid(4, SumMonoid(2629)) }, Fingerprint { range: Range(666, 921), fp: EncodedCountingMonoid(4, SumMonoid(3493)) }, Fingerprint { range: Range(921, 991), fp: EncodedCountingMonoid(3, SumMonoid(2842)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 366), fp: EncodedCountingMonoid(9, SumMonoid(1760)) }, Fingerprint { range: Range(366, 655), fp: EncodedCountingMonoid(9, SumMonoid(4457)) }, Fingerprint { range: Range(666, 869), fp: EncodedCountingMonoid(5, SumMonoid(3912)) }, Fingerprint { range: Range(869, 921), fp: EncodedCountingMonoid(4, SumMonoid(3541)) }, Fingerprint { range: Range(921, 954), fp: EncodedCountingMonoid(4, SumMonoid(3751)) }, Fingerprint { range: Range(954, 991), fp: EncodedCountingMonoid(4, SumMonoid(3887)) }], item_sets: [ItemSet { range: Range(655, 666), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(655, 666), items: [655, 656, 657, 661], want_response: false }, ItemSet { range: Range(1, 366), items: [1], want_response: true }, ItemSet { range: Range(366, 654), items: [640, 653], want_response: true }, ItemSet { range: Range(654, 655), items: [654], want_response: true }, ItemSet { range: Range(666, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 869), items: [865], want_response: true }, ItemSet { range: Range(869, 921), items: [901], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 991), items: [990], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(1, 366), items: [102, 105, 143, 153, 167, 227, 244, 277, 342], want_response: false }, ItemSet { range: Range(366, 654), items: [366, 371, 439, 458, 509, 523, 527, 624, 640], want_response: false }, ItemSet { range: Range(654, 655), items: [], want_response: false }, ItemSet { range: Range(666, 865), items: [666, 760, 772, 847], want_response: false }, ItemSet { range: Range(865, 869), items: [867], want_response: false }, ItemSet { range: Range(869, 921), items: [869, 873, 897, 902], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 991), items: [954, 970, 973, 990], want_response: false }], wants: [655, 656, 657, 661, 1, 653, 654, 863, 864, 865, 901, 921, 931], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [102, 105, 143, 153, 167, 227, 244, 277, 342, 366, 371, 439, 458, 509, 523, 527, 624, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973], provide: [(655, true), (656, true), (657, true), (661, true), (1, true), (653, true), (654, true), (863, true), (864, true), (865, true), (901, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (167, true), (227, true), (244, true), (277, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (527, true), (624, true), (666, true), (760, true), (772, true), (847, true), (867, true), (869, true), (873, true), (897, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (970, true), (973, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 167, 227, 244, 277, 342, 366, 371, 439, 458, 509, 523, 527, 624, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973]
[INFO] [stdout] b all: {102, 105, 143, 153, 167, 227, 244, 277, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [655, 656, 657, 661, 1, 653, 654, 863, 864, 865, 901, 921, 931]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 102, 105, 143, 153, 167, 227, 244, 277, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 760, 772, 847, 863, 864, 865, 867, 869, 873, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 970, 973, 990]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 102, 105, 143, 153, 167, 227, 244, 277, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 760, 772, 847, 863, 864, 865, 867, 869, 873, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 970, 973, 990], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 102, 105, 143, 153, 167, 227, 244, 277, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 760, 772, 847, 863, 864, 865, 867, 869, 873, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 970, 973, 990], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(18, SumMonoid(5890)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(18, SumMonoid(15731)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(3, SumMonoid(2066)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 640), items: [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624], want_response: false }, ItemSet { range: Range(772, 863), items: [772, 847], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: false }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640], want_response: true }, ItemSet { range: Range(656, 772), items: [666, 760], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (167, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (527, true), (624, true), (772, true), (847, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 772), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [947, 953, 954, 970, 973, 666, 760, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [653, 654, 655, 656, 657, 661, 863, 864, 865], provide: [(947, true), (953, true), (954, true), (970, true), (973, true), (666, true), (760, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847, 947, 953, 954, 970, 973, 666, 760, 867, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 666), fp: EncodedCountingMonoid(18, SumMonoid(6428)) }, Fingerprint { range: Range(666, 991), fp: EncodedCountingMonoid(17, SumMonoid(15091)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 655), fp: EncodedCountingMonoid(4, SumMonoid(1948)) }, Fingerprint { range: Range(655, 666), fp: EncodedCountingMonoid(4, SumMonoid(2629)) }, Fingerprint { range: Range(666, 921), fp: EncodedCountingMonoid(4, SumMonoid(3493)) }, Fingerprint { range: Range(921, 991), fp: EncodedCountingMonoid(3, SumMonoid(2842)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 366), fp: EncodedCountingMonoid(9, SumMonoid(1971)) }, Fingerprint { range: Range(366, 655), fp: EncodedCountingMonoid(9, SumMonoid(4457)) }, Fingerprint { range: Range(666, 869), fp: EncodedCountingMonoid(5, SumMonoid(3912)) }, Fingerprint { range: Range(869, 921), fp: EncodedCountingMonoid(4, SumMonoid(3541)) }, Fingerprint { range: Range(921, 954), fp: EncodedCountingMonoid(4, SumMonoid(3751)) }, Fingerprint { range: Range(954, 991), fp: EncodedCountingMonoid(4, SumMonoid(3887)) }], item_sets: [ItemSet { range: Range(655, 666), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(655, 666), items: [655, 656, 657, 661], want_response: false }, ItemSet { range: Range(1, 366), items: [1], want_response: true }, ItemSet { range: Range(366, 654), items: [640, 653], want_response: true }, ItemSet { range: Range(654, 655), items: [654], want_response: true }, ItemSet { range: Range(666, 865), items: [863, 864], want_response: true }, ItemSet { range: Range(865, 869), items: [865], want_response: true }, ItemSet { range: Range(869, 921), items: [901], want_response: true }, ItemSet { range: Range(921, 954), items: [921, 931], want_response: true }, ItemSet { range: Range(954, 991), items: [990], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(1, 366), items: [105, 143, 153, 167, 227, 244, 277, 313, 342], want_response: false }, ItemSet { range: Range(366, 654), items: [366, 371, 439, 458, 509, 523, 527, 624, 640], want_response: false }, ItemSet { range: Range(654, 655), items: [], want_response: false }, ItemSet { range: Range(666, 865), items: [666, 760, 772, 847], want_response: false }, ItemSet { range: Range(865, 869), items: [867], want_response: false }, ItemSet { range: Range(869, 921), items: [869, 873, 897, 902], want_response: false }, ItemSet { range: Range(921, 954), items: [925, 926, 947, 953], want_response: false }, ItemSet { range: Range(954, 991), items: [954, 970, 973, 990], want_response: false }], wants: [655, 656, 657, 661, 1, 653, 654, 863, 864, 865, 901, 921, 931], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973], provide: [(655, true), (656, true), (657, true), (661, true), (1, true), (653, true), (654, true), (863, true), (864, true), (865, true), (901, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(105, true), (143, true), (153, true), (167, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (527, true), (624, true), (666, true), (760, true), (772, true), (847, true), (867, true), (869, true), (873, true), (897, true), (902, true), (925, true), (926, true), (947, true), (953, true), (954, true), (970, true), (973, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973]
[INFO] [stdout] b all: {105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [655, 656, 657, 661, 1, 653, 654, 863, 864, 865, 901, 921, 931]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 760, 772, 847, 863, 864, 865, 867, 869, 873, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 970, 973, 990]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 760, 772, 847, 863, 864, 865, 867, 869, 873, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 970, 973, 990], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 760, 772, 847, 863, 864, 865, 867, 869, 873, 897, 901, 902, 921, 925, 926, 931, 947, 953, 954, 970, 973, 990], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(18, SumMonoid(5890)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(18, SumMonoid(15731)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(3, SumMonoid(2066)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(7, SumMonoid(6259)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 640), items: [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624], want_response: false }, ItemSet { range: Range(772, 863), items: [772, 847], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: false }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640], want_response: true }, ItemSet { range: Range(656, 772), items: [666, 760], want_response: true }, ItemSet { range: Range(863, 873), items: [867, 869], want_response: true }, ItemSet { range: Range(873, 901), items: [873, 897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (167, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (527, true), (624, true), (772, true), (847, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 772), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 873), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(873, 901), items: [], want_response: false }], wants: [947, 953, 954, 970, 973, 666, 760, 867, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [653, 654, 655, 656, 657, 661, 863, 864, 865], provide: [(947, true), (953, true), (954, true), (970, true), (973, true), (666, true), (760, true), (867, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847, 947, 953, 954, 970, 973, 666, 760, 867, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 867, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(18, SumMonoid(5890)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(17, SumMonoid(14864)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(3, SumMonoid(2066)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(6, SumMonoid(5392)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 640), items: [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624], want_response: false }, ItemSet { range: Range(772, 863), items: [772, 847], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: false }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640], want_response: true }, ItemSet { range: Range(656, 772), items: [666, 760], want_response: true }, ItemSet { range: Range(863, 897), items: [869, 873], want_response: true }, ItemSet { range: Range(897, 901), items: [897], want_response: true }], wants: [], provide: [(102, true), (105, true), (143, true), (153, true), (167, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (527, true), (624, true), (772, true), (847, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 772), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 897), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(897, 901), items: [], want_response: false }], wants: [947, 953, 954, 970, 973, 666, 760, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [653, 654, 655, 656, 657, 661, 863, 864, 865], provide: [(947, true), (953, true), (954, true), (970, true), (973, true), (666, true), (760, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847, 947, 953, 954, 970, 973, 666, 760, 869, 873, 897]
[INFO] [stdout] b all: {102, 105, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(17, SumMonoid(5785)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(17, SumMonoid(14864)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(640, 772), fp: EncodedCountingMonoid(3, SumMonoid(2066)) }, Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(6, SumMonoid(5392)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 640), items: [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624], want_response: false }, ItemSet { range: Range(772, 863), items: [772, 847], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 772), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(772, 863), items: [], want_response: false }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(640, 656), items: [640], want_response: true }, ItemSet { range: Range(656, 772), items: [666, 760], want_response: true }, ItemSet { range: Range(863, 897), items: [869, 873], want_response: true }, ItemSet { range: Range(897, 901), items: [897], want_response: true }], wants: [], provide: [(102, true), (143, true), (153, true), (167, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (527, true), (624, true), (772, true), (847, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 772), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 897), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(897, 901), items: [], want_response: false }], wants: [947, 953, 954, 970, 973, 666, 760, 869, 873, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [653, 654, 655, 656, 657, 661, 863, 864, 865], provide: [(947, true), (953, true), (954, true), (970, true), (973, true), (666, true), (760, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 772, 847, 947, 953, 954, 970, 973, 666, 760, 869, 873, 897]
[INFO] [stdout] b all: {102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 772, 847, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 847, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(17, SumMonoid(5785)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(16, SumMonoid(14092)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(6, SumMonoid(5392)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 640), items: [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624], want_response: false }, ItemSet { range: Range(640, 760), items: [640, 666], want_response: true }, ItemSet { range: Range(760, 863), items: [760, 847], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(640, 760), items: [640, 653, 654, 655, 656, 657, 661], want_response: false }, ItemSet { range: Range(760, 863), items: [], want_response: false }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 666, 760, 847], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(863, 897), items: [869, 873], want_response: true }, ItemSet { range: Range(897, 901), items: [897], want_response: true }], wants: [653, 654, 655, 656, 657, 661], provide: [(102, true), (143, true), (153, true), (167, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (527, true), (624, true), (666, true), (760, true), (847, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 897), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(897, 901), items: [], want_response: false }], wants: [947, 953, 954, 970, 973, 869, 873, 897], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [863, 864, 865], provide: [(947, true), (953, true), (954, true), (970, true), (973, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 666, 760, 847, 947, 953, 954, 970, 973, 869, 873, 897]
[INFO] [stdout] b all: {102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 847, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 624), fp: EncodedCountingMonoid(16, SumMonoid(5161)) }, Fingerprint { range: Range(624, 991), fp: EncodedCountingMonoid(16, SumMonoid(13869)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 624), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 947), fp: EncodedCountingMonoid(6, SumMonoid(5392)) }, Fingerprint { range: Range(947, 991), fp: EncodedCountingMonoid(6, SumMonoid(5787)) }], item_sets: [ItemSet { range: Range(1, 624), items: [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527], want_response: false }, ItemSet { range: Range(624, 666), items: [624, 640], want_response: true }, ItemSet { range: Range(666, 863), items: [666, 760], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 947), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(624, 666), items: [640, 653, 654, 655, 656, 657, 661], want_response: false }, ItemSet { range: Range(666, 863), items: [], want_response: false }, ItemSet { range: Range(947, 991), items: [990], want_response: true }], wants: [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 666, 760], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(947, 991), items: [947, 953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(863, 897), items: [869, 873], want_response: true }, ItemSet { range: Range(897, 901), items: [897], want_response: true }], wants: [653, 654, 655, 656, 657, 661], provide: [(102, true), (143, true), (153, true), (167, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (527, true), (624, true), (666, true), (760, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 897), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(897, 901), items: [], want_response: false }], wants: [947, 953, 954, 970, 973, 869, 873, 897], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [863, 864, 865], provide: [(947, true), (953, true), (954, true), (970, true), (973, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 666, 760, 947, 953, 954, 970, 973, 869, 873, 897]
[INFO] [stdout] b all: {102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 869, 873, 897, 902, 925, 926, 947, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 869, 873, 897, 902, 925, 926, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 624), fp: EncodedCountingMonoid(16, SumMonoid(5161)) }, Fingerprint { range: Range(624, 991), fp: EncodedCountingMonoid(15, SumMonoid(12922)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 624), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 953), fp: EncodedCountingMonoid(6, SumMonoid(5392)) }, Fingerprint { range: Range(953, 991), fp: EncodedCountingMonoid(5, SumMonoid(4840)) }], item_sets: [ItemSet { range: Range(1, 624), items: [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527], want_response: false }, ItemSet { range: Range(624, 666), items: [624, 640], want_response: true }, ItemSet { range: Range(666, 863), items: [666, 760], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 953), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(624, 666), items: [640, 653, 654, 655, 656, 657, 661], want_response: false }, ItemSet { range: Range(666, 863), items: [], want_response: false }, ItemSet { range: Range(953, 991), items: [990], want_response: true }], wants: [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 666, 760], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(953, 991), items: [953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(863, 897), items: [869, 873], want_response: true }, ItemSet { range: Range(897, 901), items: [897], want_response: true }], wants: [653, 654, 655, 656, 657, 661], provide: [(102, true), (143, true), (153, true), (167, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (527, true), (624, true), (666, true), (760, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 897), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(897, 901), items: [], want_response: false }], wants: [953, 954, 970, 973, 869, 873, 897], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [863, 864, 865], provide: [(953, true), (954, true), (970, true), (973, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 666, 760, 953, 954, 970, 973, 869, 873, 897]
[INFO] [stdout] b all: {102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 869, 873, 897, 902, 925, 926, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 869, 873, 897, 902, 925, 926, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 527), fp: EncodedCountingMonoid(15, SumMonoid(4634)) }, Fingerprint { range: Range(527, 991), fp: EncodedCountingMonoid(15, SumMonoid(12496)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 527), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(527, 666), fp: EncodedCountingMonoid(3, SumMonoid(1791)) }, Fingerprint { range: Range(863, 926), fp: EncodedCountingMonoid(5, SumMonoid(4466)) }, Fingerprint { range: Range(926, 991), fp: EncodedCountingMonoid(5, SumMonoid(4813)) }], item_sets: [ItemSet { range: Range(1, 527), items: [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523], want_response: false }, ItemSet { range: Range(666, 863), items: [666, 760], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 666), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }], item_sets: [ItemSet { range: Range(666, 863), items: [], want_response: false }, ItemSet { range: Range(901, 926), items: [901, 921], want_response: true }, ItemSet { range: Range(926, 991), items: [931, 990], want_response: true }], wants: [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 666, 760], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(901, 926), items: [902, 925], want_response: false }, ItemSet { range: Range(926, 991), items: [926, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(527, 640), items: [527, 624], want_response: true }, ItemSet { range: Range(640, 656), items: [640], want_response: true }, ItemSet { range: Range(656, 666), items: [], want_response: true }, ItemSet { range: Range(863, 897), items: [869, 873], want_response: true }, ItemSet { range: Range(897, 901), items: [897], want_response: true }], wants: [901, 921, 931], provide: [(102, true), (143, true), (153, true), (167, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (666, true), (760, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(527, 640), items: [], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 666), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 897), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(897, 901), items: [], want_response: false }], wants: [902, 925, 926, 954, 970, 973, 527, 624, 869, 873, 897], provide: [(901, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [653, 654, 655, 656, 657, 661, 863, 864, 865], provide: [(902, true), (925, true), (926, true), (954, true), (970, true), (973, true), (527, true), (624, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 666, 760, 902, 925, 926, 954, 970, 973, 527, 624, 869, 873, 897]
[INFO] [stdout] b all: {102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 869, 873, 897, 902, 925, 926, 954, 970, 973, 990} + [1, 901, 921, 931, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 760, 863, 864, 865, 869, 873, 897, 901, 902, 921, 925, 926, 931, 954, 970, 973, 990]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 760, 863, 864, 865, 869, 873, 897, 901, 902, 921, 925, 926, 931, 954, 970, 973, 990], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 760, 863, 864, 865, 869, 873, 897, 901, 902, 921, 925, 926, 931, 954, 970, 973, 990], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 869, 873, 897, 902, 925, 926, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 624), fp: EncodedCountingMonoid(16, SumMonoid(5161)) }, Fingerprint { range: Range(624, 991), fp: EncodedCountingMonoid(15, SumMonoid(12922)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 624), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 953), fp: EncodedCountingMonoid(6, SumMonoid(5392)) }, Fingerprint { range: Range(953, 991), fp: EncodedCountingMonoid(5, SumMonoid(4840)) }], item_sets: [ItemSet { range: Range(1, 624), items: [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527], want_response: false }, ItemSet { range: Range(624, 666), items: [624, 640], want_response: true }, ItemSet { range: Range(666, 863), items: [666, 760], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 953), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(624, 666), items: [640, 653, 654, 655, 656, 657, 661], want_response: false }, ItemSet { range: Range(666, 863), items: [], want_response: false }, ItemSet { range: Range(953, 991), items: [990], want_response: true }], wants: [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 666, 760], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(953, 991), items: [953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(863, 897), items: [869, 873], want_response: true }, ItemSet { range: Range(897, 901), items: [897], want_response: true }], wants: [653, 654, 655, 656, 657, 661], provide: [(102, true), (143, true), (153, true), (167, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (527, true), (624, true), (666, true), (760, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 897), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(897, 901), items: [], want_response: false }], wants: [953, 954, 970, 973, 869, 873, 897], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [863, 864, 865], provide: [(953, true), (954, true), (970, true), (973, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 666, 760, 953, 954, 970, 973, 869, 873, 897]
[INFO] [stdout] b all: {102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 869, 873, 897, 902, 925, 926, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 869, 873, 897, 902, 925, 926, 953, 954, 970, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 527), fp: EncodedCountingMonoid(15, SumMonoid(4634)) }, Fingerprint { range: Range(527, 991), fp: EncodedCountingMonoid(15, SumMonoid(12476)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 527), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(527, 666), fp: EncodedCountingMonoid(3, SumMonoid(1791)) }, Fingerprint { range: Range(863, 926), fp: EncodedCountingMonoid(5, SumMonoid(4466)) }, Fingerprint { range: Range(926, 991), fp: EncodedCountingMonoid(5, SumMonoid(4793)) }], item_sets: [ItemSet { range: Range(1, 527), items: [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523], want_response: false }, ItemSet { range: Range(666, 863), items: [666, 760], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 656), fp: EncodedCountingMonoid(4, SumMonoid(2602)) }, Fingerprint { range: Range(656, 666), fp: EncodedCountingMonoid(3, SumMonoid(1974)) }, Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }], item_sets: [ItemSet { range: Range(666, 863), items: [], want_response: false }, ItemSet { range: Range(901, 926), items: [901, 921], want_response: true }, ItemSet { range: Range(926, 991), items: [931, 990], want_response: true }], wants: [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 666, 760], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(901, 926), items: [902, 925], want_response: false }, ItemSet { range: Range(926, 991), items: [926, 953, 954, 970, 990], want_response: false }, ItemSet { range: Range(527, 640), items: [527, 624], want_response: true }, ItemSet { range: Range(640, 656), items: [640], want_response: true }, ItemSet { range: Range(656, 666), items: [], want_response: true }, ItemSet { range: Range(863, 897), items: [869, 873], want_response: true }, ItemSet { range: Range(897, 901), items: [897], want_response: true }], wants: [901, 921, 931], provide: [(102, true), (143, true), (153, true), (167, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (666, true), (760, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(527, 640), items: [], want_response: false }, ItemSet { range: Range(640, 656), items: [640, 653, 654, 655], want_response: false }, ItemSet { range: Range(656, 666), items: [656, 657, 661], want_response: false }, ItemSet { range: Range(863, 897), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(897, 901), items: [], want_response: false }], wants: [902, 925, 926, 953, 954, 970, 527, 624, 869, 873, 897], provide: [(901, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [653, 654, 655, 656, 657, 661, 863, 864, 865], provide: [(902, true), (925, true), (926, true), (953, true), (954, true), (970, true), (527, true), (624, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true), (863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 666, 760, 902, 925, 926, 953, 954, 970, 527, 624, 869, 873, 897]
[INFO] [stdout] b all: {102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 869, 873, 897, 902, 925, 926, 953, 954, 970, 990} + [1, 901, 921, 931, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 760, 863, 864, 865, 869, 873, 897, 901, 902, 921, 925, 926, 931, 953, 954, 970, 990]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 760, 863, 864, 865, 869, 873, 897, 901, 902, 921, 925, 926, 931, 953, 954, 970, 990], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 653, 654, 655, 656, 657, 661, 666, 760, 863, 864, 865, 869, 873, 897, 901, 902, 921, 925, 926, 931, 953, 954, 970, 990], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 869, 873, 897, 902, 925, 926, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 624), fp: EncodedCountingMonoid(16, SumMonoid(5161)) }, Fingerprint { range: Range(624, 991), fp: EncodedCountingMonoid(15, SumMonoid(12922)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 624), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 953), fp: EncodedCountingMonoid(6, SumMonoid(5392)) }, Fingerprint { range: Range(953, 991), fp: EncodedCountingMonoid(5, SumMonoid(4840)) }], item_sets: [ItemSet { range: Range(1, 624), items: [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527], want_response: false }, ItemSet { range: Range(624, 666), items: [624, 640], want_response: true }, ItemSet { range: Range(666, 863), items: [666, 760], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 953), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(624, 666), items: [640, 653, 654, 655, 656, 657, 661], want_response: false }, ItemSet { range: Range(666, 863), items: [], want_response: false }, ItemSet { range: Range(953, 991), items: [990], want_response: true }], wants: [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 666, 760], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(953, 991), items: [953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(863, 897), items: [869, 873], want_response: true }, ItemSet { range: Range(897, 901), items: [897], want_response: true }], wants: [653, 654, 655, 656, 657, 661], provide: [(102, true), (143, true), (153, true), (167, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (527, true), (624, true), (666, true), (760, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 897), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(897, 901), items: [], want_response: false }], wants: [953, 954, 970, 973, 869, 873, 897], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [863, 864, 865], provide: [(953, true), (954, true), (970, true), (973, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 666, 760, 953, 954, 970, 973, 869, 873, 897]
[INFO] [stdout] b all: {102, 143, 153, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 869, 873, 897, 902, 925, 926, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 143, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 869, 873, 897, 902, 925, 926, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 624), fp: EncodedCountingMonoid(15, SumMonoid(5008)) }, Fingerprint { range: Range(624, 991), fp: EncodedCountingMonoid(15, SumMonoid(12922)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(624, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 624), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 953), fp: EncodedCountingMonoid(6, SumMonoid(5392)) }, Fingerprint { range: Range(953, 991), fp: EncodedCountingMonoid(5, SumMonoid(4840)) }], item_sets: [ItemSet { range: Range(1, 624), items: [102, 143, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527], want_response: false }, ItemSet { range: Range(624, 666), items: [624, 640], want_response: true }, ItemSet { range: Range(666, 863), items: [666, 760], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 953), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(624, 666), items: [640, 653, 654, 655, 656, 657, 661], want_response: false }, ItemSet { range: Range(666, 863), items: [], want_response: false }, ItemSet { range: Range(953, 991), items: [990], want_response: true }], wants: [102, 143, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 666, 760], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(953, 991), items: [953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(863, 897), items: [869, 873], want_response: true }, ItemSet { range: Range(897, 901), items: [897], want_response: true }], wants: [653, 654, 655, 656, 657, 661], provide: [(102, true), (143, true), (167, true), (227, true), (244, true), (277, true), (313, true), (342, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (527, true), (624, true), (666, true), (760, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 897), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(897, 901), items: [], want_response: false }], wants: [953, 954, 970, 973, 869, 873, 897], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [863, 864, 865], provide: [(953, true), (954, true), (970, true), (973, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 143, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 666, 760, 953, 954, 970, 973, 869, 873, 897]
[INFO] [stdout] b all: {102, 143, 167, 227, 244, 277, 313, 342, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 869, 873, 897, 902, 925, 926, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 869, 873, 897, 902, 925, 926, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(15, SumMonoid(5290)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(14, SumMonoid(12298)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 953), fp: EncodedCountingMonoid(6, SumMonoid(5392)) }, Fingerprint { range: Range(953, 991), fp: EncodedCountingMonoid(5, SumMonoid(4840)) }], item_sets: [ItemSet { range: Range(1, 640), items: [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 523, 527, 624], want_response: false }, ItemSet { range: Range(640, 760), items: [640, 666], want_response: true }, ItemSet { range: Range(760, 863), items: [760], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 953), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(640, 760), items: [640, 653, 654, 655, 656, 657, 661], want_response: false }, ItemSet { range: Range(760, 863), items: [], want_response: false }, ItemSet { range: Range(953, 991), items: [990], want_response: true }], wants: [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 523, 527, 624, 666, 760], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(953, 991), items: [953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(863, 897), items: [869, 873], want_response: true }, ItemSet { range: Range(897, 901), items: [897], want_response: true }], wants: [653, 654, 655, 656, 657, 661], provide: [(102, true), (143, true), (167, true), (227, true), (244, true), (277, true), (313, true), (366, true), (371, true), (439, true), (458, true), (509, true), (523, true), (527, true), (624, true), (666, true), (760, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 897), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(897, 901), items: [], want_response: false }], wants: [953, 954, 970, 973, 869, 873, 897], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [863, 864, 865], provide: [(953, true), (954, true), (970, true), (973, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 523, 527, 624, 666, 760, 953, 954, 970, 973, 869, 873, 897]
[INFO] [stdout] b all: {102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 523, 527, 624, 640, 666, 760, 869, 873, 897, 902, 925, 926, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 624, 640, 666, 760, 869, 873, 897, 902, 925, 926, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(14, SumMonoid(4767)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(14, SumMonoid(12298)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 953), fp: EncodedCountingMonoid(6, SumMonoid(5392)) }, Fingerprint { range: Range(953, 991), fp: EncodedCountingMonoid(5, SumMonoid(4840)) }], item_sets: [ItemSet { range: Range(1, 640), items: [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 624], want_response: false }, ItemSet { range: Range(640, 760), items: [640, 666], want_response: true }, ItemSet { range: Range(760, 863), items: [760], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 953), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(640, 760), items: [640, 653, 654, 655, 656, 657, 661], want_response: false }, ItemSet { range: Range(760, 863), items: [], want_response: false }, ItemSet { range: Range(953, 991), items: [990], want_response: true }], wants: [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 624, 666, 760], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(953, 991), items: [953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(863, 897), items: [869, 873], want_response: true }, ItemSet { range: Range(897, 901), items: [897], want_response: true }], wants: [653, 654, 655, 656, 657, 661], provide: [(102, true), (143, true), (167, true), (227, true), (244, true), (277, true), (313, true), (366, true), (371, true), (439, true), (458, true), (509, true), (527, true), (624, true), (666, true), (760, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 897), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(897, 901), items: [], want_response: false }], wants: [953, 954, 970, 973, 869, 873, 897], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [863, 864, 865], provide: [(953, true), (954, true), (970, true), (973, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 624, 666, 760, 953, 954, 970, 973, 869, 873, 897]
[INFO] [stdout] b all: {102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 624, 640, 666, 760, 869, 873, 897, 902, 925, 926, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 624, 640, 666, 869, 873, 897, 902, 925, 926, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(14, SumMonoid(4767)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(13, SumMonoid(11538)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 953), fp: EncodedCountingMonoid(6, SumMonoid(5392)) }, Fingerprint { range: Range(953, 991), fp: EncodedCountingMonoid(5, SumMonoid(4840)) }], item_sets: [ItemSet { range: Range(1, 640), items: [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 624], want_response: false }, ItemSet { range: Range(640, 863), items: [640, 666], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 953), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(640, 863), items: [640, 653, 654, 655, 656, 657, 661], want_response: false }, ItemSet { range: Range(953, 991), items: [990], want_response: true }], wants: [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 624, 666], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(953, 991), items: [953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(863, 897), items: [869, 873], want_response: true }, ItemSet { range: Range(897, 901), items: [897], want_response: true }], wants: [653, 654, 655, 656, 657, 661], provide: [(102, true), (143, true), (167, true), (227, true), (244, true), (277, true), (313, true), (366, true), (371, true), (439, true), (458, true), (509, true), (527, true), (624, true), (666, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 897), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(897, 901), items: [], want_response: false }], wants: [953, 954, 970, 973, 869, 873, 897], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [863, 864, 865], provide: [(953, true), (954, true), (970, true), (973, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 624, 666, 953, 954, 970, 973, 869, 873, 897]
[INFO] [stdout] b all: {102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 624, 640, 666, 869, 873, 897, 902, 925, 926, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 640, 666, 869, 873, 897, 902, 925, 926, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(13, SumMonoid(4143)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(13, SumMonoid(11538)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 953), fp: EncodedCountingMonoid(6, SumMonoid(5392)) }, Fingerprint { range: Range(953, 991), fp: EncodedCountingMonoid(5, SumMonoid(4840)) }], item_sets: [ItemSet { range: Range(1, 640), items: [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527], want_response: false }, ItemSet { range: Range(640, 863), items: [640, 666], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 953), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(640, 863), items: [640, 653, 654, 655, 656, 657, 661], want_response: false }, ItemSet { range: Range(953, 991), items: [990], want_response: true }], wants: [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 666], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(953, 991), items: [953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(863, 897), items: [869, 873], want_response: true }, ItemSet { range: Range(897, 901), items: [897], want_response: true }], wants: [653, 654, 655, 656, 657, 661], provide: [(102, true), (143, true), (167, true), (227, true), (244, true), (277, true), (313, true), (366, true), (371, true), (439, true), (458, true), (509, true), (527, true), (666, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 897), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(897, 901), items: [], want_response: false }], wants: [953, 954, 970, 973, 869, 873, 897], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [863, 864, 865], provide: [(953, true), (954, true), (970, true), (973, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 666, 953, 954, 970, 973, 869, 873, 897]
[INFO] [stdout] b all: {102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 640, 666, 869, 873, 897, 902, 925, 926, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 640, 666, 869, 873, 897, 902, 925, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(13, SumMonoid(4143)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(12, SumMonoid(10612)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 953), fp: EncodedCountingMonoid(5, SumMonoid(4466)) }, Fingerprint { range: Range(953, 991), fp: EncodedCountingMonoid(5, SumMonoid(4840)) }], item_sets: [ItemSet { range: Range(1, 640), items: [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527], want_response: false }, ItemSet { range: Range(640, 863), items: [640, 666], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 953), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(640, 863), items: [640, 653, 654, 655, 656, 657, 661], want_response: false }, ItemSet { range: Range(953, 991), items: [990], want_response: true }], wants: [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 666], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(953, 991), items: [953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(863, 897), items: [869, 873], want_response: true }, ItemSet { range: Range(897, 901), items: [897], want_response: true }, ItemSet { range: Range(901, 953), items: [902, 925], want_response: true }], wants: [653, 654, 655, 656, 657, 661], provide: [(102, true), (143, true), (167, true), (227, true), (244, true), (277, true), (313, true), (366, true), (371, true), (439, true), (458, true), (509, true), (527, true), (666, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 897), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(897, 901), items: [], want_response: false }, ItemSet { range: Range(901, 953), items: [901, 921, 931], want_response: false }], wants: [953, 954, 970, 973, 869, 873, 897, 902, 925], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [863, 864, 865, 901, 921, 931], provide: [(953, true), (954, true), (970, true), (973, true), (869, true), (873, true), (897, true), (902, true), (925, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(863, true), (864, true), (865, true), (901, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 666, 953, 954, 970, 973, 869, 873, 897, 902, 925]
[INFO] [stdout] b all: {102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 640, 666, 869, 873, 897, 902, 925, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 640, 653, 654, 655, 656, 657, 661, 666, 863, 864, 865, 869, 873, 897, 901, 902, 921, 925, 931, 953, 954, 970, 973, 990]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 640, 653, 654, 655, 656, 657, 661, 666, 863, 864, 865, 869, 873, 897, 901, 902, 921, 925, 931, 953, 954, 970, 973, 990], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 640, 653, 654, 655, 656, 657, 661, 666, 863, 864, 865, 869, 873, 897, 901, 902, 921, 925, 931, 953, 954, 970, 973, 990], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 640, 666, 869, 873, 897, 902, 925, 926, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(13, SumMonoid(4143)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(13, SumMonoid(11538)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 953), fp: EncodedCountingMonoid(6, SumMonoid(5392)) }, Fingerprint { range: Range(953, 991), fp: EncodedCountingMonoid(5, SumMonoid(4840)) }], item_sets: [ItemSet { range: Range(1, 640), items: [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527], want_response: false }, ItemSet { range: Range(640, 863), items: [640, 666], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 953), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(640, 863), items: [640, 653, 654, 655, 656, 657, 661], want_response: false }, ItemSet { range: Range(953, 991), items: [990], want_response: true }], wants: [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 666], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(953, 991), items: [953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(863, 897), items: [869, 873], want_response: true }, ItemSet { range: Range(897, 901), items: [897], want_response: true }], wants: [653, 654, 655, 656, 657, 661], provide: [(102, true), (143, true), (167, true), (227, true), (244, true), (277, true), (313, true), (366, true), (371, true), (439, true), (458, true), (509, true), (527, true), (666, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 897), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(897, 901), items: [], want_response: false }], wants: [953, 954, 970, 973, 869, 873, 897], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [863, 864, 865], provide: [(953, true), (954, true), (970, true), (973, true), (869, true), (873, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 666, 953, 954, 970, 973, 869, 873, 897]
[INFO] [stdout] b all: {102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 640, 666, 869, 873, 897, 902, 925, 926, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 640, 666, 869, 873, 902, 925, 926, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 640), fp: EncodedCountingMonoid(13, SumMonoid(4143)) }, Fingerprint { range: Range(640, 991), fp: EncodedCountingMonoid(12, SumMonoid(10641)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(640, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 640), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 953), fp: EncodedCountingMonoid(5, SumMonoid(4495)) }, Fingerprint { range: Range(953, 991), fp: EncodedCountingMonoid(5, SumMonoid(4840)) }], item_sets: [ItemSet { range: Range(1, 640), items: [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527], want_response: false }, ItemSet { range: Range(640, 863), items: [640, 666], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 953), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(640, 863), items: [640, 653, 654, 655, 656, 657, 661], want_response: false }, ItemSet { range: Range(953, 991), items: [990], want_response: true }], wants: [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 666], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(953, 991), items: [953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(863, 901), items: [869, 873], want_response: true }], wants: [653, 654, 655, 656, 657, 661], provide: [(102, true), (143, true), (167, true), (227, true), (244, true), (277, true), (313, true), (366, true), (371, true), (439, true), (458, true), (509, true), (527, true), (666, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 901), items: [863, 864, 865], want_response: false }], wants: [953, 954, 970, 973, 869, 873], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [863, 864, 865], provide: [(953, true), (954, true), (970, true), (973, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 666, 953, 954, 970, 973, 869, 873]
[INFO] [stdout] b all: {102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 640, 666, 869, 873, 902, 925, 926, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 640, 869, 873, 902, 925, 926, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 527), fp: EncodedCountingMonoid(12, SumMonoid(3616)) }, Fingerprint { range: Range(527, 991), fp: EncodedCountingMonoid(12, SumMonoid(10502)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 527), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 953), fp: EncodedCountingMonoid(5, SumMonoid(4495)) }, Fingerprint { range: Range(953, 991), fp: EncodedCountingMonoid(5, SumMonoid(4840)) }], item_sets: [ItemSet { range: Range(1, 527), items: [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509], want_response: false }, ItemSet { range: Range(527, 863), items: [527, 640], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 953), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(527, 863), items: [640, 653, 654, 655, 656, 657, 661], want_response: false }, ItemSet { range: Range(953, 991), items: [990], want_response: true }], wants: [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(953, 991), items: [953, 954, 970, 973, 990], want_response: false }, ItemSet { range: Range(863, 901), items: [869, 873], want_response: true }], wants: [653, 654, 655, 656, 657, 661], provide: [(102, true), (143, true), (167, true), (227, true), (244, true), (277, true), (313, true), (366, true), (371, true), (439, true), (458, true), (509, true), (527, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 901), items: [863, 864, 865], want_response: false }], wants: [953, 954, 970, 973, 869, 873], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [863, 864, 865], provide: [(953, true), (954, true), (970, true), (973, true), (869, true), (873, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(863, true), (864, true), (865, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 953, 954, 970, 973, 869, 873]
[INFO] [stdout] b all: {102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 640, 869, 873, 902, 925, 926, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990}
[INFO] [stdout] b items: {102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 640, 869, 902, 925, 926, 953, 954, 970, 973, 990}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(15, SumMonoid(10912)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 527), fp: EncodedCountingMonoid(12, SumMonoid(3616)) }, Fingerprint { range: Range(527, 991), fp: EncodedCountingMonoid(11, SumMonoid(9629)) }], item_sets: [ItemSet { range: Range(991, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(527, 863), fp: EncodedCountingMonoid(7, SumMonoid(4576)) }, Fingerprint { range: Range(863, 991), fp: EncodedCountingMonoid(7, SumMonoid(6335)) }], item_sets: [ItemSet { range: Range(1, 527), items: [1], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(863, 954), fp: EncodedCountingMonoid(5, SumMonoid(4575)) }, Fingerprint { range: Range(954, 991), fp: EncodedCountingMonoid(4, SumMonoid(3887)) }], item_sets: [ItemSet { range: Range(1, 527), items: [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509], want_response: false }, ItemSet { range: Range(527, 863), items: [527, 640], want_response: true }], wants: [1], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(863, 901), fp: EncodedCountingMonoid(3, SumMonoid(2592)) }, Fingerprint { range: Range(901, 954), fp: EncodedCountingMonoid(3, SumMonoid(2753)) }], item_sets: [ItemSet { range: Range(527, 863), items: [640, 653, 654, 655, 656, 657, 661], want_response: false }, ItemSet { range: Range(954, 991), items: [990], want_response: true }], wants: [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(954, 991), items: [954, 970, 973, 990], want_response: false }, ItemSet { range: Range(863, 901), items: [869], want_response: true }, ItemSet { range: Range(901, 926), items: [902, 925], want_response: true }, ItemSet { range: Range(926, 954), items: [926, 953], want_response: true }], wants: [653, 654, 655, 656, 657, 661], provide: [(102, true), (143, true), (167, true), (227, true), (244, true), (277, true), (313, true), (366, true), (371, true), (439, true), (458, true), (509, true), (527, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(863, 901), items: [863, 864, 865], want_response: false }, ItemSet { range: Range(901, 926), items: [901, 921], want_response: false }, ItemSet { range: Range(926, 954), items: [931], want_response: false }], wants: [954, 970, 973, 869, 902, 925, 926, 953], provide: [(653, true), (654, true), (655, true), (656, true), (657, true), (661, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [863, 864, 865, 901, 921, 931], provide: [(954, true), (970, true), (973, true), (869, true), (902, true), (925, true), (926, true), (953, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(863, true), (864, true), (865, true), (901, true), (921, true), (931, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931, 990} + [102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 954, 970, 973, 869, 902, 925, 926, 953]
[INFO] [stdout] b all: {102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 640, 869, 902, 925, 926, 953, 954, 970, 973, 990} + [1, 653, 654, 655, 656, 657, 661, 863, 864, 865, 901, 921, 931]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 869, 901, 902, 921, 925, 926, 931, 953, 954, 970, 973, 990]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 102, 143, 167, 227, 244, 277, 313, 366, 371, 439, 458, 509, 527, 640, 653, 654, 655, 656, 657, 661, 863, 864, 865, 869, 901, 902, 921, 925, 926, 931, 953, 954, 970, 973, 990], true true
[INFO] [stdout] 
[WARN] too many lines in the log, truncating it
