[INFO] fetching crate unionize 0.3.0...
[INFO] testing unionize-0.3.0 against 1.75.0 for beta-1.76-1
[INFO] extracting crate unionize 0.3.0 into /workspace/builds/worker-6-tc1/source
[INFO] validating manifest of crates.io crate unionize 0.3.0 on toolchain 1.75.0
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1.75.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-6-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.75.0" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded nom v2.2.1
[INFO] [stderr]   Downloaded prettyplease v0.2.5
[INFO] [stderr]   Downloaded serde_cbor v0.10.2
[INFO] [stderr]   Downloaded procinfo v0.4.2
[INFO] [stderr]   Downloaded sise v0.8.0
[INFO] [stderr]   Downloaded xs233 v0.3.0
[INFO] [stderr]   Downloaded xs233-sys v0.2.0
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e7893cdb763c34eb904e5a6091d6b7d4c3c3d80e33597eab51929bab5dd7056c
[INFO] running `Command { std: "docker" "start" "-a" "e7893cdb763c34eb904e5a6091d6b7d4c3c3d80e33597eab51929bab5dd7056c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e7893cdb763c34eb904e5a6091d6b7d4c3c3d80e33597eab51929bab5dd7056c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e7893cdb763c34eb904e5a6091d6b7d4c3c3d80e33597eab51929bab5dd7056c", kill_on_drop: false }`
[INFO] [stdout] e7893cdb763c34eb904e5a6091d6b7d4c3c3d80e33597eab51929bab5dd7056c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 8894132e5639fb72e107f0492108d141433a41617fb6be9a133ccc65b14589a5
[INFO] running `Command { std: "docker" "start" "-a" "8894132e5639fb72e107f0492108d141433a41617fb6be9a133ccc65b14589a5", kill_on_drop: false }`
[INFO] [stderr]    Compiling libc v0.2.141
[INFO] [stderr]    Compiling proc-macro2 v1.0.56
[INFO] [stderr]    Compiling quote v1.0.27
[INFO] [stderr]    Compiling unicode-ident v1.0.8
[INFO] [stderr]    Compiling memchr v2.5.0
[INFO] [stderr]    Compiling bitflags v1.3.2
[INFO] [stderr]    Compiling glob v0.3.1
[INFO] [stderr]    Compiling prettyplease v0.2.5
[INFO] [stderr]    Compiling log v0.4.17
[INFO] [stderr]    Compiling minimal-lexical v0.2.1
[INFO] [stderr]    Compiling typenum v1.16.0
[INFO] [stderr]    Compiling version_check v0.9.4
[INFO] [stderr]    Compiling clang-sys v1.6.1
[INFO] [stderr]    Compiling libloading v0.7.4
[INFO] [stderr]    Compiling nom v7.1.3
[INFO] [stderr]    Compiling generic-array v0.14.7
[INFO] [stderr]    Compiling syn v2.0.16
[INFO] [stderr]    Compiling either v1.8.1
[INFO] [stderr]    Compiling lazy_static v1.4.0
[INFO] [stderr]    Compiling io-lifetimes v1.0.10
[INFO] [stderr]    Compiling regex-syntax v0.7.1
[INFO] [stderr]    Compiling bindgen v0.65.1
[INFO] [stderr]    Compiling which v4.4.0
[INFO] [stderr]    Compiling getrandom v0.2.9
[INFO] [stderr]    Compiling rand_core v0.6.4
[INFO] [stderr]    Compiling rustix v0.37.11
[INFO] [stderr]    Compiling shlex v1.1.0
[INFO] [stderr]    Compiling lazycell v1.3.0
[INFO] [stderr]    Compiling rustc-hash v1.1.0
[INFO] [stderr]    Compiling peeking_take_while v0.1.2
[INFO] [stderr]    Compiling semver-parser v0.7.0
[INFO] [stderr]    Compiling semver v0.9.0
[INFO] [stderr]    Compiling linux-raw-sys v0.3.1
[INFO] [stderr]    Compiling libm v0.2.6
[INFO] [stderr]    Compiling cexpr v0.6.0
[INFO] [stderr]    Compiling cc v1.0.79
[INFO] [stderr]    Compiling ppv-lite86 v0.2.17
[INFO] [stderr]    Compiling autocfg v1.1.0
[INFO] [stderr]    Compiling rand_chacha v0.3.1
[INFO] [stderr]    Compiling num-traits v0.2.15
[INFO] [stderr]    Compiling regex v1.8.1
[INFO] [stderr]    Compiling rustc_version v0.2.3
[INFO] [stderr]    Compiling fastrand v1.9.0
[INFO] [stderr]    Compiling serde v1.0.164
[INFO] [stderr]    Compiling procinfo v0.4.2
[INFO] [stderr]    Compiling rand v0.8.5
[INFO] [stderr]    Compiling block-buffer v0.10.4
[INFO] [stderr]    Compiling crypto-common v0.1.6
[INFO] [stderr]    Compiling wait-timeout v0.2.0
[INFO] [stderr]    Compiling quick-error v1.2.3
[INFO] [stderr]    Compiling bit-vec v0.6.3
[INFO] [stderr]    Compiling fnv v1.0.7
[INFO] [stderr]    Compiling digest v0.10.6
[INFO] [stderr]    Compiling bit-set v0.5.3
[INFO] [stderr]    Compiling rand_xorshift v0.3.0
[INFO] [stderr]    Compiling tempfile v3.5.0
[INFO] [stderr]    Compiling half v1.8.2
[INFO] [stderr]    Compiling rusty-fork v0.3.0
[INFO] [stderr]    Compiling unarray v0.1.4
[INFO] [stderr]    Compiling quick-error v2.0.1
[INFO] [stderr]    Compiling subtle v2.5.0
[INFO] [stderr]    Compiling regex-syntax v0.6.29
[INFO] [stderr]    Compiling hex v0.4.3
[INFO] [stderr]    Compiling nom v2.2.1
[INFO] [stderr]    Compiling cpufeatures v0.2.7
[INFO] [stderr]    Compiling sha2 v0.10.6
[INFO] [stderr]    Compiling sise v0.8.0
[INFO] [stderr]    Compiling serde_derive v1.0.164
[INFO] [stderr]    Compiling proptest v1.1.0
[INFO] [stderr]    Compiling xs233-sys v0.2.0
[INFO] [stderr]    Compiling serde_cbor v0.10.2
[INFO] [stderr]    Compiling xs233 v0.3.0
[INFO] [stderr]    Compiling unionize v0.3.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished dev [unoptimized + debuginfo] target(s) in 18.20s
[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" "8894132e5639fb72e107f0492108d141433a41617fb6be9a133ccc65b14589a5", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8894132e5639fb72e107f0492108d141433a41617fb6be9a133ccc65b14589a5", kill_on_drop: false }`
[INFO] [stdout] 8894132e5639fb72e107f0492108d141433a41617fb6be9a133ccc65b14589a5
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] cb3844d57596d4905c36523451115db44cbbae884088f4935c10b59603e9559a
[INFO] running `Command { std: "docker" "start" "-a" "cb3844d57596d4905c36523451115db44cbbae884088f4935c10b59603e9559a", kill_on_drop: false }`
[INFO] [stderr]    Compiling unionize v0.3.0 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 2.57s
[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" "cb3844d57596d4905c36523451115db44cbbae884088f4935c10b59603e9559a", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "cb3844d57596d4905c36523451115db44cbbae884088f4935c10b59603e9559a", kill_on_drop: false }`
[INFO] [stdout] cb3844d57596d4905c36523451115db44cbbae884088f4935c10b59603e9559a
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=warn" "-e" "RUSTDOCFLAGS=--cap-lints=warn" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:2788e3201cd34a07e3172128adcd8b3090168a8e3bcc40d7c032b9dda1df7d1c" "/opt/rustwide/cargo-home/bin/cargo" "+1.75.0" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 04d2a13b05ff6063740b10b7273c542c03897cf6ca0108d204b120c506124c12
[INFO] running `Command { std: "docker" "start" "-a" "04d2a13b05ff6063740b10b7273c542c03897cf6ca0108d204b120c506124c12", kill_on_drop: false }`
[INFO] [stderr]     Finished test [unoptimized + debuginfo] target(s) in 0.04s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v2.2.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 1`
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/unionize-8c01d6288bed480f)
[INFO] [stdout] 
[INFO] [stdout] running 12 tests
[INFO] [stdout] test monoid::timestamped::tests::timestamped_is_protocolmonoid ... ok
[INFO] [stdout] test query::item_filter::tests::repro_atttempt ... ok
[INFO] [stdout] test query::item_filter::tests::base_test ... ok
[INFO] [stdout] test monoid::mulhash_xs233::tests::serialize_correctness ... ok
[INFO] [stdout] test item::le_byte_array::tests::serialize_correctness ... ok
[INFO] [stdout] test range::tests::serialize_correctness ... ok
[INFO] [stdout] test query::split::test::split_correctness ... ok
[INFO] [stdout] test query::simple::test::simple_correctness ... ok
[INFO] [stdout] test protocol::tests::serialize_correctness ... ok
[INFO] [stdout] test protocol::tests::serialize_correctness_stream ... 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: {1, 4, 15, 20, 51, 59, 69, 74, 102, 105, 119, 144, 165, 173, 174, 186, 189, 200, 208, 214, 227, 231, 233, 246, 270, 272, 275, 314, 318, 342, 375, 378, 380, 401, 431, 455, 463, 471, 477, 483, 489, 493, 506, 519, 542, 554, 569, 577, 581, 583, 584, 595, 602, 603, 613, 624, 633, 635, 637, 650, 657, 674, 676, 703, 705, 712, 744, 747, 753, 754, 779, 796, 813, 820, 822, 829, 834, 844, 856, 881, 904, 908, 909, 918, 924, 939, 952, 953, 965, 972, 981}
[INFO] [stdout] b items: {2, 35, 54, 61, 71, 77, 90, 94, 102, 154, 171, 199, 218, 250, 259, 267, 279, 289, 304, 330, 332, 398, 400, 413, 416, 435, 469, 477, 517, 576, 589, 592, 595, 660, 701, 706, 728, 749, 787, 836, 851, 854, 860, 890, 891, 926, 928, 975, 982}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 982), fp: EncodedCountingMonoid(91, SumMonoid(46627)) }], item_sets: [ItemSet { range: Range(982, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 416), fp: EncodedCountingMonoid(24, SumMonoid(4849)) }, Fingerprint { range: Range(416, 982), fp: EncodedCountingMonoid(24, SumMonoid(17008)) }], item_sets: [ItemSet { range: Range(982, 1), items: [982], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 200), fp: EncodedCountingMonoid(17, SumMonoid(1650)) }, Fingerprint { range: Range(200, 416), fp: EncodedCountingMonoid(17, SumMonoid(4884)) }, Fingerprint { range: Range(416, 703), fp: EncodedCountingMonoid(29, SumMonoid(16376)) }, Fingerprint { range: Range(703, 982), fp: EncodedCountingMonoid(28, SumMonoid(23717)) }], item_sets: [], wants: [982], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 90), fp: EncodedCountingMonoid(6, SumMonoid(300)) }, Fingerprint { range: Range(90, 200), fp: EncodedCountingMonoid(6, SumMonoid(810)) }, Fingerprint { range: Range(200, 304), fp: EncodedCountingMonoid(6, SumMonoid(1562)) }, Fingerprint { range: Range(304, 416), fp: EncodedCountingMonoid(6, SumMonoid(2177)) }, Fingerprint { range: Range(416, 589), fp: EncodedCountingMonoid(6, SumMonoid(2890)) }, Fingerprint { range: Range(589, 703), fp: EncodedCountingMonoid(5, SumMonoid(3137)) }, Fingerprint { range: Range(703, 860), fp: EncodedCountingMonoid(7, SumMonoid(5511)) }, Fingerprint { range: Range(860, 982), fp: EncodedCountingMonoid(6, SumMonoid(5470)) }], item_sets: [], wants: [], provide: [(982, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 51), fp: EncodedCountingMonoid(4, SumMonoid(40)) }, Fingerprint { range: Range(51, 90), fp: EncodedCountingMonoid(4, SumMonoid(253)) }, Fingerprint { range: Range(90, 173), fp: EncodedCountingMonoid(5, SumMonoid(635)) }, Fingerprint { range: Range(173, 200), fp: EncodedCountingMonoid(4, SumMonoid(722)) }, Fingerprint { range: Range(200, 233), fp: EncodedCountingMonoid(5, SumMonoid(1080)) }, Fingerprint { range: Range(233, 304), fp: EncodedCountingMonoid(5, SumMonoid(1296)) }, Fingerprint { range: Range(304, 378), fp: EncodedCountingMonoid(4, SumMonoid(1349)) }, Fingerprint { range: Range(378, 416), fp: EncodedCountingMonoid(3, SumMonoid(1159)) }, Fingerprint { range: Range(416, 519), fp: EncodedCountingMonoid(9, SumMonoid(4268)) }, Fingerprint { range: Range(519, 589), fp: EncodedCountingMonoid(8, SumMonoid(4509)) }, Fingerprint { range: Range(589, 635), fp: EncodedCountingMonoid(6, SumMonoid(3670)) }, Fingerprint { range: Range(635, 703), fp: EncodedCountingMonoid(6, SumMonoid(3929)) }, Fingerprint { range: Range(703, 796), fp: EncodedCountingMonoid(8, SumMonoid(5897)) }, Fingerprint { range: Range(796, 860), fp: EncodedCountingMonoid(8, SumMonoid(6614)) }, Fingerprint { range: Range(860, 939), fp: EncodedCountingMonoid(6, SumMonoid(5444)) }, Fingerprint { range: Range(939, 982), fp: EncodedCountingMonoid(6, SumMonoid(5762)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(90, 154), fp: EncodedCountingMonoid(3, SumMonoid(286)) }, Fingerprint { range: Range(233, 279), fp: EncodedCountingMonoid(3, SumMonoid(776)) }, Fingerprint { range: Range(416, 477), fp: EncodedCountingMonoid(3, SumMonoid(1320)) }, Fingerprint { range: Range(860, 926), fp: EncodedCountingMonoid(3, SumMonoid(2641)) }], item_sets: [ItemSet { range: Range(1, 51), items: [2, 35], want_response: true }, ItemSet { range: Range(51, 71), items: [54, 61], want_response: true }, ItemSet { range: Range(71, 90), items: [71, 77], want_response: true }, ItemSet { range: Range(154, 173), items: [154, 171], want_response: true }, ItemSet { range: Range(173, 200), items: [199], want_response: true }, ItemSet { range: Range(200, 233), items: [218], want_response: true }, ItemSet { range: Range(279, 304), items: [279, 289], want_response: true }, ItemSet { range: Range(304, 332), items: [304, 330], want_response: true }, ItemSet { range: Range(332, 378), items: [332], want_response: true }, ItemSet { range: Range(378, 413), items: [398, 400], want_response: true }, ItemSet { range: Range(413, 416), items: [413], want_response: true }, ItemSet { range: Range(477, 519), items: [477, 517], want_response: true }, ItemSet { range: Range(519, 589), items: [576], want_response: true }, ItemSet { range: Range(589, 595), items: [589, 592], want_response: true }, ItemSet { range: Range(595, 635), items: [595], want_response: true }, ItemSet { range: Range(635, 703), items: [660, 701], want_response: true }, ItemSet { range: Range(703, 749), items: [706, 728], want_response: true }, ItemSet { range: Range(749, 796), items: [749, 787], want_response: true }, ItemSet { range: Range(796, 854), items: [836, 851], want_response: true }, ItemSet { range: Range(854, 860), items: [854], want_response: true }, ItemSet { range: Range(926, 939), items: [926, 928], want_response: true }, ItemSet { range: Range(939, 982), items: [975], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(233, 272), fp: EncodedCountingMonoid(3, SumMonoid(749)) }, Fingerprint { range: Range(860, 909), fp: EncodedCountingMonoid(3, SumMonoid(2693)) }, Fingerprint { range: Range(909, 926), fp: EncodedCountingMonoid(3, SumMonoid(2751)) }], item_sets: [ItemSet { range: Range(1, 51), items: [1, 4, 15, 20], want_response: false }, ItemSet { range: Range(51, 71), items: [51, 59, 69], want_response: false }, ItemSet { range: Range(71, 90), items: [74], want_response: false }, ItemSet { range: Range(154, 173), items: [165], want_response: false }, ItemSet { range: Range(173, 200), items: [173, 174, 186, 189], want_response: false }, ItemSet { range: Range(200, 233), items: [200, 208, 214, 227, 231], want_response: false }, ItemSet { range: Range(279, 304), items: [], want_response: false }, ItemSet { range: Range(304, 332), items: [314, 318], want_response: false }, ItemSet { range: Range(332, 378), items: [342, 375], want_response: false }, ItemSet { range: Range(378, 413), items: [378, 380, 401], want_response: false }, ItemSet { range: Range(413, 416), items: [], want_response: false }, ItemSet { range: Range(477, 519), items: [477, 483, 489, 493, 506], want_response: false }, ItemSet { range: Range(519, 589), items: [519, 542, 554, 569, 577, 581, 583, 584], want_response: false }, ItemSet { range: Range(589, 595), items: [], want_response: false }, ItemSet { range: Range(595, 635), items: [595, 602, 603, 613, 624, 633], want_response: false }, ItemSet { range: Range(635, 703), items: [635, 637, 650, 657, 674, 676], want_response: false }, ItemSet { range: Range(703, 749), items: [703, 705, 712, 744, 747], want_response: false }, ItemSet { range: Range(749, 796), items: [753, 754, 779], want_response: false }, ItemSet { range: Range(796, 854), items: [796, 813, 820, 822, 829, 834, 844], want_response: false }, ItemSet { range: Range(854, 860), items: [856], want_response: false }, ItemSet { range: Range(926, 939), items: [], want_response: false }, ItemSet { range: Range(939, 982), items: [939, 952, 953, 965, 972, 981], want_response: false }, ItemSet { range: Range(90, 119), items: [102, 105], want_response: true }, ItemSet { range: Range(119, 154), items: [119, 144], want_response: true }, ItemSet { range: Range(272, 279), items: [272, 275], want_response: true }, ItemSet { range: Range(416, 463), items: [431, 455], want_response: true }, ItemSet { range: Range(463, 477), items: [463, 471], want_response: true }], wants: [2, 35, 54, 61, 71, 77, 154, 171, 199, 218, 279, 289, 304, 330, 332, 398, 400, 413, 517, 576, 589, 592, 660, 701, 706, 728, 749, 787, 836, 851, 854, 926, 928, 975], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(90, 119), items: [90, 94, 102], want_response: false }, ItemSet { range: Range(119, 154), items: [], want_response: false }, ItemSet { range: Range(272, 279), items: [], want_response: false }, ItemSet { range: Range(416, 463), items: [416, 435], want_response: false }, ItemSet { range: Range(463, 477), items: [469], want_response: false }, ItemSet { range: Range(233, 267), items: [250, 259], want_response: true }, ItemSet { range: Range(267, 272), items: [267], want_response: true }, ItemSet { range: Range(860, 891), items: [860, 890], want_response: true }, ItemSet { range: Range(891, 909), items: [891], want_response: true }, ItemSet { range: Range(909, 926), items: [], want_response: true }], wants: [1, 4, 15, 20, 51, 59, 69, 74, 165, 173, 174, 186, 189, 200, 208, 214, 227, 231, 314, 318, 342, 375, 378, 380, 401, 483, 489, 493, 506, 519, 542, 554, 569, 577, 581, 583, 584, 602, 603, 613, 624, 633, 635, 637, 650, 657, 674, 676, 703, 705, 712, 744, 747, 753, 754, 779, 796, 813, 820, 822, 829, 834, 844, 856, 939, 952, 953, 965, 972, 981, 105, 119, 144, 272, 275, 431, 455, 463, 471], provide: [(2, true), (35, true), (54, true), (61, true), (71, true), (77, true), (154, true), (171, true), (199, true), (218, true), (279, true), (289, true), (304, true), (330, true), (332, true), (398, true), (400, true), (413, true), (517, true), (576, true), (589, true), (592, true), (660, true), (701, true), (706, true), (728, true), (749, true), (787, true), (836, true), (851, true), (854, true), (926, true), (928, true), (975, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(233, 267), items: [233, 246], want_response: false }, ItemSet { range: Range(267, 272), items: [270], want_response: false }, ItemSet { range: Range(860, 891), items: [881], want_response: false }, ItemSet { range: Range(891, 909), items: [904, 908], want_response: false }, ItemSet { range: Range(909, 926), items: [909, 918, 924], want_response: false }], wants: [90, 94, 416, 435, 469, 250, 259, 267, 860, 890, 891], provide: [(1, true), (4, true), (15, true), (20, true), (51, true), (59, true), (69, true), (74, true), (165, true), (173, true), (174, true), (186, true), (189, true), (200, true), (208, true), (214, true), (227, true), (231, true), (314, true), (318, true), (342, true), (375, true), (378, true), (380, true), (401, true), (483, true), (489, true), (493, true), (506, true), (519, true), (542, true), (554, true), (569, true), (577, true), (581, true), (583, true), (584, true), (602, true), (603, true), (613, true), (624, true), (633, true), (635, true), (637, true), (650, true), (657, true), (674, true), (676, true), (703, true), (705, true), (712, true), (744, true), (747, true), (753, true), (754, true), (779, true), (796, true), (813, true), (820, true), (822, true), (829, true), (834, true), (844, true), (856, true), (939, true), (952, true), (953, true), (965, true), (972, true), (981, true), (105, true), (119, true), (144, true), (272, true), (275, true), (431, true), (455, true), (463, true), (471, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [233, 246, 270, 881, 904, 908, 909, 918, 924], provide: [(90, true), (94, true), (416, true), (435, true), (469, true), (250, true), (259, true), (267, true), (860, true), (890, true), (891, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(233, true), (246, true), (270, true), (881, true), (904, true), (908, true), (909, true), (918, true), (924, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 4, 15, 20, 51, 59, 69, 74, 102, 105, 119, 144, 165, 173, 174, 186, 189, 200, 208, 214, 227, 231, 233, 246, 270, 272, 275, 314, 318, 342, 375, 378, 380, 401, 431, 455, 463, 471, 477, 483, 489, 493, 506, 519, 542, 554, 569, 577, 581, 583, 584, 595, 602, 603, 613, 624, 633, 635, 637, 650, 657, 674, 676, 703, 705, 712, 744, 747, 753, 754, 779, 796, 813, 820, 822, 829, 834, 844, 856, 881, 904, 908, 909, 918, 924, 939, 952, 953, 965, 972, 981} + [982, 2, 35, 54, 61, 71, 77, 154, 171, 199, 218, 279, 289, 304, 330, 332, 398, 400, 413, 517, 576, 589, 592, 660, 701, 706, 728, 749, 787, 836, 851, 854, 926, 928, 975, 90, 94, 416, 435, 469, 250, 259, 267, 860, 890, 891]
[INFO] [stdout] b all: {2, 35, 54, 61, 71, 77, 90, 94, 102, 154, 171, 199, 218, 250, 259, 267, 279, 289, 304, 330, 332, 398, 400, 413, 416, 435, 469, 477, 517, 576, 589, 592, 595, 660, 701, 706, 728, 749, 787, 836, 851, 854, 860, 890, 891, 926, 928, 975, 982} + [1, 4, 15, 20, 51, 59, 69, 74, 165, 173, 174, 186, 189, 200, 208, 214, 227, 231, 314, 318, 342, 375, 378, 380, 401, 483, 489, 493, 506, 519, 542, 554, 569, 577, 581, 583, 584, 602, 603, 613, 624, 633, 635, 637, 650, 657, 674, 676, 703, 705, 712, 744, 747, 753, 754, 779, 796, 813, 820, 822, 829, 834, 844, 856, 939, 952, 953, 965, 972, 981, 105, 119, 144, 272, 275, 431, 455, 463, 471, 233, 246, 270, 881, 904, 908, 909, 918, 924]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 2, 4, 15, 20, 35, 51, 54, 59, 61, 69, 71, 74, 77, 90, 94, 102, 105, 119, 144, 154, 165, 171, 173, 174, 186, 189, 199, 200, 208, 214, 218, 227, 231, 233, 246, 250, 259, 267, 270, 272, 275, 279, 289, 304, 314, 318, 330, 332, 342, 375, 378, 380, 398, 400, 401, 413, 416, 431, 435, 455, 463, 469, 471, 477, 483, 489, 493, 506, 517, 519, 542, 554, 569, 576, 577, 581, 583, 584, 589, 592, 595, 602, 603, 613, 624, 633, 635, 637, 650, 657, 660, 674, 676, 701, 703, 705, 706, 712, 728, 744, 747, 749, 753, 754, 779, 787, 796, 813, 820, 822, 829, 834, 836, 844, 851, 854, 856, 860, 881, 890, 891, 904, 908, 909, 918, 924, 926, 928, 939, 952, 953, 965, 972, 975, 981, 982]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 2, 4, 15, 20, 35, 51, 54, 59, 61, 69, 71, 74, 77, 90, 94, 102, 105, 119, 144, 154, 165, 171, 173, 174, 186, 189, 199, 200, 208, 214, 218, 227, 231, 233, 246, 250, 259, 267, 270, 272, 275, 279, 289, 304, 314, 318, 330, 332, 342, 375, 378, 380, 398, 400, 401, 413, 416, 431, 435, 455, 463, 469, 471, 477, 483, 489, 493, 506, 517, 519, 542, 554, 569, 576, 577, 581, 583, 584, 589, 592, 595, 602, 603, 613, 624, 633, 635, 637, 650, 657, 660, 674, 676, 701, 703, 705, 706, 712, 728, 744, 747, 749, 753, 754, 779, 787, 796, 813, 820, 822, 829, 834, 836, 844, 851, 854, 856, 860, 881, 890, 891, 904, 908, 909, 918, 924, 926, 928, 939, 952, 953, 965, 972, 975, 981, 982], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 2, 4, 15, 20, 35, 51, 54, 59, 61, 69, 71, 74, 77, 90, 94, 102, 105, 119, 144, 154, 165, 171, 173, 174, 186, 189, 199, 200, 208, 214, 218, 227, 231, 233, 246, 250, 259, 267, 270, 272, 275, 279, 289, 304, 314, 318, 330, 332, 342, 375, 378, 380, 398, 400, 401, 413, 416, 431, 435, 455, 463, 469, 471, 477, 483, 489, 493, 506, 517, 519, 542, 554, 569, 576, 577, 581, 583, 584, 589, 592, 595, 602, 603, 613, 624, 633, 635, 637, 650, 657, 660, 674, 676, 701, 703, 705, 706, 712, 728, 744, 747, 749, 753, 754, 779, 787, 796, 813, 820, 822, 829, 834, 836, 844, 851, 854, 856, 860, 881, 890, 891, 904, 908, 909, 918, 924, 926, 928, 939, 952, 953, 965, 972, 975, 981, 982], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 10, 30, 35, 63, 83, 104, 111, 124, 125, 137, 163, 186, 204, 235, 254, 263, 280, 308, 345, 346, 351, 353, 358, 396, 398, 407, 443, 448, 452, 460, 466, 471, 483, 493, 504, 508, 513, 522, 530, 542, 557, 560, 570, 585, 590, 593, 598, 602, 606, 624, 630, 643, 649, 662, 665, 666, 681, 686, 715, 742, 752, 773, 774, 797, 798, 806, 810, 821, 832, 836, 837, 867, 868, 878, 882, 891, 907, 910, 911, 912, 925, 932, 943, 946, 955, 958, 975, 976, 992, 996, 997}
[INFO] [stdout] b items: {3, 6, 21, 52, 89, 102, 113, 149, 158, 184, 220, 230, 231, 244, 283, 295, 296, 312, 318, 321, 324, 330, 387, 390, 413, 422, 424, 434, 438, 439, 444, 453, 458, 468, 479, 483, 572, 576, 577, 600, 616, 632, 654, 665, 673, 675, 682, 700, 715, 716, 739, 749, 765, 798, 799, 811, 824, 825, 837, 844, 845, 849, 863, 870, 872, 885, 888, 893, 901, 913, 918, 931, 937, 938, 948, 972, 980, 981, 984}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 998), fp: EncodedCountingMonoid(92, SumMonoid(52586)) }], item_sets: [ItemSet { range: Range(998, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 616), fp: EncodedCountingMonoid(40, SumMonoid(12738)) }, Fingerprint { range: Range(616, 998), fp: EncodedCountingMonoid(39, SumMonoid(32087)) }], item_sets: [ItemSet { range: Range(998, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 398), fp: EncodedCountingMonoid(25, SumMonoid(4865)) }, Fingerprint { range: Range(398, 616), fp: EncodedCountingMonoid(25, SumMonoid(12901)) }, Fingerprint { range: Range(616, 837), fp: EncodedCountingMonoid(21, SumMonoid(15362)) }, Fingerprint { range: Range(837, 998), fp: EncodedCountingMonoid(21, SumMonoid(19458)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 231), fp: EncodedCountingMonoid(12, SumMonoid(1327)) }, Fingerprint { range: Range(231, 398), fp: EncodedCountingMonoid(12, SumMonoid(3731)) }, Fingerprint { range: Range(398, 458), fp: EncodedCountingMonoid(8, SumMonoid(3467)) }, Fingerprint { range: Range(458, 616), fp: EncodedCountingMonoid(8, SumMonoid(4213)) }, Fingerprint { range: Range(616, 716), fp: EncodedCountingMonoid(9, SumMonoid(6012)) }, Fingerprint { range: Range(716, 837), fp: EncodedCountingMonoid(9, SumMonoid(7026)) }, Fingerprint { range: Range(837, 913), fp: EncodedCountingMonoid(11, SumMonoid(9547)) }, Fingerprint { range: Range(913, 998), fp: EncodedCountingMonoid(10, SumMonoid(9502)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 111), fp: EncodedCountingMonoid(7, SumMonoid(326)) }, Fingerprint { range: Range(111, 231), fp: EncodedCountingMonoid(7, SumMonoid(1050)) }, Fingerprint { range: Range(231, 346), fp: EncodedCountingMonoid(6, SumMonoid(1685)) }, Fingerprint { range: Range(346, 398), fp: EncodedCountingMonoid(5, SumMonoid(1804)) }, Fingerprint { range: Range(398, 448), fp: EncodedCountingMonoid(3, SumMonoid(1248)) }, Fingerprint { range: Range(458, 542), fp: EncodedCountingMonoid(10, SumMonoid(4950)) }, Fingerprint { range: Range(542, 616), fp: EncodedCountingMonoid(10, SumMonoid(5803)) }, Fingerprint { range: Range(616, 665), fp: EncodedCountingMonoid(5, SumMonoid(3208)) }, Fingerprint { range: Range(665, 716), fp: EncodedCountingMonoid(5, SumMonoid(3413)) }, Fingerprint { range: Range(716, 806), fp: EncodedCountingMonoid(6, SumMonoid(4636)) }, Fingerprint { range: Range(806, 837), fp: EncodedCountingMonoid(5, SumMonoid(4105)) }, Fingerprint { range: Range(837, 891), fp: EncodedCountingMonoid(5, SumMonoid(4332)) }, Fingerprint { range: Range(891, 913), fp: EncodedCountingMonoid(5, SumMonoid(4531)) }, Fingerprint { range: Range(913, 975), fp: EncodedCountingMonoid(6, SumMonoid(5659)) }, Fingerprint { range: Range(975, 998), fp: EncodedCountingMonoid(5, SumMonoid(4936)) }], item_sets: [ItemSet { range: Range(448, 458), items: [448, 452], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 52), fp: EncodedCountingMonoid(3, SumMonoid(30)) }, Fingerprint { range: Range(52, 111), fp: EncodedCountingMonoid(3, SumMonoid(243)) }, Fingerprint { range: Range(111, 184), fp: EncodedCountingMonoid(3, SumMonoid(420)) }, Fingerprint { range: Range(184, 231), fp: EncodedCountingMonoid(3, SumMonoid(634)) }, Fingerprint { range: Range(231, 312), fp: EncodedCountingMonoid(5, SumMonoid(1349)) }, Fingerprint { range: Range(312, 346), fp: EncodedCountingMonoid(5, SumMonoid(1605)) }, Fingerprint { range: Range(398, 438), fp: EncodedCountingMonoid(4, SumMonoid(1693)) }, Fingerprint { range: Range(438, 448), fp: EncodedCountingMonoid(3, SumMonoid(1321)) }, Fingerprint { range: Range(665, 682), fp: EncodedCountingMonoid(3, SumMonoid(2013)) }, Fingerprint { range: Range(682, 716), fp: EncodedCountingMonoid(3, SumMonoid(2097)) }, Fingerprint { range: Range(716, 765), fp: EncodedCountingMonoid(3, SumMonoid(2204)) }, Fingerprint { range: Range(765, 806), fp: EncodedCountingMonoid(3, SumMonoid(2362)) }, Fingerprint { range: Range(837, 870), fp: EncodedCountingMonoid(5, SumMonoid(4238)) }, Fingerprint { range: Range(870, 891), fp: EncodedCountingMonoid(4, SumMonoid(3515)) }, Fingerprint { range: Range(913, 938), fp: EncodedCountingMonoid(4, SumMonoid(3699)) }, Fingerprint { range: Range(938, 975), fp: EncodedCountingMonoid(3, SumMonoid(2858)) }], item_sets: [ItemSet { range: Range(448, 458), items: [453], want_response: false }, ItemSet { range: Range(346, 398), items: [387, 390], want_response: true }, ItemSet { range: Range(458, 479), items: [458, 468], want_response: true }, ItemSet { range: Range(479, 542), items: [479, 483], want_response: true }, ItemSet { range: Range(542, 577), items: [572, 576], want_response: true }, ItemSet { range: Range(577, 616), items: [577, 600], want_response: true }, ItemSet { range: Range(616, 654), items: [616, 632], want_response: true }, ItemSet { range: Range(654, 665), items: [654], want_response: true }, ItemSet { range: Range(806, 825), items: [811, 824], want_response: true }, ItemSet { range: Range(825, 837), items: [825], want_response: true }, ItemSet { range: Range(891, 913), items: [893, 901], want_response: true }, ItemSet { range: Range(975, 984), items: [980, 981], want_response: true }, ItemSet { range: Range(984, 998), items: [984], want_response: true }], wants: [448, 452], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(111, 137), fp: EncodedCountingMonoid(3, SumMonoid(360)) }, Fingerprint { range: Range(231, 280), fp: EncodedCountingMonoid(3, SumMonoid(752)) }], item_sets: [ItemSet { range: Range(346, 398), items: [346, 351, 353, 358, 396], want_response: false }, ItemSet { range: Range(458, 479), items: [460, 466, 471], want_response: false }, ItemSet { range: Range(479, 542), items: [483, 493, 504, 508, 513, 522, 530], want_response: false }, ItemSet { range: Range(542, 577), items: [542, 557, 560, 570], want_response: false }, ItemSet { range: Range(577, 616), items: [585, 590, 593, 598, 602, 606], want_response: false }, ItemSet { range: Range(616, 654), items: [624, 630, 643, 649], want_response: false }, ItemSet { range: Range(654, 665), items: [662], want_response: false }, ItemSet { range: Range(806, 825), items: [806, 810, 821], want_response: false }, ItemSet { range: Range(825, 837), items: [832, 836], want_response: false }, ItemSet { range: Range(891, 913), items: [891, 907, 910, 911, 912], want_response: false }, ItemSet { range: Range(975, 984), items: [975, 976], want_response: false }, ItemSet { range: Range(984, 998), items: [992, 996, 997], want_response: false }, ItemSet { range: Range(1, 30), items: [1, 10], want_response: true }, ItemSet { range: Range(30, 52), items: [30, 35], want_response: true }, ItemSet { range: Range(52, 104), items: [63, 83], want_response: true }, ItemSet { range: Range(104, 111), items: [104], want_response: true }, ItemSet { range: Range(137, 184), items: [137, 163], want_response: true }, ItemSet { range: Range(184, 231), items: [186, 204], want_response: true }, ItemSet { range: Range(280, 312), items: [280, 308], want_response: true }, ItemSet { range: Range(312, 346), items: [345], want_response: true }, ItemSet { range: Range(398, 438), items: [398, 407], want_response: true }, ItemSet { range: Range(438, 448), items: [443], want_response: true }, ItemSet { range: Range(665, 681), items: [665, 666], want_response: true }, ItemSet { range: Range(681, 682), items: [681], want_response: true }, ItemSet { range: Range(682, 716), items: [686, 715], want_response: true }, ItemSet { range: Range(716, 765), items: [742, 752], want_response: true }, ItemSet { range: Range(765, 797), items: [773, 774], want_response: true }, ItemSet { range: Range(797, 806), items: [797, 798], want_response: true }, ItemSet { range: Range(837, 868), items: [837, 867], want_response: true }, ItemSet { range: Range(868, 870), items: [868], want_response: true }, ItemSet { range: Range(870, 891), items: [878, 882], want_response: true }, ItemSet { range: Range(913, 938), items: [925, 932], want_response: true }, ItemSet { range: Range(938, 955), items: [943, 946], want_response: true }, ItemSet { range: Range(955, 975), items: [955, 958], want_response: true }], wants: [453, 387, 390, 458, 468, 479, 572, 576, 577, 600, 616, 632, 654, 811, 824, 825, 893, 901, 980, 981, 984], provide: [(448, true), (452, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(1, 30), items: [3, 6, 21], want_response: false }, ItemSet { range: Range(30, 52), items: [], want_response: false }, ItemSet { range: Range(52, 104), items: [52, 89, 102], want_response: false }, ItemSet { range: Range(104, 111), items: [], want_response: false }, ItemSet { range: Range(137, 184), items: [149, 158], want_response: false }, ItemSet { range: Range(184, 231), items: [184, 220, 230], want_response: false }, ItemSet { range: Range(280, 312), items: [283, 295, 296], want_response: false }, ItemSet { range: Range(312, 346), items: [312, 318, 321, 324, 330], want_response: false }, ItemSet { range: Range(398, 438), items: [413, 422, 424, 434], want_response: false }, ItemSet { range: Range(438, 448), items: [438, 439, 444], want_response: false }, ItemSet { range: Range(665, 681), items: [665, 673, 675], want_response: false }, ItemSet { range: Range(681, 682), items: [], want_response: false }, ItemSet { range: Range(682, 716), items: [682, 700, 715], want_response: false }, ItemSet { range: Range(716, 765), items: [716, 739, 749], want_response: false }, ItemSet { range: Range(765, 797), items: [765], want_response: false }, ItemSet { range: Range(797, 806), items: [798, 799], want_response: false }, ItemSet { range: Range(837, 868), items: [837, 844, 845, 849, 863], want_response: false }, ItemSet { range: Range(868, 870), items: [], want_response: false }, ItemSet { range: Range(870, 891), items: [870, 872, 885, 888], want_response: false }, ItemSet { range: Range(913, 938), items: [913, 918, 931, 937], want_response: false }, ItemSet { range: Range(938, 955), items: [938, 948], want_response: false }, ItemSet { range: Range(955, 975), items: [972], want_response: false }, ItemSet { range: Range(111, 137), items: [113], want_response: true }, ItemSet { range: Range(231, 280), items: [231, 244], want_response: true }], wants: [346, 351, 353, 358, 396, 460, 466, 471, 493, 504, 508, 513, 522, 530, 542, 557, 560, 570, 585, 590, 593, 598, 602, 606, 624, 630, 643, 649, 662, 806, 810, 821, 832, 836, 891, 907, 910, 911, 912, 975, 976, 992, 996, 997, 1, 10, 30, 35, 63, 83, 104, 137, 163, 186, 204, 280, 308, 345, 398, 407, 443, 666, 681, 686, 742, 752, 773, 774, 797, 867, 868, 878, 882, 925, 932, 943, 946, 955, 958], provide: [(453, true), (387, true), (390, true), (458, true), (468, true), (479, true), (572, true), (576, true), (577, true), (600, true), (616, true), (632, true), (654, true), (811, true), (824, true), (825, true), (893, true), (901, true), (980, true), (981, true), (984, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(111, 137), items: [111, 124, 125], want_response: false }, ItemSet { range: Range(231, 280), items: [235, 254, 263], want_response: false }], wants: [3, 6, 21, 52, 89, 102, 149, 158, 184, 220, 230, 283, 295, 296, 312, 318, 321, 324, 330, 413, 422, 424, 434, 438, 439, 444, 673, 675, 682, 700, 716, 739, 749, 765, 799, 844, 845, 849, 863, 870, 872, 885, 888, 913, 918, 931, 937, 938, 948, 972, 113, 231, 244], provide: [(346, true), (351, true), (353, true), (358, true), (396, true), (460, true), (466, true), (471, true), (493, true), (504, true), (508, true), (513, true), (522, true), (530, true), (542, true), (557, true), (560, true), (570, true), (585, true), (590, true), (593, true), (598, true), (602, true), (606, true), (624, true), (630, true), (643, true), (649, true), (662, true), (806, true), (810, true), (821, true), (832, true), (836, true), (891, true), (907, true), (910, true), (911, true), (912, true), (975, true), (976, true), (992, true), (996, true), (997, true), (1, true), (10, true), (30, true), (35, true), (63, true), (83, true), (104, true), (137, true), (163, true), (186, true), (204, true), (280, true), (308, true), (345, true), (398, true), (407, true), (443, true), (666, true), (681, true), (686, true), (742, true), (752, true), (773, true), (774, true), (797, true), (867, true), (868, true), (878, true), (882, true), (925, true), (932, true), (943, true), (946, true), (955, true), (958, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [111, 124, 125, 235, 254, 263], provide: [(3, true), (6, true), (21, true), (52, true), (89, true), (102, true), (149, true), (158, true), (184, true), (220, true), (230, true), (283, true), (295, true), (296, true), (312, true), (318, true), (321, true), (324, true), (330, true), (413, true), (422, true), (424, true), (434, true), (438, true), (439, true), (444, true), (673, true), (675, true), (682, true), (700, true), (716, true), (739, true), (749, true), (765, true), (799, true), (844, true), (845, true), (849, true), (863, true), (870, true), (872, true), (885, true), (888, true), (913, true), (918, true), (931, true), (937, true), (938, true), (948, true), (972, true), (113, true), (231, true), (244, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(111, true), (124, true), (125, true), (235, true), (254, true), (263, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 10, 30, 35, 63, 83, 104, 111, 124, 125, 137, 163, 186, 204, 235, 254, 263, 280, 308, 345, 346, 351, 353, 358, 396, 398, 407, 443, 448, 452, 460, 466, 471, 483, 493, 504, 508, 513, 522, 530, 542, 557, 560, 570, 585, 590, 593, 598, 602, 606, 624, 630, 643, 649, 662, 665, 666, 681, 686, 715, 742, 752, 773, 774, 797, 798, 806, 810, 821, 832, 836, 837, 867, 868, 878, 882, 891, 907, 910, 911, 912, 925, 932, 943, 946, 955, 958, 975, 976, 992, 996, 997} + [453, 387, 390, 458, 468, 479, 572, 576, 577, 600, 616, 632, 654, 811, 824, 825, 893, 901, 980, 981, 984, 3, 6, 21, 52, 89, 102, 149, 158, 184, 220, 230, 283, 295, 296, 312, 318, 321, 324, 330, 413, 422, 424, 434, 438, 439, 444, 673, 675, 682, 700, 716, 739, 749, 765, 799, 844, 845, 849, 863, 870, 872, 885, 888, 913, 918, 931, 937, 938, 948, 972, 113, 231, 244]
[INFO] [stdout] b all: {3, 6, 21, 52, 89, 102, 113, 149, 158, 184, 220, 230, 231, 244, 283, 295, 296, 312, 318, 321, 324, 330, 387, 390, 413, 422, 424, 434, 438, 439, 444, 453, 458, 468, 479, 483, 572, 576, 577, 600, 616, 632, 654, 665, 673, 675, 682, 700, 715, 716, 739, 749, 765, 798, 799, 811, 824, 825, 837, 844, 845, 849, 863, 870, 872, 885, 888, 893, 901, 913, 918, 931, 937, 938, 948, 972, 980, 981, 984} + [448, 452, 346, 351, 353, 358, 396, 460, 466, 471, 493, 504, 508, 513, 522, 530, 542, 557, 560, 570, 585, 590, 593, 598, 602, 606, 624, 630, 643, 649, 662, 806, 810, 821, 832, 836, 891, 907, 910, 911, 912, 975, 976, 992, 996, 997, 1, 10, 30, 35, 63, 83, 104, 137, 163, 186, 204, 280, 308, 345, 398, 407, 443, 666, 681, 686, 742, 752, 773, 774, 797, 867, 868, 878, 882, 925, 932, 943, 946, 955, 958, 111, 124, 125, 235, 254, 263]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 3, 6, 10, 21, 30, 35, 52, 63, 83, 89, 102, 104, 111, 113, 124, 125, 137, 149, 158, 163, 184, 186, 204, 220, 230, 231, 235, 244, 254, 263, 280, 283, 295, 296, 308, 312, 318, 321, 324, 330, 345, 346, 351, 353, 358, 387, 390, 396, 398, 407, 413, 422, 424, 434, 438, 439, 443, 444, 448, 452, 453, 458, 460, 466, 468, 471, 479, 483, 493, 504, 508, 513, 522, 530, 542, 557, 560, 570, 572, 576, 577, 585, 590, 593, 598, 600, 602, 606, 616, 624, 630, 632, 643, 649, 654, 662, 665, 666, 673, 675, 681, 682, 686, 700, 715, 716, 739, 742, 749, 752, 765, 773, 774, 797, 798, 799, 806, 810, 811, 821, 824, 825, 832, 836, 837, 844, 845, 849, 863, 867, 868, 870, 872, 878, 882, 885, 888, 891, 893, 901, 907, 910, 911, 912, 913, 918, 925, 931, 932, 937, 938, 943, 946, 948, 955, 958, 972, 975, 976, 980, 981, 984, 992, 996, 997]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 3, 6, 10, 21, 30, 35, 52, 63, 83, 89, 102, 104, 111, 113, 124, 125, 137, 149, 158, 163, 184, 186, 204, 220, 230, 231, 235, 244, 254, 263, 280, 283, 295, 296, 308, 312, 318, 321, 324, 330, 345, 346, 351, 353, 358, 387, 390, 396, 398, 407, 413, 422, 424, 434, 438, 439, 443, 444, 448, 452, 453, 458, 460, 466, 468, 471, 479, 483, 493, 504, 508, 513, 522, 530, 542, 557, 560, 570, 572, 576, 577, 585, 590, 593, 598, 600, 602, 606, 616, 624, 630, 632, 643, 649, 654, 662, 665, 666, 673, 675, 681, 682, 686, 700, 715, 716, 739, 742, 749, 752, 765, 773, 774, 797, 798, 799, 806, 810, 811, 821, 824, 825, 832, 836, 837, 844, 845, 849, 863, 867, 868, 870, 872, 878, 882, 885, 888, 891, 893, 901, 907, 910, 911, 912, 913, 918, 925, 931, 932, 937, 938, 943, 946, 948, 955, 958, 972, 975, 976, 980, 981, 984, 992, 996, 997], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 3, 6, 10, 21, 30, 35, 52, 63, 83, 89, 102, 104, 111, 113, 124, 125, 137, 149, 158, 163, 184, 186, 204, 220, 230, 231, 235, 244, 254, 263, 280, 283, 295, 296, 308, 312, 318, 321, 324, 330, 345, 346, 351, 353, 358, 387, 390, 396, 398, 407, 413, 422, 424, 434, 438, 439, 443, 444, 448, 452, 453, 458, 460, 466, 468, 471, 479, 483, 493, 504, 508, 513, 522, 530, 542, 557, 560, 570, 572, 576, 577, 585, 590, 593, 598, 600, 602, 606, 616, 624, 630, 632, 643, 649, 654, 662, 665, 666, 673, 675, 681, 682, 686, 700, 715, 716, 739, 742, 749, 752, 765, 773, 774, 797, 798, 799, 806, 810, 811, 821, 824, 825, 832, 836, 837, 844, 845, 849, 863, 867, 868, 870, 872, 878, 882, 885, 888, 891, 893, 901, 907, 910, 911, 912, 913, 918, 925, 931, 932, 937, 938, 943, 946, 948, 955, 958, 972, 975, 976, 980, 981, 984, 992, 996, 997], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {2, 30, 46, 68, 70, 96, 136, 138, 141, 162, 181, 186, 202, 217, 234, 244, 245, 257, 291, 293, 309, 327, 332, 359, 379, 427, 430, 441, 450, 463, 465, 467, 468, 477, 482, 490, 507, 532, 550, 556, 558, 596, 606, 612, 623, 625, 656, 682, 692, 709, 739, 740, 749, 758, 775, 791, 801, 807, 810, 819, 831, 839, 847, 852, 853, 860, 883, 886, 896, 906, 917, 921, 936, 937, 941, 945, 949, 953, 957, 963, 974}
[INFO] [stdout] b items: {38, 60, 73, 75, 77, 82, 178, 217, 242, 244, 246, 250, 304, 308, 430, 457, 574, 586, 595, 744, 753, 785, 819, 854, 860, 898, 931, 988, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 975), fp: EncodedCountingMonoid(81, SumMonoid(45344)) }], item_sets: [ItemSet { range: Range(975, 2), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(2, 430), fp: EncodedCountingMonoid(14, SumMonoid(2394)) }, Fingerprint { range: Range(430, 975), fp: EncodedCountingMonoid(13, SumMonoid(9286)) }], item_sets: [ItemSet { range: Range(975, 2), items: [988, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 217), fp: EncodedCountingMonoid(13, SumMonoid(1458)) }, Fingerprint { range: Range(217, 430), fp: EncodedCountingMonoid(13, SumMonoid(3914)) }, Fingerprint { range: Range(430, 775), fp: EncodedCountingMonoid(28, SumMonoid(16123)) }, Fingerprint { range: Range(775, 975), fp: EncodedCountingMonoid(27, SumMonoid(23849)) }], item_sets: [], wants: [988, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(2, 77), fp: EncodedCountingMonoid(4, SumMonoid(246)) }, Fingerprint { range: Range(77, 217), fp: EncodedCountingMonoid(3, SumMonoid(337)) }, Fingerprint { range: Range(217, 250), fp: EncodedCountingMonoid(4, SumMonoid(949)) }, Fingerprint { range: Range(250, 430), fp: EncodedCountingMonoid(3, SumMonoid(862)) }, Fingerprint { range: Range(430, 595), fp: EncodedCountingMonoid(4, SumMonoid(2047)) }, Fingerprint { range: Range(595, 775), fp: EncodedCountingMonoid(3, SumMonoid(2092)) }, Fingerprint { range: Range(775, 860), fp: EncodedCountingMonoid(3, SumMonoid(2458)) }, Fingerprint { range: Range(860, 975), fp: EncodedCountingMonoid(3, SumMonoid(2689)) }], item_sets: [], wants: [], provide: [(988, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 68), fp: EncodedCountingMonoid(3, SumMonoid(78)) }, Fingerprint { range: Range(77, 162), fp: EncodedCountingMonoid(4, SumMonoid(511)) }, Fingerprint { range: Range(162, 217), fp: EncodedCountingMonoid(4, SumMonoid(731)) }, Fingerprint { range: Range(250, 332), fp: EncodedCountingMonoid(5, SumMonoid(1477)) }, Fingerprint { range: Range(332, 430), fp: EncodedCountingMonoid(4, SumMonoid(1497)) }, Fingerprint { range: Range(430, 482), fp: EncodedCountingMonoid(8, SumMonoid(3661)) }, Fingerprint { range: Range(482, 595), fp: EncodedCountingMonoid(7, SumMonoid(3675)) }, Fingerprint { range: Range(595, 692), fp: EncodedCountingMonoid(7, SumMonoid(4400)) }, Fingerprint { range: Range(692, 775), fp: EncodedCountingMonoid(6, SumMonoid(4387)) }, Fingerprint { range: Range(775, 831), fp: EncodedCountingMonoid(6, SumMonoid(4803)) }, Fingerprint { range: Range(831, 860), fp: EncodedCountingMonoid(5, SumMonoid(4222)) }, Fingerprint { range: Range(860, 937), fp: EncodedCountingMonoid(8, SumMonoid(7205)) }, Fingerprint { range: Range(937, 975), fp: EncodedCountingMonoid(8, SumMonoid(7619)) }], item_sets: [ItemSet { range: Range(68, 77), items: [68, 70], want_response: true }, ItemSet { range: Range(217, 244), items: [217, 234], want_response: true }, ItemSet { range: Range(244, 250), items: [244, 245], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(68, 77), items: [73, 75], want_response: false }, ItemSet { range: Range(217, 244), items: [217, 242], want_response: false }, ItemSet { range: Range(244, 250), items: [244, 246], want_response: false }, ItemSet { range: Range(2, 68), items: [38, 60], want_response: true }, ItemSet { range: Range(77, 162), items: [77, 82], want_response: true }, ItemSet { range: Range(162, 217), items: [178], want_response: true }, ItemSet { range: Range(250, 308), items: [250, 304], want_response: true }, ItemSet { range: Range(308, 332), items: [308], want_response: true }, ItemSet { range: Range(332, 430), items: [], want_response: true }, ItemSet { range: Range(430, 482), items: [430, 457], want_response: true }, ItemSet { range: Range(482, 595), items: [574, 586], want_response: true }, ItemSet { range: Range(595, 692), items: [595], want_response: true }, ItemSet { range: Range(692, 775), items: [744, 753], want_response: true }, ItemSet { range: Range(775, 831), items: [785, 819], want_response: true }, ItemSet { range: Range(831, 860), items: [854], want_response: true }, ItemSet { range: Range(860, 931), items: [860, 898], want_response: true }, ItemSet { range: Range(931, 937), items: [931], want_response: true }, ItemSet { range: Range(937, 975), items: [], want_response: true }], wants: [68, 70, 234, 245], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(2, 68), items: [2, 30, 46], want_response: false }, ItemSet { range: Range(77, 162), items: [96, 136, 138, 141], want_response: false }, ItemSet { range: Range(162, 217), items: [162, 181, 186, 202], want_response: false }, ItemSet { range: Range(250, 308), items: [257, 291, 293], want_response: false }, ItemSet { range: Range(308, 332), items: [309, 327], want_response: false }, ItemSet { range: Range(332, 430), items: [332, 359, 379, 427], want_response: false }, ItemSet { range: Range(430, 482), items: [430, 441, 450, 463, 465, 467, 468, 477], want_response: false }, ItemSet { range: Range(482, 595), items: [482, 490, 507, 532, 550, 556, 558], want_response: false }, ItemSet { range: Range(595, 692), items: [596, 606, 612, 623, 625, 656, 682], want_response: false }, ItemSet { range: Range(692, 775), items: [692, 709, 739, 740, 749, 758], want_response: false }, ItemSet { range: Range(775, 831), items: [775, 791, 801, 807, 810, 819], want_response: false }, ItemSet { range: Range(831, 860), items: [831, 839, 847, 852, 853], want_response: false }, ItemSet { range: Range(860, 931), items: [860, 883, 886, 896, 906, 917, 921], want_response: false }, ItemSet { range: Range(931, 937), items: [936], want_response: false }, ItemSet { range: Range(937, 975), items: [937, 941, 945, 949, 953, 957, 963, 974], want_response: false }], wants: [73, 75, 242, 246, 38, 60, 77, 82, 178, 250, 304, 308, 457, 574, 586, 595, 744, 753, 785, 854, 898, 931], provide: [(68, true), (70, true), (234, true), (245, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [2, 30, 46, 96, 136, 138, 141, 162, 181, 186, 202, 257, 291, 293, 309, 327, 332, 359, 379, 427, 441, 450, 463, 465, 467, 468, 477, 482, 490, 507, 532, 550, 556, 558, 596, 606, 612, 623, 625, 656, 682, 692, 709, 739, 740, 749, 758, 775, 791, 801, 807, 810, 831, 839, 847, 852, 853, 883, 886, 896, 906, 917, 921, 936, 937, 941, 945, 949, 953, 957, 963, 974], provide: [(73, true), (75, true), (242, true), (246, true), (38, true), (60, true), (77, true), (82, true), (178, true), (250, true), (304, true), (308, true), (457, true), (574, true), (586, true), (595, true), (744, true), (753, true), (785, true), (854, true), (898, true), (931, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(2, true), (30, true), (46, true), (96, true), (136, true), (138, true), (141, true), (162, true), (181, true), (186, true), (202, true), (257, true), (291, true), (293, true), (309, true), (327, true), (332, true), (359, true), (379, true), (427, true), (441, true), (450, true), (463, true), (465, true), (467, true), (468, true), (477, true), (482, true), (490, true), (507, true), (532, true), (550, true), (556, true), (558, true), (596, true), (606, true), (612, true), (623, true), (625, true), (656, true), (682, true), (692, true), (709, true), (739, true), (740, true), (749, true), (758, true), (775, true), (791, true), (801, true), (807, true), (810, true), (831, true), (839, true), (847, true), (852, true), (853, true), (883, true), (886, true), (896, true), (906, true), (917, true), (921, true), (936, true), (937, true), (941, true), (945, true), (949, true), (953, true), (957, true), (963, true), (974, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {2, 30, 46, 68, 70, 96, 136, 138, 141, 162, 181, 186, 202, 217, 234, 244, 245, 257, 291, 293, 309, 327, 332, 359, 379, 427, 430, 441, 450, 463, 465, 467, 468, 477, 482, 490, 507, 532, 550, 556, 558, 596, 606, 612, 623, 625, 656, 682, 692, 709, 739, 740, 749, 758, 775, 791, 801, 807, 810, 819, 831, 839, 847, 852, 853, 860, 883, 886, 896, 906, 917, 921, 936, 937, 941, 945, 949, 953, 957, 963, 974} + [988, 993, 73, 75, 242, 246, 38, 60, 77, 82, 178, 250, 304, 308, 457, 574, 586, 595, 744, 753, 785, 854, 898, 931]
[INFO] [stdout] b all: {38, 60, 73, 75, 77, 82, 178, 217, 242, 244, 246, 250, 304, 308, 430, 457, 574, 586, 595, 744, 753, 785, 819, 854, 860, 898, 931, 988, 993} + [68, 70, 234, 245, 2, 30, 46, 96, 136, 138, 141, 162, 181, 186, 202, 257, 291, 293, 309, 327, 332, 359, 379, 427, 441, 450, 463, 465, 467, 468, 477, 482, 490, 507, 532, 550, 556, 558, 596, 606, 612, 623, 625, 656, 682, 692, 709, 739, 740, 749, 758, 775, 791, 801, 807, 810, 831, 839, 847, 852, 853, 883, 886, 896, 906, 917, 921, 936, 937, 941, 945, 949, 953, 957, 963, 974]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [2, 30, 38, 46, 60, 68, 70, 73, 75, 77, 82, 96, 136, 138, 141, 162, 178, 181, 186, 202, 217, 234, 242, 244, 245, 246, 250, 257, 291, 293, 304, 308, 309, 327, 332, 359, 379, 427, 430, 441, 450, 457, 463, 465, 467, 468, 477, 482, 490, 507, 532, 550, 556, 558, 574, 586, 595, 596, 606, 612, 623, 625, 656, 682, 692, 709, 739, 740, 744, 749, 753, 758, 775, 785, 791, 801, 807, 810, 819, 831, 839, 847, 852, 853, 854, 860, 883, 886, 896, 898, 906, 917, 921, 931, 936, 937, 941, 945, 949, 953, 957, 963, 974, 988, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [2, 30, 38, 46, 60, 68, 70, 73, 75, 77, 82, 96, 136, 138, 141, 162, 178, 181, 186, 202, 217, 234, 242, 244, 245, 246, 250, 257, 291, 293, 304, 308, 309, 327, 332, 359, 379, 427, 430, 441, 450, 457, 463, 465, 467, 468, 477, 482, 490, 507, 532, 550, 556, 558, 574, 586, 595, 596, 606, 612, 623, 625, 656, 682, 692, 709, 739, 740, 744, 749, 753, 758, 775, 785, 791, 801, 807, 810, 819, 831, 839, 847, 852, 853, 854, 860, 883, 886, 896, 898, 906, 917, 921, 931, 936, 937, 941, 945, 949, 953, 957, 963, 974, 988, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [2, 30, 38, 46, 60, 68, 70, 73, 75, 77, 82, 96, 136, 138, 141, 162, 178, 181, 186, 202, 217, 234, 242, 244, 245, 246, 250, 257, 291, 293, 304, 308, 309, 327, 332, 359, 379, 427, 430, 441, 450, 457, 463, 465, 467, 468, 477, 482, 490, 507, 532, 550, 556, 558, 574, 586, 595, 596, 606, 612, 623, 625, 656, 682, 692, 709, 739, 740, 744, 749, 753, 758, 775, 785, 791, 801, 807, 810, 819, 831, 839, 847, 852, 853, 854, 860, 883, 886, 896, 898, 906, 917, 921, 931, 936, 937, 941, 945, 949, 953, 957, 963, 974, 988, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {7, 52, 58, 74, 76, 147, 175, 179, 189, 214, 234, 256, 309, 313, 330, 358, 365, 374, 389, 403, 438, 448, 449, 450, 489, 490, 494, 510, 523, 545, 553, 562, 564, 582, 653, 655, 662, 677, 698, 706, 724, 729, 755, 762, 783, 823, 826, 848, 852, 874, 886, 891, 918, 941, 980}
[INFO] [stdout] b items: {23, 60, 61, 63, 131, 187, 220, 228, 242, 247, 356, 387, 399, 413, 564, 593, 699, 734, 819}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 981), fp: EncodedCountingMonoid(55, SumMonoid(28242)) }], item_sets: [ItemSet { range: Range(981, 7), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 356), fp: EncodedCountingMonoid(10, SumMonoid(1462)) }, Fingerprint { range: Range(356, 981), fp: EncodedCountingMonoid(9, SumMonoid(4964)) }], item_sets: [ItemSet { range: Range(981, 7), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 189), fp: EncodedCountingMonoid(8, SumMonoid(768)) }, Fingerprint { range: Range(189, 356), fp: EncodedCountingMonoid(7, SumMonoid(1845)) }, Fingerprint { range: Range(356, 655), fp: EncodedCountingMonoid(20, SumMonoid(9639)) }, Fingerprint { range: Range(655, 981), fp: EncodedCountingMonoid(20, SumMonoid(15990)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 63), fp: EncodedCountingMonoid(3, SumMonoid(144)) }, Fingerprint { range: Range(63, 189), fp: EncodedCountingMonoid(3, SumMonoid(381)) }, Fingerprint { range: Range(356, 413), fp: EncodedCountingMonoid(3, SumMonoid(1142)) }, Fingerprint { range: Range(413, 655), fp: EncodedCountingMonoid(3, SumMonoid(1570)) }], item_sets: [ItemSet { range: Range(189, 242), items: [220, 228], want_response: true }, ItemSet { range: Range(242, 356), items: [242, 247], want_response: true }, ItemSet { range: Range(655, 819), items: [699, 734], want_response: true }, ItemSet { range: Range(819, 981), items: [819], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(63, 175), fp: EncodedCountingMonoid(3, SumMonoid(297)) }, Fingerprint { range: Range(356, 389), fp: EncodedCountingMonoid(3, SumMonoid(1097)) }, Fingerprint { range: Range(413, 523), fp: EncodedCountingMonoid(8, SumMonoid(3768)) }, Fingerprint { range: Range(523, 655), fp: EncodedCountingMonoid(7, SumMonoid(3982)) }], item_sets: [ItemSet { range: Range(189, 242), items: [189, 214, 234], want_response: false }, ItemSet { range: Range(242, 356), items: [256, 309, 313, 330], want_response: false }, ItemSet { range: Range(655, 819), items: [655, 662, 677, 698, 706, 724, 729, 755, 762, 783], want_response: false }, ItemSet { range: Range(819, 981), items: [823, 826, 848, 852, 874, 886, 891, 918, 941, 980], want_response: false }, ItemSet { range: Range(7, 58), items: [7, 52], want_response: true }, ItemSet { range: Range(58, 63), items: [58], want_response: true }, ItemSet { range: Range(175, 189), items: [175, 179], want_response: true }, ItemSet { range: Range(389, 413), items: [389, 403], want_response: true }], wants: [220, 228, 242, 247, 699, 734, 819], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(7, 58), items: [23], want_response: false }, ItemSet { range: Range(58, 63), items: [60, 61], want_response: false }, ItemSet { range: Range(175, 189), items: [187], want_response: false }, ItemSet { range: Range(389, 413), items: [399], want_response: false }, ItemSet { range: Range(63, 175), items: [63, 131], want_response: true }, ItemSet { range: Range(356, 389), items: [356, 387], want_response: true }, ItemSet { range: Range(413, 523), items: [413], want_response: true }, ItemSet { range: Range(523, 655), items: [564, 593], want_response: true }], wants: [189, 214, 234, 256, 309, 313, 330, 655, 662, 677, 698, 706, 724, 729, 755, 762, 783, 823, 826, 848, 852, 874, 886, 891, 918, 941, 980, 7, 52, 58, 175, 179, 389, 403], provide: [(220, true), (228, true), (242, true), (247, true), (699, true), (734, true), (819, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(63, 175), items: [74, 76, 147], want_response: false }, ItemSet { range: Range(356, 389), items: [358, 365, 374], want_response: false }, ItemSet { range: Range(413, 523), items: [438, 448, 449, 450, 489, 490, 494, 510], want_response: false }, ItemSet { range: Range(523, 655), items: [523, 545, 553, 562, 564, 582, 653], want_response: false }], wants: [23, 60, 61, 187, 399, 63, 131, 356, 387, 413, 593], provide: [(189, true), (214, true), (234, true), (256, true), (309, true), (313, true), (330, true), (655, true), (662, true), (677, true), (698, true), (706, true), (724, true), (729, true), (755, true), (762, true), (783, true), (823, true), (826, true), (848, true), (852, true), (874, true), (886, true), (891, true), (918, true), (941, true), (980, true), (7, true), (52, true), (58, true), (175, true), (179, true), (389, true), (403, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [74, 76, 147, 358, 365, 374, 438, 448, 449, 450, 489, 490, 494, 510, 523, 545, 553, 562, 582, 653], provide: [(23, true), (60, true), (61, true), (187, true), (399, true), (63, true), (131, true), (356, true), (387, true), (413, true), (593, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(74, true), (76, true), (147, true), (358, true), (365, true), (374, true), (438, true), (448, true), (449, true), (450, true), (489, true), (490, true), (494, true), (510, true), (523, true), (545, true), (553, true), (562, true), (582, true), (653, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {7, 52, 58, 74, 76, 147, 175, 179, 189, 214, 234, 256, 309, 313, 330, 358, 365, 374, 389, 403, 438, 448, 449, 450, 489, 490, 494, 510, 523, 545, 553, 562, 564, 582, 653, 655, 662, 677, 698, 706, 724, 729, 755, 762, 783, 823, 826, 848, 852, 874, 886, 891, 918, 941, 980} + [220, 228, 242, 247, 699, 734, 819, 23, 60, 61, 187, 399, 63, 131, 356, 387, 413, 593]
[INFO] [stdout] b all: {23, 60, 61, 63, 131, 187, 220, 228, 242, 247, 356, 387, 399, 413, 564, 593, 699, 734, 819} + [189, 214, 234, 256, 309, 313, 330, 655, 662, 677, 698, 706, 724, 729, 755, 762, 783, 823, 826, 848, 852, 874, 886, 891, 918, 941, 980, 7, 52, 58, 175, 179, 389, 403, 74, 76, 147, 358, 365, 374, 438, 448, 449, 450, 489, 490, 494, 510, 523, 545, 553, 562, 582, 653]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [7, 23, 52, 58, 60, 61, 63, 74, 76, 131, 147, 175, 179, 187, 189, 214, 220, 228, 234, 242, 247, 256, 309, 313, 330, 356, 358, 365, 374, 387, 389, 399, 403, 413, 438, 448, 449, 450, 489, 490, 494, 510, 523, 545, 553, 562, 564, 582, 593, 653, 655, 662, 677, 698, 699, 706, 724, 729, 734, 755, 762, 783, 819, 823, 826, 848, 852, 874, 886, 891, 918, 941, 980]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [7, 23, 52, 58, 60, 61, 63, 74, 76, 131, 147, 175, 179, 187, 189, 214, 220, 228, 234, 242, 247, 256, 309, 313, 330, 356, 358, 365, 374, 387, 389, 399, 403, 413, 438, 448, 449, 450, 489, 490, 494, 510, 523, 545, 553, 562, 564, 582, 593, 653, 655, 662, 677, 698, 699, 706, 724, 729, 734, 755, 762, 783, 819, 823, 826, 848, 852, 874, 886, 891, 918, 941, 980], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [7, 23, 52, 58, 60, 61, 63, 74, 76, 131, 147, 175, 179, 187, 189, 214, 220, 228, 234, 242, 247, 256, 309, 313, 330, 356, 358, 365, 374, 387, 389, 399, 403, 413, 438, 448, 449, 450, 489, 490, 494, 510, 523, 545, 553, 562, 564, 582, 593, 653, 655, 662, 677, 698, 699, 706, 724, 729, 734, 755, 762, 783, 819, 823, 826, 848, 852, 874, 886, 891, 918, 941, 980], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {71, 92, 103, 135, 164, 206, 216, 263, 374, 459, 770}
[INFO] [stdout] b items: {14, 94, 161, 185, 252, 351, 380, 409, 524, 555, 591, 635, 645, 685, 697, 745, 848, 865, 905, 929}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(71, 771), fp: EncodedCountingMonoid(11, SumMonoid(2853)) }], item_sets: [ItemSet { range: Range(771, 71), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(71, 555), fp: EncodedCountingMonoid(8, SumMonoid(2356)) }, Fingerprint { range: Range(555, 771), fp: EncodedCountingMonoid(7, SumMonoid(4553)) }], item_sets: [ItemSet { range: Range(771, 71), items: [848, 865, 905, 929, 14], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(71, 206), fp: EncodedCountingMonoid(5, SumMonoid(565)) }, Fingerprint { range: Range(206, 555), fp: EncodedCountingMonoid(5, SumMonoid(1518)) }], item_sets: [ItemSet { range: Range(555, 771), items: [770], want_response: true }], wants: [848, 865, 905, 929, 14], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(206, 409), fp: EncodedCountingMonoid(3, SumMonoid(983)) }], item_sets: [ItemSet { range: Range(555, 771), items: [555, 591, 635, 645, 685, 697, 745], want_response: false }, ItemSet { range: Range(71, 185), items: [94, 161], want_response: true }, ItemSet { range: Range(185, 206), items: [185], want_response: true }, ItemSet { range: Range(409, 555), items: [409, 524], want_response: true }], wants: [770], provide: [(848, true), (865, true), (905, true), (929, true), (14, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(71, 185), items: [71, 92, 103, 135, 164], want_response: false }, ItemSet { range: Range(185, 206), items: [], want_response: false }, ItemSet { range: Range(409, 555), items: [459], want_response: false }, ItemSet { range: Range(206, 263), items: [206, 216], want_response: true }, ItemSet { range: Range(263, 409), items: [263, 374], want_response: true }], wants: [555, 591, 635, 645, 685, 697, 745, 94, 161, 185, 409, 524], provide: [(770, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(206, 263), items: [252], want_response: false }, ItemSet { range: Range(263, 409), items: [351, 380], want_response: false }], wants: [71, 92, 103, 135, 164, 459, 206, 216, 263, 374], provide: [(555, true), (591, true), (635, true), (645, true), (685, true), (697, true), (745, true), (94, true), (161, true), (185, true), (409, true), (524, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [252, 351, 380], provide: [(71, true), (92, true), (103, true), (135, true), (164, true), (459, true), (206, true), (216, true), (263, true), (374, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(252, true), (351, true), (380, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {71, 92, 103, 135, 164, 206, 216, 263, 374, 459, 770} + [848, 865, 905, 929, 14, 555, 591, 635, 645, 685, 697, 745, 94, 161, 185, 409, 524, 252, 351, 380]
[INFO] [stdout] b all: {14, 94, 161, 185, 252, 351, 380, 409, 524, 555, 591, 635, 645, 685, 697, 745, 848, 865, 905, 929} + [770, 71, 92, 103, 135, 164, 459, 206, 216, 263, 374]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [14, 71, 92, 94, 103, 135, 161, 164, 185, 206, 216, 252, 263, 351, 374, 380, 409, 459, 524, 555, 591, 635, 645, 685, 697, 745, 770, 848, 865, 905, 929]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [14, 71, 92, 94, 103, 135, 161, 164, 185, 206, 216, 252, 263, 351, 374, 380, 409, 459, 524, 555, 591, 635, 645, 685, 697, 745, 770, 848, 865, 905, 929], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [14, 71, 92, 94, 103, 135, 161, 164, 185, 206, 216, 252, 263, 351, 374, 380, 409, 459, 524, 555, 591, 635, 645, 685, 697, 745, 770, 848, 865, 905, 929], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {4, 24, 32, 35, 54, 62, 88, 99, 116, 143, 190, 197, 202, 215, 227, 249, 281, 287, 296, 298, 309, 315, 327, 331, 338, 341, 415, 422, 461, 471, 491, 517, 525, 541, 542, 547, 548, 555, 577, 578, 582, 585, 589, 596, 604, 616, 646, 658, 666, 668, 671, 673, 731, 735, 742, 748, 763, 768, 799, 806, 813, 822, 831, 849, 874, 878, 881, 884, 891, 899, 901, 912, 919, 933, 941, 944, 952, 962, 969}
[INFO] [stdout] b items: {5, 15, 17, 41, 50, 56, 62, 64, 72, 86, 104, 107, 147, 154, 158, 165, 199, 204, 214, 217, 240, 243, 253, 261, 262, 272, 279, 285, 287, 297, 314, 328, 360, 361, 365, 411, 433, 453, 466, 515, 528, 560, 565, 566, 570, 578, 582, 599, 606, 612, 628, 630, 637, 649, 662, 671, 673, 682, 694, 697, 718, 724, 751, 794, 802, 812, 843, 865, 870, 892, 902, 914, 919, 931, 945, 958, 983}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 970), fp: EncodedCountingMonoid(79, SumMonoid(42951)) }], item_sets: [ItemSet { range: Range(970, 4), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 466), fp: EncodedCountingMonoid(38, SumMonoid(7841)) }, Fingerprint { range: Range(466, 970), fp: EncodedCountingMonoid(38, SumMonoid(27010)) }], item_sets: [ItemSet { range: Range(970, 4), items: [983], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 249), fp: EncodedCountingMonoid(15, SumMonoid(1688)) }, Fingerprint { range: Range(249, 466), fp: EncodedCountingMonoid(14, SumMonoid(4670)) }, Fingerprint { range: Range(466, 742), fp: EncodedCountingMonoid(25, SumMonoid(14912)) }, Fingerprint { range: Range(742, 970), fp: EncodedCountingMonoid(25, SumMonoid(21681)) }], item_sets: [], wants: [983], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 107), fp: EncodedCountingMonoid(11, SumMonoid(572)) }, Fingerprint { range: Range(107, 249), fp: EncodedCountingMonoid(11, SumMonoid(2048)) }, Fingerprint { range: Range(249, 314), fp: EncodedCountingMonoid(8, SumMonoid(2196)) }, Fingerprint { range: Range(314, 466), fp: EncodedCountingMonoid(8, SumMonoid(3025)) }, Fingerprint { range: Range(466, 628), fp: EncodedCountingMonoid(12, SumMonoid(6747)) }, Fingerprint { range: Range(628, 742), fp: EncodedCountingMonoid(12, SumMonoid(8065)) }, Fingerprint { range: Range(742, 892), fp: EncodedCountingMonoid(7, SumMonoid(5737)) }, Fingerprint { range: Range(892, 970), fp: EncodedCountingMonoid(7, SumMonoid(6461)) }], item_sets: [], wants: [], provide: [(983, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 54), fp: EncodedCountingMonoid(4, SumMonoid(95)) }, Fingerprint { range: Range(54, 107), fp: EncodedCountingMonoid(4, SumMonoid(303)) }, Fingerprint { range: Range(107, 202), fp: EncodedCountingMonoid(4, SumMonoid(646)) }, Fingerprint { range: Range(202, 249), fp: EncodedCountingMonoid(3, SumMonoid(644)) }, Fingerprint { range: Range(249, 296), fp: EncodedCountingMonoid(3, SumMonoid(817)) }, Fingerprint { range: Range(296, 314), fp: EncodedCountingMonoid(3, SumMonoid(903)) }, Fingerprint { range: Range(314, 341), fp: EncodedCountingMonoid(4, SumMonoid(1311)) }, Fingerprint { range: Range(341, 466), fp: EncodedCountingMonoid(4, SumMonoid(1639)) }, Fingerprint { range: Range(466, 577), fp: EncodedCountingMonoid(9, SumMonoid(4737)) }, Fingerprint { range: Range(577, 628), fp: EncodedCountingMonoid(8, SumMonoid(4727)) }, Fingerprint { range: Range(628, 671), fp: EncodedCountingMonoid(4, SumMonoid(2638)) }, Fingerprint { range: Range(671, 742), fp: EncodedCountingMonoid(4, SumMonoid(2810)) }, Fingerprint { range: Range(742, 831), fp: EncodedCountingMonoid(8, SumMonoid(6261)) }, Fingerprint { range: Range(831, 892), fp: EncodedCountingMonoid(7, SumMonoid(6088)) }, Fingerprint { range: Range(892, 941), fp: EncodedCountingMonoid(5, SumMonoid(4564)) }, Fingerprint { range: Range(941, 970), fp: EncodedCountingMonoid(5, SumMonoid(4768)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 41), fp: EncodedCountingMonoid(3, SumMonoid(37)) }, Fingerprint { range: Range(54, 72), fp: EncodedCountingMonoid(3, SumMonoid(182)) }, Fingerprint { range: Range(72, 107), fp: EncodedCountingMonoid(3, SumMonoid(262)) }, Fingerprint { range: Range(107, 158), fp: EncodedCountingMonoid(3, SumMonoid(408)) }, Fingerprint { range: Range(158, 202), fp: EncodedCountingMonoid(3, SumMonoid(522)) }, Fingerprint { range: Range(202, 240), fp: EncodedCountingMonoid(3, SumMonoid(635)) }, Fingerprint { range: Range(249, 279), fp: EncodedCountingMonoid(4, SumMonoid(1048)) }, Fingerprint { range: Range(279, 296), fp: EncodedCountingMonoid(3, SumMonoid(851)) }, Fingerprint { range: Range(341, 411), fp: EncodedCountingMonoid(3, SumMonoid(1086)) }, Fingerprint { range: Range(411, 466), fp: EncodedCountingMonoid(3, SumMonoid(1297)) }, Fingerprint { range: Range(466, 565), fp: EncodedCountingMonoid(4, SumMonoid(2069)) }, Fingerprint { range: Range(565, 577), fp: EncodedCountingMonoid(3, SumMonoid(1701)) }, Fingerprint { range: Range(577, 606), fp: EncodedCountingMonoid(3, SumMonoid(1759)) }, Fingerprint { range: Range(628, 649), fp: EncodedCountingMonoid(3, SumMonoid(1895)) }, Fingerprint { range: Range(671, 697), fp: EncodedCountingMonoid(4, SumMonoid(2720)) }, Fingerprint { range: Range(697, 742), fp: EncodedCountingMonoid(3, SumMonoid(2139)) }, Fingerprint { range: Range(892, 919), fp: EncodedCountingMonoid(3, SumMonoid(2708)) }], item_sets: [ItemSet { range: Range(41, 54), items: [41, 50], want_response: true }, ItemSet { range: Range(240, 249), items: [240, 243], want_response: true }, ItemSet { range: Range(296, 314), items: [297], want_response: true }, ItemSet { range: Range(314, 341), items: [314, 328], want_response: true }, ItemSet { range: Range(606, 628), items: [606, 612], want_response: true }, ItemSet { range: Range(649, 671), items: [649, 662], want_response: true }, ItemSet { range: Range(742, 802), items: [751, 794], want_response: true }, ItemSet { range: Range(802, 831), items: [802, 812], want_response: true }, ItemSet { range: Range(831, 870), items: [843, 865], want_response: true }, ItemSet { range: Range(870, 892), items: [870], want_response: true }, ItemSet { range: Range(919, 941), items: [919, 931], want_response: true }, ItemSet { range: Range(941, 970), items: [945, 958], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(466, 542), fp: EncodedCountingMonoid(5, SumMonoid(2545)) }, Fingerprint { range: Range(542, 565), fp: EncodedCountingMonoid(4, SumMonoid(2192)) }, Fingerprint { range: Range(577, 589), fp: EncodedCountingMonoid(4, SumMonoid(2322)) }, Fingerprint { range: Range(589, 606), fp: EncodedCountingMonoid(3, SumMonoid(1789)) }], item_sets: [ItemSet { range: Range(41, 54), items: [], want_response: false }, ItemSet { range: Range(240, 249), items: [], want_response: false }, ItemSet { range: Range(296, 314), items: [296, 298, 309], want_response: false }, ItemSet { range: Range(314, 341), items: [315, 327, 331, 338], want_response: false }, ItemSet { range: Range(606, 628), items: [616], want_response: false }, ItemSet { range: Range(649, 671), items: [658, 666, 668], want_response: false }, ItemSet { range: Range(742, 802), items: [742, 748, 763, 768, 799], want_response: false }, ItemSet { range: Range(802, 831), items: [806, 813, 822], want_response: false }, ItemSet { range: Range(831, 870), items: [831, 849], want_response: false }, ItemSet { range: Range(870, 892), items: [874, 878, 881, 884, 891], want_response: false }, ItemSet { range: Range(919, 941), items: [919, 933], want_response: false }, ItemSet { range: Range(941, 970), items: [941, 944, 952, 962, 969], want_response: false }, ItemSet { range: Range(4, 32), items: [4, 24], want_response: true }, ItemSet { range: Range(32, 41), items: [32, 35], want_response: true }, ItemSet { range: Range(54, 72), items: [54, 62], want_response: true }, ItemSet { range: Range(72, 107), items: [88, 99], want_response: true }, ItemSet { range: Range(107, 158), items: [116, 143], want_response: true }, ItemSet { range: Range(158, 202), items: [190, 197], want_response: true }, ItemSet { range: Range(202, 227), items: [202, 215], want_response: true }, ItemSet { range: Range(227, 240), items: [227], want_response: true }, ItemSet { range: Range(249, 279), items: [249], want_response: true }, ItemSet { range: Range(279, 296), items: [281, 287], want_response: true }, ItemSet { range: Range(341, 411), items: [341], want_response: true }, ItemSet { range: Range(411, 461), items: [415, 422], want_response: true }, ItemSet { range: Range(461, 466), items: [461], want_response: true }, ItemSet { range: Range(565, 577), items: [], want_response: true }, ItemSet { range: Range(628, 649), items: [646], want_response: true }, ItemSet { range: Range(671, 697), items: [671, 673], want_response: true }, ItemSet { range: Range(697, 742), items: [731, 735], want_response: true }, ItemSet { range: Range(892, 912), items: [899, 901], want_response: true }, ItemSet { range: Range(912, 919), items: [912], want_response: true }], wants: [41, 50, 240, 243, 297, 314, 328, 606, 612, 649, 662, 751, 794, 802, 812, 843, 865, 870, 931, 945, 958], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(4, 32), items: [5, 15, 17], want_response: false }, ItemSet { range: Range(32, 41), items: [], want_response: false }, ItemSet { range: Range(54, 72), items: [56, 62, 64], want_response: false }, ItemSet { range: Range(72, 107), items: [72, 86, 104], want_response: false }, ItemSet { range: Range(107, 158), items: [107, 147, 154], want_response: false }, ItemSet { range: Range(158, 202), items: [158, 165, 199], want_response: false }, ItemSet { range: Range(202, 227), items: [204, 214, 217], want_response: false }, ItemSet { range: Range(227, 240), items: [], want_response: false }, ItemSet { range: Range(249, 279), items: [253, 261, 262, 272], want_response: false }, ItemSet { range: Range(279, 296), items: [279, 285, 287], want_response: false }, ItemSet { range: Range(341, 411), items: [360, 361, 365], want_response: false }, ItemSet { range: Range(411, 461), items: [411, 433, 453], want_response: false }, ItemSet { range: Range(461, 466), items: [], want_response: false }, ItemSet { range: Range(565, 577), items: [565, 566, 570], want_response: false }, ItemSet { range: Range(628, 649), items: [628, 630, 637], want_response: false }, ItemSet { range: Range(671, 697), items: [671, 673, 682, 694], want_response: false }, ItemSet { range: Range(697, 742), items: [697, 718, 724], want_response: false }, ItemSet { range: Range(892, 912), items: [892, 902], want_response: false }, ItemSet { range: Range(912, 919), items: [914], want_response: false }, ItemSet { range: Range(466, 528), items: [466, 515], want_response: true }, ItemSet { range: Range(528, 542), items: [528], want_response: true }, ItemSet { range: Range(542, 565), items: [560], want_response: true }, ItemSet { range: Range(577, 589), items: [578, 582], want_response: true }, ItemSet { range: Range(589, 606), items: [599], want_response: true }], wants: [296, 298, 309, 315, 327, 331, 338, 616, 658, 666, 668, 742, 748, 763, 768, 799, 806, 813, 822, 831, 849, 874, 878, 881, 884, 891, 933, 941, 944, 952, 962, 969, 4, 24, 32, 35, 54, 88, 99, 116, 143, 190, 197, 202, 215, 227, 249, 281, 341, 415, 422, 461, 646, 731, 735, 899, 901, 912], provide: [(41, true), (50, true), (240, true), (243, true), (297, true), (314, true), (328, true), (606, true), (612, true), (649, true), (662, true), (751, true), (794, true), (802, true), (812, true), (843, true), (865, true), (870, true), (931, true), (945, true), (958, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(466, 528), items: [471, 491, 517, 525], want_response: false }, ItemSet { range: Range(528, 542), items: [541], want_response: false }, ItemSet { range: Range(542, 565), items: [542, 547, 548, 555], want_response: false }, ItemSet { range: Range(577, 589), items: [577, 578, 582, 585], want_response: false }, ItemSet { range: Range(589, 606), items: [589, 596, 604], want_response: false }], wants: [5, 15, 17, 56, 64, 72, 86, 104, 107, 147, 154, 158, 165, 199, 204, 214, 217, 253, 261, 262, 272, 279, 285, 360, 361, 365, 411, 433, 453, 565, 566, 570, 628, 630, 637, 682, 694, 697, 718, 724, 892, 902, 914, 466, 515, 528, 560, 599], provide: [(296, true), (298, true), (309, true), (315, true), (327, true), (331, true), (338, true), (616, true), (658, true), (666, true), (668, true), (742, true), (748, true), (763, true), (768, true), (799, true), (806, true), (813, true), (822, true), (831, true), (849, true), (874, true), (878, true), (881, true), (884, true), (891, true), (933, true), (941, true), (944, true), (952, true), (962, true), (969, true), (4, true), (24, true), (32, true), (35, true), (54, true), (88, true), (99, true), (116, true), (143, true), (190, true), (197, true), (202, true), (215, true), (227, true), (249, true), (281, true), (341, true), (415, true), (422, true), (461, true), (646, true), (731, true), (735, true), (899, true), (901, true), (912, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [471, 491, 517, 525, 541, 542, 547, 548, 555, 577, 585, 589, 596, 604], provide: [(5, true), (15, true), (17, true), (56, true), (64, true), (72, true), (86, true), (104, true), (107, true), (147, true), (154, true), (158, true), (165, true), (199, true), (204, true), (214, true), (217, true), (253, true), (261, true), (262, true), (272, true), (279, true), (285, true), (360, true), (361, true), (365, true), (411, true), (433, true), (453, true), (565, true), (566, true), (570, true), (628, true), (630, true), (637, true), (682, true), (694, true), (697, true), (718, true), (724, true), (892, true), (902, true), (914, true), (466, true), (515, true), (528, true), (560, true), (599, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(471, true), (491, true), (517, true), (525, true), (541, true), (542, true), (547, true), (548, true), (555, true), (577, true), (585, true), (589, true), (596, true), (604, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {4, 24, 32, 35, 54, 62, 88, 99, 116, 143, 190, 197, 202, 215, 227, 249, 281, 287, 296, 298, 309, 315, 327, 331, 338, 341, 415, 422, 461, 471, 491, 517, 525, 541, 542, 547, 548, 555, 577, 578, 582, 585, 589, 596, 604, 616, 646, 658, 666, 668, 671, 673, 731, 735, 742, 748, 763, 768, 799, 806, 813, 822, 831, 849, 874, 878, 881, 884, 891, 899, 901, 912, 919, 933, 941, 944, 952, 962, 969} + [983, 41, 50, 240, 243, 297, 314, 328, 606, 612, 649, 662, 751, 794, 802, 812, 843, 865, 870, 931, 945, 958, 5, 15, 17, 56, 64, 72, 86, 104, 107, 147, 154, 158, 165, 199, 204, 214, 217, 253, 261, 262, 272, 279, 285, 360, 361, 365, 411, 433, 453, 565, 566, 570, 628, 630, 637, 682, 694, 697, 718, 724, 892, 902, 914, 466, 515, 528, 560, 599]
[INFO] [stdout] b all: {5, 15, 17, 41, 50, 56, 62, 64, 72, 86, 104, 107, 147, 154, 158, 165, 199, 204, 214, 217, 240, 243, 253, 261, 262, 272, 279, 285, 287, 297, 314, 328, 360, 361, 365, 411, 433, 453, 466, 515, 528, 560, 565, 566, 570, 578, 582, 599, 606, 612, 628, 630, 637, 649, 662, 671, 673, 682, 694, 697, 718, 724, 751, 794, 802, 812, 843, 865, 870, 892, 902, 914, 919, 931, 945, 958, 983} + [296, 298, 309, 315, 327, 331, 338, 616, 658, 666, 668, 742, 748, 763, 768, 799, 806, 813, 822, 831, 849, 874, 878, 881, 884, 891, 933, 941, 944, 952, 962, 969, 4, 24, 32, 35, 54, 88, 99, 116, 143, 190, 197, 202, 215, 227, 249, 281, 341, 415, 422, 461, 646, 731, 735, 899, 901, 912, 471, 491, 517, 525, 541, 542, 547, 548, 555, 577, 585, 589, 596, 604]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [4, 5, 15, 17, 24, 32, 35, 41, 50, 54, 56, 62, 64, 72, 86, 88, 99, 104, 107, 116, 143, 147, 154, 158, 165, 190, 197, 199, 202, 204, 214, 215, 217, 227, 240, 243, 249, 253, 261, 262, 272, 279, 281, 285, 287, 296, 297, 298, 309, 314, 315, 327, 328, 331, 338, 341, 360, 361, 365, 411, 415, 422, 433, 453, 461, 466, 471, 491, 515, 517, 525, 528, 541, 542, 547, 548, 555, 560, 565, 566, 570, 577, 578, 582, 585, 589, 596, 599, 604, 606, 612, 616, 628, 630, 637, 646, 649, 658, 662, 666, 668, 671, 673, 682, 694, 697, 718, 724, 731, 735, 742, 748, 751, 763, 768, 794, 799, 802, 806, 812, 813, 822, 831, 843, 849, 865, 870, 874, 878, 881, 884, 891, 892, 899, 901, 902, 912, 914, 919, 931, 933, 941, 944, 945, 952, 958, 962, 969, 983]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [4, 5, 15, 17, 24, 32, 35, 41, 50, 54, 56, 62, 64, 72, 86, 88, 99, 104, 107, 116, 143, 147, 154, 158, 165, 190, 197, 199, 202, 204, 214, 215, 217, 227, 240, 243, 249, 253, 261, 262, 272, 279, 281, 285, 287, 296, 297, 298, 309, 314, 315, 327, 328, 331, 338, 341, 360, 361, 365, 411, 415, 422, 433, 453, 461, 466, 471, 491, 515, 517, 525, 528, 541, 542, 547, 548, 555, 560, 565, 566, 570, 577, 578, 582, 585, 589, 596, 599, 604, 606, 612, 616, 628, 630, 637, 646, 649, 658, 662, 666, 668, 671, 673, 682, 694, 697, 718, 724, 731, 735, 742, 748, 751, 763, 768, 794, 799, 802, 806, 812, 813, 822, 831, 843, 849, 865, 870, 874, 878, 881, 884, 891, 892, 899, 901, 902, 912, 914, 919, 931, 933, 941, 944, 945, 952, 958, 962, 969, 983], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [4, 5, 15, 17, 24, 32, 35, 41, 50, 54, 56, 62, 64, 72, 86, 88, 99, 104, 107, 116, 143, 147, 154, 158, 165, 190, 197, 199, 202, 204, 214, 215, 217, 227, 240, 243, 249, 253, 261, 262, 272, 279, 281, 285, 287, 296, 297, 298, 309, 314, 315, 327, 328, 331, 338, 341, 360, 361, 365, 411, 415, 422, 433, 453, 461, 466, 471, 491, 515, 517, 525, 528, 541, 542, 547, 548, 555, 560, 565, 566, 570, 577, 578, 582, 585, 589, 596, 599, 604, 606, 612, 616, 628, 630, 637, 646, 649, 658, 662, 666, 668, 671, 673, 682, 694, 697, 718, 724, 731, 735, 742, 748, 751, 763, 768, 794, 799, 802, 806, 812, 813, 822, 831, 843, 849, 865, 870, 874, 878, 881, 884, 891, 892, 899, 901, 902, 912, 914, 919, 931, 933, 941, 944, 945, 952, 958, 962, 969, 983], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 66, 70, 86, 145, 216, 239, 291, 336, 366, 379, 386, 399, 405, 443, 476, 484, 491, 493, 510, 521, 545, 599, 608, 620, 632, 636, 640, 650, 791, 841, 909, 927, 990}
[INFO] [stdout] b items: {4, 8, 10, 29, 43, 62, 72, 76, 78, 99, 113, 117, 135, 144, 155, 159, 169, 172, 177, 198, 206, 243, 244, 248, 275, 289, 304, 331, 342, 343, 346, 348, 361, 369, 375, 379, 382, 387, 388, 404, 412, 430, 443, 445, 448, 450, 452, 509, 522, 537, 554, 594, 611, 613, 626, 641, 678, 683, 701, 709, 717, 728, 735, 736, 749, 752, 779, 791, 806, 811, 820, 822, 823, 835, 839, 864, 873, 874, 887, 890, 892, 900, 910, 912, 925, 946, 978, 998}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 991), fp: EncodedCountingMonoid(34, SumMonoid(16207)) }], item_sets: [ItemSet { range: Range(991, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 450), fp: EncodedCountingMonoid(42, SumMonoid(10740)) }, Fingerprint { range: Range(450, 991), fp: EncodedCountingMonoid(42, SumMonoid(31474)) }], item_sets: [ItemSet { range: Range(991, 17), items: [998, 4, 8, 10], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 336), fp: EncodedCountingMonoid(8, SumMonoid(1130)) }, Fingerprint { range: Range(336, 450), fp: EncodedCountingMonoid(7, SumMonoid(2714)) }, Fingerprint { range: Range(450, 632), fp: EncodedCountingMonoid(10, SumMonoid(5347)) }, Fingerprint { range: Range(632, 991), fp: EncodedCountingMonoid(9, SumMonoid(7016)) }], item_sets: [], wants: [998, 4, 8, 10], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 169), fp: EncodedCountingMonoid(13, SumMonoid(1282)) }, Fingerprint { range: Range(169, 336), fp: EncodedCountingMonoid(12, SumMonoid(2856)) }, Fingerprint { range: Range(336, 387), fp: EncodedCountingMonoid(9, SumMonoid(3245)) }, Fingerprint { range: Range(387, 450), fp: EncodedCountingMonoid(8, SumMonoid(3357)) }, Fingerprint { range: Range(450, 554), fp: EncodedCountingMonoid(5, SumMonoid(2470)) }, Fingerprint { range: Range(554, 632), fp: EncodedCountingMonoid(5, SumMonoid(2998)) }, Fingerprint { range: Range(632, 822), fp: EncodedCountingMonoid(16, SumMonoid(11836)) }, Fingerprint { range: Range(822, 991), fp: EncodedCountingMonoid(16, SumMonoid(14170)) }], item_sets: [], wants: [], provide: [(998, true), (4, true), (8, true), (10, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 86), fp: EncodedCountingMonoid(3, SumMonoid(153)) }, Fingerprint { range: Range(450, 510), fp: EncodedCountingMonoid(4, SumMonoid(1944)) }, Fingerprint { range: Range(510, 554), fp: EncodedCountingMonoid(3, SumMonoid(1576)) }, Fingerprint { range: Range(632, 650), fp: EncodedCountingMonoid(3, SumMonoid(1908)) }], item_sets: [ItemSet { range: Range(86, 169), items: [86, 145], want_response: true }, ItemSet { range: Range(169, 291), items: [216, 239], want_response: true }, ItemSet { range: Range(291, 336), items: [291], want_response: true }, ItemSet { range: Range(336, 379), items: [336, 366], want_response: true }, ItemSet { range: Range(379, 387), items: [379, 386], want_response: true }, ItemSet { range: Range(387, 443), items: [399, 405], want_response: true }, ItemSet { range: Range(443, 450), items: [443], want_response: true }, ItemSet { range: Range(554, 620), items: [599, 608], want_response: true }, ItemSet { range: Range(620, 632), items: [620], want_response: true }, ItemSet { range: Range(650, 822), items: [650, 791], want_response: true }, ItemSet { range: Range(822, 927), items: [841, 909], want_response: true }, ItemSet { range: Range(927, 991), items: [927, 990], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 72), fp: EncodedCountingMonoid(3, SumMonoid(134)) }, Fingerprint { range: Range(72, 86), fp: EncodedCountingMonoid(3, SumMonoid(226)) }], item_sets: [ItemSet { range: Range(86, 169), items: [99, 113, 117, 135, 144, 155, 159], want_response: false }, ItemSet { range: Range(169, 291), items: [169, 172, 177, 198, 206, 243, 244, 248, 275, 289], want_response: false }, ItemSet { range: Range(291, 336), items: [304, 331], want_response: false }, ItemSet { range: Range(336, 379), items: [342, 343, 346, 348, 361, 369, 375], want_response: false }, ItemSet { range: Range(379, 387), items: [379, 382], want_response: false }, ItemSet { range: Range(387, 443), items: [387, 388, 404, 412, 430], want_response: false }, ItemSet { range: Range(443, 450), items: [443, 445, 448], want_response: false }, ItemSet { range: Range(554, 620), items: [554, 594, 611, 613], want_response: false }, ItemSet { range: Range(620, 632), items: [626], want_response: false }, ItemSet { range: Range(650, 822), items: [678, 683, 701, 709, 717, 728, 735, 736, 749, 752, 779, 791, 806, 811, 820], want_response: false }, ItemSet { range: Range(822, 927), items: [822, 823, 835, 839, 864, 873, 874, 887, 890, 892, 900, 910, 912, 925], want_response: false }, ItemSet { range: Range(927, 991), items: [946, 978], want_response: false }, ItemSet { range: Range(450, 509), items: [450, 452], want_response: true }, ItemSet { range: Range(509, 510), items: [509], want_response: true }, ItemSet { range: Range(510, 554), items: [522, 537], want_response: true }, ItemSet { range: Range(632, 650), items: [641], want_response: true }], wants: [86, 145, 216, 239, 291, 336, 366, 386, 399, 405, 599, 608, 620, 650, 841, 909, 927, 990], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(450, 509), items: [476, 484, 491, 493], want_response: false }, ItemSet { range: Range(509, 510), items: [], want_response: false }, ItemSet { range: Range(510, 554), items: [510, 521, 545], want_response: false }, ItemSet { range: Range(632, 650), items: [632, 636, 640], want_response: false }, ItemSet { range: Range(17, 70), items: [17, 66], want_response: true }, ItemSet { range: Range(70, 72), items: [70], want_response: true }, ItemSet { range: Range(72, 86), items: [], want_response: true }], wants: [99, 113, 117, 135, 144, 155, 159, 169, 172, 177, 198, 206, 243, 244, 248, 275, 289, 304, 331, 342, 343, 346, 348, 361, 369, 375, 382, 387, 388, 404, 412, 430, 445, 448, 554, 594, 611, 613, 626, 678, 683, 701, 709, 717, 728, 735, 736, 749, 752, 779, 806, 811, 820, 822, 823, 835, 839, 864, 873, 874, 887, 890, 892, 900, 910, 912, 925, 946, 978, 450, 452, 509, 522, 537, 641], provide: [(86, true), (145, true), (216, true), (239, true), (291, true), (336, true), (366, true), (386, true), (399, true), (405, true), (599, true), (608, true), (620, true), (650, true), (841, true), (909, true), (927, true), (990, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(17, 70), items: [29, 43, 62], want_response: false }, ItemSet { range: Range(70, 72), items: [], want_response: false }, ItemSet { range: Range(72, 86), items: [72, 76, 78], want_response: false }], wants: [476, 484, 491, 493, 510, 521, 545, 632, 636, 640, 17, 66, 70], provide: [(99, true), (113, true), (117, true), (135, true), (144, true), (155, true), (159, true), (169, true), (172, true), (177, true), (198, true), (206, true), (243, true), (244, true), (248, true), (275, true), (289, true), (304, true), (331, true), (342, true), (343, true), (346, true), (348, true), (361, true), (369, true), (375, true), (382, true), (387, true), (388, true), (404, true), (412, true), (430, true), (445, true), (448, true), (554, true), (594, true), (611, true), (613, true), (626, true), (678, true), (683, true), (701, true), (709, true), (717, true), (728, true), (735, true), (736, true), (749, true), (752, true), (779, true), (806, true), (811, true), (820, true), (822, true), (823, true), (835, true), (839, true), (864, true), (873, true), (874, true), (887, true), (890, true), (892, true), (900, true), (910, true), (912, true), (925, true), (946, true), (978, true), (450, true), (452, true), (509, true), (522, true), (537, true), (641, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [29, 43, 62, 72, 76, 78], provide: [(476, true), (484, true), (491, true), (493, true), (510, true), (521, true), (545, true), (632, true), (636, true), (640, true), (17, true), (66, true), (70, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(29, true), (43, true), (62, true), (72, true), (76, true), (78, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 66, 70, 86, 145, 216, 239, 291, 336, 366, 379, 386, 399, 405, 443, 476, 484, 491, 493, 510, 521, 545, 599, 608, 620, 632, 636, 640, 650, 791, 841, 909, 927, 990} + [998, 4, 8, 10, 99, 113, 117, 135, 144, 155, 159, 169, 172, 177, 198, 206, 243, 244, 248, 275, 289, 304, 331, 342, 343, 346, 348, 361, 369, 375, 382, 387, 388, 404, 412, 430, 445, 448, 554, 594, 611, 613, 626, 678, 683, 701, 709, 717, 728, 735, 736, 749, 752, 779, 806, 811, 820, 822, 823, 835, 839, 864, 873, 874, 887, 890, 892, 900, 910, 912, 925, 946, 978, 450, 452, 509, 522, 537, 641, 29, 43, 62, 72, 76, 78]
[INFO] [stdout] b all: {4, 8, 10, 29, 43, 62, 72, 76, 78, 99, 113, 117, 135, 144, 155, 159, 169, 172, 177, 198, 206, 243, 244, 248, 275, 289, 304, 331, 342, 343, 346, 348, 361, 369, 375, 379, 382, 387, 388, 404, 412, 430, 443, 445, 448, 450, 452, 509, 522, 537, 554, 594, 611, 613, 626, 641, 678, 683, 701, 709, 717, 728, 735, 736, 749, 752, 779, 791, 806, 811, 820, 822, 823, 835, 839, 864, 873, 874, 887, 890, 892, 900, 910, 912, 925, 946, 978, 998} + [86, 145, 216, 239, 291, 336, 366, 386, 399, 405, 599, 608, 620, 650, 841, 909, 927, 990, 476, 484, 491, 493, 510, 521, 545, 632, 636, 640, 17, 66, 70]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [4, 8, 10, 17, 29, 43, 62, 66, 70, 72, 76, 78, 86, 99, 113, 117, 135, 144, 145, 155, 159, 169, 172, 177, 198, 206, 216, 239, 243, 244, 248, 275, 289, 291, 304, 331, 336, 342, 343, 346, 348, 361, 366, 369, 375, 379, 382, 386, 387, 388, 399, 404, 405, 412, 430, 443, 445, 448, 450, 452, 476, 484, 491, 493, 509, 510, 521, 522, 537, 545, 554, 594, 599, 608, 611, 613, 620, 626, 632, 636, 640, 641, 650, 678, 683, 701, 709, 717, 728, 735, 736, 749, 752, 779, 791, 806, 811, 820, 822, 823, 835, 839, 841, 864, 873, 874, 887, 890, 892, 900, 909, 910, 912, 925, 927, 946, 978, 990, 998]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [4, 8, 10, 17, 29, 43, 62, 66, 70, 72, 76, 78, 86, 99, 113, 117, 135, 144, 145, 155, 159, 169, 172, 177, 198, 206, 216, 239, 243, 244, 248, 275, 289, 291, 304, 331, 336, 342, 343, 346, 348, 361, 366, 369, 375, 379, 382, 386, 387, 388, 399, 404, 405, 412, 430, 443, 445, 448, 450, 452, 476, 484, 491, 493, 509, 510, 521, 522, 537, 545, 554, 594, 599, 608, 611, 613, 620, 626, 632, 636, 640, 641, 650, 678, 683, 701, 709, 717, 728, 735, 736, 749, 752, 779, 791, 806, 811, 820, 822, 823, 835, 839, 841, 864, 873, 874, 887, 890, 892, 900, 909, 910, 912, 925, 927, 946, 978, 990, 998], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [4, 8, 10, 17, 29, 43, 62, 66, 70, 72, 76, 78, 86, 99, 113, 117, 135, 144, 145, 155, 159, 169, 172, 177, 198, 206, 216, 239, 243, 244, 248, 275, 289, 291, 304, 331, 336, 342, 343, 346, 348, 361, 366, 369, 375, 379, 382, 386, 387, 388, 399, 404, 405, 412, 430, 443, 445, 448, 450, 452, 476, 484, 491, 493, 509, 510, 521, 522, 537, 545, 554, 594, 599, 608, 611, 613, 620, 626, 632, 636, 640, 641, 650, 678, 683, 701, 709, 717, 728, 735, 736, 749, 752, 779, 791, 806, 811, 820, 822, 823, 835, 839, 841, 864, 873, 874, 887, 890, 892, 900, 909, 910, 912, 925, 927, 946, 978, 990, 998], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {16, 20, 26, 47, 60, 61, 74, 75, 139, 186, 207, 215, 220, 233, 257, 263, 274, 287, 299, 332, 336, 344, 415, 418, 429, 447, 519, 520, 540, 541, 549, 569, 574, 577, 589, 594, 599, 652, 671, 676, 734, 735, 739, 740, 758, 766, 780, 803, 828, 846, 894, 957, 958}
[INFO] [stdout] b items: {214, 285, 410, 417, 711, 715, 754}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(16, 959), fp: EncodedCountingMonoid(53, SumMonoid(24388)) }], item_sets: [ItemSet { range: Range(959, 16), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(16, 711), fp: EncodedCountingMonoid(4, SumMonoid(1326)) }, Fingerprint { range: Range(711, 959), fp: EncodedCountingMonoid(3, SumMonoid(2180)) }], item_sets: [ItemSet { range: Range(959, 16), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(16, 336), fp: EncodedCountingMonoid(20, SumMonoid(3291)) }, Fingerprint { range: Range(336, 711), fp: EncodedCountingMonoid(20, SumMonoid(10559)) }, Fingerprint { range: Range(711, 803), fp: EncodedCountingMonoid(7, SumMonoid(5252)) }, Fingerprint { range: Range(803, 959), fp: EncodedCountingMonoid(6, SumMonoid(5286)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(16, 336), items: [214, 285], want_response: true }, ItemSet { range: Range(336, 711), items: [410, 417], want_response: true }, ItemSet { range: Range(711, 754), items: [711, 715], want_response: true }, ItemSet { range: Range(754, 803), items: [754], want_response: true }, ItemSet { range: Range(803, 959), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(16, 336), items: [16, 20, 26, 47, 60, 61, 74, 75, 139, 186, 207, 215, 220, 233, 257, 263, 274, 287, 299, 332], want_response: false }, ItemSet { range: Range(336, 711), items: [336, 344, 415, 418, 429, 447, 519, 520, 540, 541, 549, 569, 574, 577, 589, 594, 599, 652, 671, 676], want_response: false }, ItemSet { range: Range(711, 754), items: [734, 735, 739, 740], want_response: false }, ItemSet { range: Range(754, 803), items: [758, 766, 780], want_response: false }, ItemSet { range: Range(803, 959), items: [803, 828, 846, 894, 957, 958], want_response: false }], wants: [214, 285, 410, 417, 711, 715, 754], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [16, 20, 26, 47, 60, 61, 74, 75, 139, 186, 207, 215, 220, 233, 257, 263, 274, 287, 299, 332, 336, 344, 415, 418, 429, 447, 519, 520, 540, 541, 549, 569, 574, 577, 589, 594, 599, 652, 671, 676, 734, 735, 739, 740, 758, 766, 780, 803, 828, 846, 894, 957, 958], provide: [(214, true), (285, true), (410, true), (417, true), (711, true), (715, true), (754, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(16, true), (20, true), (26, true), (47, true), (60, true), (61, true), (74, true), (75, true), (139, true), (186, true), (207, true), (215, true), (220, true), (233, true), (257, true), (263, true), (274, true), (287, true), (299, true), (332, true), (336, true), (344, true), (415, true), (418, true), (429, true), (447, true), (519, true), (520, true), (540, true), (541, true), (549, true), (569, true), (574, true), (577, true), (589, true), (594, true), (599, true), (652, true), (671, true), (676, true), (734, true), (735, true), (739, true), (740, true), (758, true), (766, true), (780, true), (803, true), (828, true), (846, true), (894, true), (957, true), (958, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {16, 20, 26, 47, 60, 61, 74, 75, 139, 186, 207, 215, 220, 233, 257, 263, 274, 287, 299, 332, 336, 344, 415, 418, 429, 447, 519, 520, 540, 541, 549, 569, 574, 577, 589, 594, 599, 652, 671, 676, 734, 735, 739, 740, 758, 766, 780, 803, 828, 846, 894, 957, 958} + [214, 285, 410, 417, 711, 715, 754]
[INFO] [stdout] b all: {214, 285, 410, 417, 711, 715, 754} + [16, 20, 26, 47, 60, 61, 74, 75, 139, 186, 207, 215, 220, 233, 257, 263, 274, 287, 299, 332, 336, 344, 415, 418, 429, 447, 519, 520, 540, 541, 549, 569, 574, 577, 589, 594, 599, 652, 671, 676, 734, 735, 739, 740, 758, 766, 780, 803, 828, 846, 894, 957, 958]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [16, 20, 26, 47, 60, 61, 74, 75, 139, 186, 207, 214, 215, 220, 233, 257, 263, 274, 285, 287, 299, 332, 336, 344, 410, 415, 417, 418, 429, 447, 519, 520, 540, 541, 549, 569, 574, 577, 589, 594, 599, 652, 671, 676, 711, 715, 734, 735, 739, 740, 754, 758, 766, 780, 803, 828, 846, 894, 957, 958]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [16, 20, 26, 47, 60, 61, 74, 75, 139, 186, 207, 214, 215, 220, 233, 257, 263, 274, 285, 287, 299, 332, 336, 344, 410, 415, 417, 418, 429, 447, 519, 520, 540, 541, 549, 569, 574, 577, 589, 594, 599, 652, 671, 676, 711, 715, 734, 735, 739, 740, 754, 758, 766, 780, 803, 828, 846, 894, 957, 958], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [16, 20, 26, 47, 60, 61, 74, 75, 139, 186, 207, 214, 215, 220, 233, 257, 263, 274, 285, 287, 299, 332, 336, 344, 410, 415, 417, 418, 429, 447, 519, 520, 540, 541, 549, 569, 574, 577, 589, 594, 599, 652, 671, 676, 711, 715, 734, 735, 739, 740, 754, 758, 766, 780, 803, 828, 846, 894, 957, 958], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 31, 77, 93, 106, 247, 254, 260, 286, 313, 422, 437, 508, 528, 531, 586, 597, 691, 760, 777, 819, 867, 947, 975}
[INFO] [stdout] b items: {9, 13, 19, 80, 154, 224, 243, 257, 346, 405, 557, 723, 729, 742, 779, 819, 851, 991}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 976), fp: EncodedCountingMonoid(24, SumMonoid(11129)) }], item_sets: [ItemSet { range: Range(976, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 557), fp: EncodedCountingMonoid(8, SumMonoid(1728)) }, Fingerprint { range: Range(557, 976), fp: EncodedCountingMonoid(7, SumMonoid(5200)) }], item_sets: [ItemSet { range: Range(976, 17), items: [991, 9, 13], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 286), fp: EncodedCountingMonoid(8, SumMonoid(1085)) }, Fingerprint { range: Range(286, 557), fp: EncodedCountingMonoid(7, SumMonoid(3025)) }, Fingerprint { range: Range(557, 819), fp: EncodedCountingMonoid(5, SumMonoid(3411)) }, Fingerprint { range: Range(819, 976), fp: EncodedCountingMonoid(4, SumMonoid(3608)) }], item_sets: [], wants: [991, 9, 13], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 224), fp: EncodedCountingMonoid(3, SumMonoid(253)) }, Fingerprint { range: Range(224, 286), fp: EncodedCountingMonoid(3, SumMonoid(724)) }, Fingerprint { range: Range(557, 742), fp: EncodedCountingMonoid(3, SumMonoid(2009)) }], item_sets: [ItemSet { range: Range(286, 557), items: [346, 405], want_response: true }, ItemSet { range: Range(742, 819), items: [742, 779], want_response: true }, ItemSet { range: Range(819, 976), items: [819, 851], want_response: true }], wants: [], provide: [(991, true), (9, true), (13, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 93), fp: EncodedCountingMonoid(3, SumMonoid(125)) }], item_sets: [ItemSet { range: Range(286, 557), items: [286, 313, 422, 437, 508, 528, 531], want_response: false }, ItemSet { range: Range(742, 819), items: [760, 777], want_response: false }, ItemSet { range: Range(819, 976), items: [819, 867, 947, 975], want_response: false }, ItemSet { range: Range(93, 224), items: [93, 106], want_response: true }, ItemSet { range: Range(224, 260), items: [247, 254], want_response: true }, ItemSet { range: Range(260, 286), items: [260], want_response: true }, ItemSet { range: Range(557, 691), items: [586, 597], want_response: true }, ItemSet { range: Range(691, 742), items: [691], want_response: true }], wants: [346, 405, 742, 779, 851], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(93, 224), items: [154], want_response: false }, ItemSet { range: Range(224, 260), items: [224, 243, 257], want_response: false }, ItemSet { range: Range(260, 286), items: [], want_response: false }, ItemSet { range: Range(557, 691), items: [557], want_response: false }, ItemSet { range: Range(691, 742), items: [723, 729], want_response: false }, ItemSet { range: Range(17, 93), items: [19, 80], want_response: true }], wants: [286, 313, 422, 437, 508, 528, 531, 760, 777, 867, 947, 975, 93, 106, 247, 254, 260, 586, 597, 691], provide: [(346, true), (405, true), (742, true), (779, true), (851, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(17, 93), items: [17, 31, 77], want_response: false }], wants: [154, 224, 243, 257, 557, 723, 729, 19, 80], provide: [(286, true), (313, true), (422, true), (437, true), (508, true), (528, true), (531, true), (760, true), (777, true), (867, true), (947, true), (975, true), (93, true), (106, true), (247, true), (254, true), (260, true), (586, true), (597, true), (691, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [17, 31, 77], provide: [(154, true), (224, true), (243, true), (257, true), (557, true), (723, true), (729, true), (19, true), (80, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(17, true), (31, true), (77, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 31, 77, 93, 106, 247, 254, 260, 286, 313, 422, 437, 508, 528, 531, 586, 597, 691, 760, 777, 819, 867, 947, 975} + [991, 9, 13, 346, 405, 742, 779, 851, 154, 224, 243, 257, 557, 723, 729, 19, 80]
[INFO] [stdout] b all: {9, 13, 19, 80, 154, 224, 243, 257, 346, 405, 557, 723, 729, 742, 779, 819, 851, 991} + [286, 313, 422, 437, 508, 528, 531, 760, 777, 867, 947, 975, 93, 106, 247, 254, 260, 586, 597, 691, 17, 31, 77]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 13, 17, 19, 31, 77, 80, 93, 106, 154, 224, 243, 247, 254, 257, 260, 286, 313, 346, 405, 422, 437, 508, 528, 531, 557, 586, 597, 691, 723, 729, 742, 760, 777, 779, 819, 851, 867, 947, 975, 991]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 13, 17, 19, 31, 77, 80, 93, 106, 154, 224, 243, 247, 254, 257, 260, 286, 313, 346, 405, 422, 437, 508, 528, 531, 557, 586, 597, 691, 723, 729, 742, 760, 777, 779, 819, 851, 867, 947, 975, 991], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 13, 17, 19, 31, 77, 80, 93, 106, 154, 224, 243, 247, 254, 257, 260, 286, 313, 346, 405, 422, 437, 508, 528, 531, 557, 586, 597, 691, 723, 729, 742, 760, 777, 779, 819, 851, 867, 947, 975, 991], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {2, 26, 50, 52, 81, 94, 117, 118, 126, 130, 137, 146, 161, 184, 194, 207, 215, 226, 232, 267, 269, 271, 296, 298, 333, 353, 360, 366, 375, 376, 411, 441, 448, 468, 472, 481, 514, 515, 516, 527, 571, 572, 574, 576, 585, 596, 617, 621, 627, 638, 650, 673, 680, 723, 732, 750, 763, 774, 813, 818, 831, 867, 890, 899, 908, 941, 987, 996}
[INFO] [stdout] b items: {49, 51, 93, 100, 143, 147, 170, 200, 232, 234, 286, 310, 316, 325, 363, 390, 413, 418, 437, 461, 462, 522, 529, 539, 541, 586, 596, 599, 608, 617, 627, 631, 682, 688, 701, 706, 718, 725, 729, 751, 785, 794, 821, 836, 847, 861, 866, 943, 954, 964}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 997), fp: EncodedCountingMonoid(68, SumMonoid(31527)) }], item_sets: [ItemSet { range: Range(997, 2), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(2, 586), fp: EncodedCountingMonoid(25, SumMonoid(7731)) }, Fingerprint { range: Range(586, 997), fp: EncodedCountingMonoid(25, SumMonoid(18635)) }], item_sets: [ItemSet { range: Range(997, 2), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 298), fp: EncodedCountingMonoid(23, SumMonoid(3601)) }, Fingerprint { range: Range(298, 586), fp: EncodedCountingMonoid(22, SumMonoid(10132)) }, Fingerprint { range: Range(586, 774), fp: EncodedCountingMonoid(12, SumMonoid(8070)) }, Fingerprint { range: Range(774, 997), fp: EncodedCountingMonoid(11, SumMonoid(9724)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(2, 170), fp: EncodedCountingMonoid(6, SumMonoid(583)) }, Fingerprint { range: Range(170, 298), fp: EncodedCountingMonoid(5, SumMonoid(1122)) }, Fingerprint { range: Range(298, 437), fp: EncodedCountingMonoid(7, SumMonoid(2535)) }, Fingerprint { range: Range(437, 586), fp: EncodedCountingMonoid(7, SumMonoid(3491)) }, Fingerprint { range: Range(586, 688), fp: EncodedCountingMonoid(8, SumMonoid(4946)) }, Fingerprint { range: Range(688, 774), fp: EncodedCountingMonoid(7, SumMonoid(5018)) }, Fingerprint { range: Range(774, 861), fp: EncodedCountingMonoid(5, SumMonoid(4083)) }, Fingerprint { range: Range(861, 997), fp: EncodedCountingMonoid(5, SumMonoid(4588)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 118), fp: EncodedCountingMonoid(7, SumMonoid(422)) }, Fingerprint { range: Range(118, 170), fp: EncodedCountingMonoid(6, SumMonoid(818)) }, Fingerprint { range: Range(170, 232), fp: EncodedCountingMonoid(5, SumMonoid(1026)) }, Fingerprint { range: Range(232, 298), fp: EncodedCountingMonoid(5, SumMonoid(1335)) }, Fingerprint { range: Range(298, 366), fp: EncodedCountingMonoid(4, SumMonoid(1344)) }, Fingerprint { range: Range(366, 437), fp: EncodedCountingMonoid(4, SumMonoid(1528)) }, Fingerprint { range: Range(437, 516), fp: EncodedCountingMonoid(7, SumMonoid(3339)) }, Fingerprint { range: Range(516, 586), fp: EncodedCountingMonoid(7, SumMonoid(3921)) }, Fingerprint { range: Range(586, 638), fp: EncodedCountingMonoid(4, SumMonoid(2461)) }, Fingerprint { range: Range(638, 688), fp: EncodedCountingMonoid(4, SumMonoid(2641)) }, Fingerprint { range: Range(861, 941), fp: EncodedCountingMonoid(4, SumMonoid(3564)) }, Fingerprint { range: Range(941, 997), fp: EncodedCountingMonoid(3, SumMonoid(2924)) }], item_sets: [ItemSet { range: Range(688, 750), items: [723, 732], want_response: true }, ItemSet { range: Range(750, 774), items: [750, 763], want_response: true }, ItemSet { range: Range(774, 818), items: [774, 813], want_response: true }, ItemSet { range: Range(818, 861), items: [818, 831], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(586, 617), fp: EncodedCountingMonoid(4, SumMonoid(2389)) }, Fingerprint { range: Range(617, 638), fp: EncodedCountingMonoid(3, SumMonoid(1875)) }], item_sets: [ItemSet { range: Range(688, 750), items: [688, 701, 706, 718, 725, 729], want_response: false }, ItemSet { range: Range(750, 774), items: [751], want_response: false }, ItemSet { range: Range(774, 818), items: [785, 794], want_response: false }, ItemSet { range: Range(818, 861), items: [821, 836, 847], want_response: false }, ItemSet { range: Range(2, 93), items: [49, 51], want_response: true }, ItemSet { range: Range(93, 118), items: [93, 100], want_response: true }, ItemSet { range: Range(118, 170), items: [143, 147], want_response: true }, ItemSet { range: Range(170, 232), items: [170, 200], want_response: true }, ItemSet { range: Range(232, 286), items: [232, 234], want_response: true }, ItemSet { range: Range(286, 298), items: [286], want_response: true }, ItemSet { range: Range(298, 325), items: [310, 316], want_response: true }, ItemSet { range: Range(325, 366), items: [325, 363], want_response: true }, ItemSet { range: Range(366, 418), items: [390, 413], want_response: true }, ItemSet { range: Range(418, 437), items: [418], want_response: true }, ItemSet { range: Range(437, 462), items: [437, 461], want_response: true }, ItemSet { range: Range(462, 516), items: [462], want_response: true }, ItemSet { range: Range(516, 539), items: [522, 529], want_response: true }, ItemSet { range: Range(539, 586), items: [539, 541], want_response: true }, ItemSet { range: Range(638, 688), items: [682], want_response: true }, ItemSet { range: Range(861, 941), items: [861, 866], want_response: true }, ItemSet { range: Range(941, 964), items: [943, 954], want_response: true }, ItemSet { range: Range(964, 997), items: [964], want_response: true }], wants: [723, 732, 750, 763, 774, 813, 818, 831], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(2, 93), items: [2, 26, 50, 52, 81], want_response: false }, ItemSet { range: Range(93, 118), items: [94, 117], want_response: false }, ItemSet { range: Range(118, 170), items: [118, 126, 130, 137, 146, 161], want_response: false }, ItemSet { range: Range(170, 232), items: [184, 194, 207, 215, 226], want_response: false }, ItemSet { range: Range(232, 286), items: [232, 267, 269, 271], want_response: false }, ItemSet { range: Range(286, 298), items: [296], want_response: false }, ItemSet { range: Range(298, 325), items: [298], want_response: false }, ItemSet { range: Range(325, 366), items: [333, 353, 360], want_response: false }, ItemSet { range: Range(366, 418), items: [366, 375, 376, 411], want_response: false }, ItemSet { range: Range(418, 437), items: [], want_response: false }, ItemSet { range: Range(437, 462), items: [441, 448], want_response: false }, ItemSet { range: Range(462, 516), items: [468, 472, 481, 514, 515], want_response: false }, ItemSet { range: Range(516, 539), items: [516, 527], want_response: false }, ItemSet { range: Range(539, 586), items: [571, 572, 574, 576, 585], want_response: false }, ItemSet { range: Range(638, 688), items: [638, 650, 673, 680], want_response: false }, ItemSet { range: Range(861, 941), items: [867, 890, 899, 908], want_response: false }, ItemSet { range: Range(941, 964), items: [941], want_response: false }, ItemSet { range: Range(964, 997), items: [987, 996], want_response: false }, ItemSet { range: Range(586, 617), items: [596], want_response: true }, ItemSet { range: Range(617, 627), items: [617, 621], want_response: true }, ItemSet { range: Range(627, 638), items: [627], want_response: true }], wants: [688, 701, 706, 718, 725, 729, 751, 785, 794, 821, 836, 847, 49, 51, 93, 100, 143, 147, 170, 200, 234, 286, 310, 316, 325, 363, 390, 413, 418, 437, 461, 462, 522, 529, 539, 541, 682, 861, 866, 943, 954, 964], provide: [(723, true), (732, true), (750, true), (763, true), (774, true), (813, true), (818, true), (831, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(586, 617), items: [586, 596, 599, 608], want_response: false }, ItemSet { range: Range(617, 627), items: [617], want_response: false }, ItemSet { range: Range(627, 638), items: [627, 631], want_response: false }], wants: [2, 26, 50, 52, 81, 94, 117, 118, 126, 130, 137, 146, 161, 184, 194, 207, 215, 226, 267, 269, 271, 296, 298, 333, 353, 360, 366, 375, 376, 411, 441, 448, 468, 472, 481, 514, 515, 516, 527, 571, 572, 574, 576, 585, 638, 650, 673, 680, 867, 890, 899, 908, 941, 987, 996, 621], provide: [(688, true), (701, true), (706, true), (718, true), (725, true), (729, true), (751, true), (785, true), (794, true), (821, true), (836, true), (847, true), (49, true), (51, true), (93, true), (100, true), (143, true), (147, true), (170, true), (200, true), (234, true), (286, true), (310, true), (316, true), (325, true), (363, true), (390, true), (413, true), (418, true), (437, true), (461, true), (462, true), (522, true), (529, true), (539, true), (541, true), (682, true), (861, true), (866, true), (943, true), (954, true), (964, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [586, 599, 608, 631], provide: [(2, true), (26, true), (50, true), (52, true), (81, true), (94, true), (117, true), (118, true), (126, true), (130, true), (137, true), (146, true), (161, true), (184, true), (194, true), (207, true), (215, true), (226, true), (267, true), (269, true), (271, true), (296, true), (298, true), (333, true), (353, true), (360, true), (366, true), (375, true), (376, true), (411, true), (441, true), (448, true), (468, true), (472, true), (481, true), (514, true), (515, true), (516, true), (527, true), (571, true), (572, true), (574, true), (576, true), (585, true), (638, true), (650, true), (673, true), (680, true), (867, true), (890, true), (899, true), (908, true), (941, true), (987, true), (996, true), (621, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(586, true), (599, true), (608, true), (631, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {2, 26, 50, 52, 81, 94, 117, 118, 126, 130, 137, 146, 161, 184, 194, 207, 215, 226, 232, 267, 269, 271, 296, 298, 333, 353, 360, 366, 375, 376, 411, 441, 448, 468, 472, 481, 514, 515, 516, 527, 571, 572, 574, 576, 585, 596, 617, 621, 627, 638, 650, 673, 680, 723, 732, 750, 763, 774, 813, 818, 831, 867, 890, 899, 908, 941, 987, 996} + [688, 701, 706, 718, 725, 729, 751, 785, 794, 821, 836, 847, 49, 51, 93, 100, 143, 147, 170, 200, 234, 286, 310, 316, 325, 363, 390, 413, 418, 437, 461, 462, 522, 529, 539, 541, 682, 861, 866, 943, 954, 964, 586, 599, 608, 631]
[INFO] [stdout] b all: {49, 51, 93, 100, 143, 147, 170, 200, 232, 234, 286, 310, 316, 325, 363, 390, 413, 418, 437, 461, 462, 522, 529, 539, 541, 586, 596, 599, 608, 617, 627, 631, 682, 688, 701, 706, 718, 725, 729, 751, 785, 794, 821, 836, 847, 861, 866, 943, 954, 964} + [723, 732, 750, 763, 774, 813, 818, 831, 2, 26, 50, 52, 81, 94, 117, 118, 126, 130, 137, 146, 161, 184, 194, 207, 215, 226, 267, 269, 271, 296, 298, 333, 353, 360, 366, 375, 376, 411, 441, 448, 468, 472, 481, 514, 515, 516, 527, 571, 572, 574, 576, 585, 638, 650, 673, 680, 867, 890, 899, 908, 941, 987, 996, 621]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [2, 26, 49, 50, 51, 52, 81, 93, 94, 100, 117, 118, 126, 130, 137, 143, 146, 147, 161, 170, 184, 194, 200, 207, 215, 226, 232, 234, 267, 269, 271, 286, 296, 298, 310, 316, 325, 333, 353, 360, 363, 366, 375, 376, 390, 411, 413, 418, 437, 441, 448, 461, 462, 468, 472, 481, 514, 515, 516, 522, 527, 529, 539, 541, 571, 572, 574, 576, 585, 586, 596, 599, 608, 617, 621, 627, 631, 638, 650, 673, 680, 682, 688, 701, 706, 718, 723, 725, 729, 732, 750, 751, 763, 774, 785, 794, 813, 818, 821, 831, 836, 847, 861, 866, 867, 890, 899, 908, 941, 943, 954, 964, 987, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [2, 26, 49, 50, 51, 52, 81, 93, 94, 100, 117, 118, 126, 130, 137, 143, 146, 147, 161, 170, 184, 194, 200, 207, 215, 226, 232, 234, 267, 269, 271, 286, 296, 298, 310, 316, 325, 333, 353, 360, 363, 366, 375, 376, 390, 411, 413, 418, 437, 441, 448, 461, 462, 468, 472, 481, 514, 515, 516, 522, 527, 529, 539, 541, 571, 572, 574, 576, 585, 586, 596, 599, 608, 617, 621, 627, 631, 638, 650, 673, 680, 682, 688, 701, 706, 718, 723, 725, 729, 732, 750, 751, 763, 774, 785, 794, 813, 818, 821, 831, 836, 847, 861, 866, 867, 890, 899, 908, 941, 943, 954, 964, 987, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [2, 26, 49, 50, 51, 52, 81, 93, 94, 100, 117, 118, 126, 130, 137, 143, 146, 147, 161, 170, 184, 194, 200, 207, 215, 226, 232, 234, 267, 269, 271, 286, 296, 298, 310, 316, 325, 333, 353, 360, 363, 366, 375, 376, 390, 411, 413, 418, 437, 441, 448, 461, 462, 468, 472, 481, 514, 515, 516, 522, 527, 529, 539, 541, 571, 572, 574, 576, 585, 586, 596, 599, 608, 617, 621, 627, 631, 638, 650, 673, 680, 682, 688, 701, 706, 718, 723, 725, 729, 732, 750, 751, 763, 774, 785, 794, 813, 818, 821, 831, 836, 847, 861, 866, 867, 890, 899, 908, 941, 943, 954, 964, 987, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {3, 55, 72, 112, 134, 191, 236, 289, 324, 354, 380, 440, 443, 484, 535, 644, 660, 711, 737, 819, 954, 984}
[INFO] [stdout] b items: {37, 48, 60, 74, 75, 81, 185, 200, 204, 300, 310, 314, 315, 319, 338, 421, 426, 442, 490, 493, 496, 520, 524, 541, 550, 569, 614, 642, 653, 656, 676, 683, 685, 688, 733, 903, 923, 953, 973, 982, 994}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 985), fp: EncodedCountingMonoid(22, SumMonoid(9561)) }], item_sets: [ItemSet { range: Range(985, 3), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 496), fp: EncodedCountingMonoid(20, SumMonoid(5132)) }, Fingerprint { range: Range(496, 985), fp: EncodedCountingMonoid(20, SumMonoid(13964)) }], item_sets: [ItemSet { range: Range(985, 3), items: [994], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 289), fp: EncodedCountingMonoid(7, SumMonoid(803)) }, Fingerprint { range: Range(289, 496), fp: EncodedCountingMonoid(7, SumMonoid(2714)) }, Fingerprint { range: Range(496, 737), fp: EncodedCountingMonoid(4, SumMonoid(2550)) }, Fingerprint { range: Range(737, 985), fp: EncodedCountingMonoid(4, SumMonoid(3494)) }], item_sets: [], wants: [994], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 81), fp: EncodedCountingMonoid(5, SumMonoid(294)) }, Fingerprint { range: Range(81, 289), fp: EncodedCountingMonoid(4, SumMonoid(670)) }, Fingerprint { range: Range(289, 421), fp: EncodedCountingMonoid(6, SumMonoid(1896)) }, Fingerprint { range: Range(421, 496), fp: EncodedCountingMonoid(5, SumMonoid(2272)) }, Fingerprint { range: Range(496, 653), fp: EncodedCountingMonoid(8, SumMonoid(4456)) }, Fingerprint { range: Range(653, 737), fp: EncodedCountingMonoid(7, SumMonoid(4774)) }, Fingerprint { range: Range(737, 973), fp: EncodedCountingMonoid(3, SumMonoid(2779)) }], item_sets: [ItemSet { range: Range(973, 985), items: [973, 982], want_response: true }], wants: [], provide: [(994, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(973, 985), items: [984], want_response: false }, ItemSet { range: Range(3, 72), items: [3, 55], want_response: true }, ItemSet { range: Range(72, 81), items: [72], want_response: true }, ItemSet { range: Range(81, 191), items: [112, 134], want_response: true }, ItemSet { range: Range(191, 289), items: [191, 236], want_response: true }, ItemSet { range: Range(289, 354), items: [289, 324], want_response: true }, ItemSet { range: Range(354, 421), items: [354, 380], want_response: true }, ItemSet { range: Range(421, 484), items: [440, 443], want_response: true }, ItemSet { range: Range(484, 496), items: [484], want_response: true }, ItemSet { range: Range(496, 653), items: [535, 644], want_response: true }, ItemSet { range: Range(653, 737), items: [660, 711], want_response: true }, ItemSet { range: Range(737, 954), items: [737, 819], want_response: true }, ItemSet { range: Range(954, 973), items: [954], want_response: true }], wants: [973, 982], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(3, 72), items: [37, 48, 60], want_response: false }, ItemSet { range: Range(72, 81), items: [74, 75], want_response: false }, ItemSet { range: Range(81, 191), items: [81, 185], want_response: false }, ItemSet { range: Range(191, 289), items: [200, 204], want_response: false }, ItemSet { range: Range(289, 354), items: [300, 310, 314, 315, 319, 338], want_response: false }, ItemSet { range: Range(354, 421), items: [], want_response: false }, ItemSet { range: Range(421, 484), items: [421, 426, 442], want_response: false }, ItemSet { range: Range(484, 496), items: [490, 493], want_response: false }, ItemSet { range: Range(496, 653), items: [496, 520, 524, 541, 550, 569, 614, 642], want_response: false }, ItemSet { range: Range(653, 737), items: [653, 656, 676, 683, 685, 688, 733], want_response: false }, ItemSet { range: Range(737, 954), items: [903, 923, 953], want_response: false }, ItemSet { range: Range(954, 973), items: [], want_response: false }], wants: [984, 3, 55, 72, 112, 134, 191, 236, 289, 324, 354, 380, 440, 443, 484, 535, 644, 660, 711, 737, 819, 954], provide: [(973, true), (982, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [37, 48, 60, 74, 75, 81, 185, 200, 204, 300, 310, 314, 315, 319, 338, 421, 426, 442, 490, 493, 496, 520, 524, 541, 550, 569, 614, 642, 653, 656, 676, 683, 685, 688, 733, 903, 923, 953], provide: [(984, true), (3, true), (55, true), (72, true), (112, true), (134, true), (191, true), (236, true), (289, true), (324, true), (354, true), (380, true), (440, true), (443, true), (484, true), (535, true), (644, true), (660, true), (711, true), (737, true), (819, true), (954, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(37, true), (48, true), (60, true), (74, true), (75, true), (81, true), (185, true), (200, true), (204, true), (300, true), (310, true), (314, true), (315, true), (319, true), (338, true), (421, true), (426, true), (442, true), (490, true), (493, true), (496, true), (520, true), (524, true), (541, true), (550, true), (569, true), (614, true), (642, true), (653, true), (656, true), (676, true), (683, true), (685, true), (688, true), (733, true), (903, true), (923, true), (953, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {3, 55, 72, 112, 134, 191, 236, 289, 324, 354, 380, 440, 443, 484, 535, 644, 660, 711, 737, 819, 954, 984} + [994, 973, 982, 37, 48, 60, 74, 75, 81, 185, 200, 204, 300, 310, 314, 315, 319, 338, 421, 426, 442, 490, 493, 496, 520, 524, 541, 550, 569, 614, 642, 653, 656, 676, 683, 685, 688, 733, 903, 923, 953]
[INFO] [stdout] b all: {37, 48, 60, 74, 75, 81, 185, 200, 204, 300, 310, 314, 315, 319, 338, 421, 426, 442, 490, 493, 496, 520, 524, 541, 550, 569, 614, 642, 653, 656, 676, 683, 685, 688, 733, 903, 923, 953, 973, 982, 994} + [984, 3, 55, 72, 112, 134, 191, 236, 289, 324, 354, 380, 440, 443, 484, 535, 644, 660, 711, 737, 819, 954]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [3, 37, 48, 55, 60, 72, 74, 75, 81, 112, 134, 185, 191, 200, 204, 236, 289, 300, 310, 314, 315, 319, 324, 338, 354, 380, 421, 426, 440, 442, 443, 484, 490, 493, 496, 520, 524, 535, 541, 550, 569, 614, 642, 644, 653, 656, 660, 676, 683, 685, 688, 711, 733, 737, 819, 903, 923, 953, 954, 973, 982, 984, 994]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [3, 37, 48, 55, 60, 72, 74, 75, 81, 112, 134, 185, 191, 200, 204, 236, 289, 300, 310, 314, 315, 319, 324, 338, 354, 380, 421, 426, 440, 442, 443, 484, 490, 493, 496, 520, 524, 535, 541, 550, 569, 614, 642, 644, 653, 656, 660, 676, 683, 685, 688, 711, 733, 737, 819, 903, 923, 953, 954, 973, 982, 984, 994], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [3, 37, 48, 55, 60, 72, 74, 75, 81, 112, 134, 185, 191, 200, 204, 236, 289, 300, 310, 314, 315, 319, 324, 338, 354, 380, 421, 426, 440, 442, 443, 484, 490, 493, 496, 520, 524, 535, 541, 550, 569, 614, 642, 644, 653, 656, 660, 676, 683, 685, 688, 711, 733, 737, 819, 903, 923, 953, 954, 973, 982, 984, 994], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {6, 132, 720, 824}
[INFO] [stdout] b items: {14, 80, 85, 90, 140, 141, 271, 274, 289, 295, 304, 341, 411, 489, 582, 596, 634, 762, 764, 777, 779, 792, 876, 896, 911, 935, 968}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(6, 825), fp: EncodedCountingMonoid(4, SumMonoid(1682)) }], item_sets: [ItemSet { range: Range(825, 6), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(6, 341), fp: EncodedCountingMonoid(11, SumMonoid(1983)) }, Fingerprint { range: Range(341, 825), fp: EncodedCountingMonoid(11, SumMonoid(6927)) }], item_sets: [ItemSet { range: Range(825, 6), items: [876, 896, 911, 935, 968], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 341), items: [6, 132], want_response: true }, ItemSet { range: Range(341, 825), items: [720, 824], want_response: true }], wants: [876, 896, 911, 935, 968], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(6, 341), items: [14, 80, 85, 90, 140, 141, 271, 274, 289, 295, 304], want_response: false }, ItemSet { range: Range(341, 825), items: [341, 411, 489, 582, 596, 634, 762, 764, 777, 779, 792], want_response: false }], wants: [6, 132, 720, 824], provide: [(876, true), (896, true), (911, true), (935, true), (968, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [14, 80, 85, 90, 140, 141, 271, 274, 289, 295, 304, 341, 411, 489, 582, 596, 634, 762, 764, 777, 779, 792], provide: [(6, true), (132, true), (720, true), (824, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(14, true), (80, true), (85, true), (90, true), (140, true), (141, true), (271, true), (274, true), (289, true), (295, true), (304, true), (341, true), (411, true), (489, true), (582, true), (596, true), (634, true), (762, true), (764, true), (777, true), (779, true), (792, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {6, 132, 720, 824} + [876, 896, 911, 935, 968, 14, 80, 85, 90, 140, 141, 271, 274, 289, 295, 304, 341, 411, 489, 582, 596, 634, 762, 764, 777, 779, 792]
[INFO] [stdout] b all: {14, 80, 85, 90, 140, 141, 271, 274, 289, 295, 304, 341, 411, 489, 582, 596, 634, 762, 764, 777, 779, 792, 876, 896, 911, 935, 968} + [6, 132, 720, 824]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [6, 14, 80, 85, 90, 132, 140, 141, 271, 274, 289, 295, 304, 341, 411, 489, 582, 596, 634, 720, 762, 764, 777, 779, 792, 824, 876, 896, 911, 935, 968]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [6, 14, 80, 85, 90, 132, 140, 141, 271, 274, 289, 295, 304, 341, 411, 489, 582, 596, 634, 720, 762, 764, 777, 779, 792, 824, 876, 896, 911, 935, 968], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [6, 14, 80, 85, 90, 132, 140, 141, 271, 274, 289, 295, 304, 341, 411, 489, 582, 596, 634, 720, 762, 764, 777, 779, 792, 824, 876, 896, 911, 935, 968], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {28, 85, 114, 116, 144, 152, 153, 156, 202, 216, 217, 223, 231, 236, 258, 348, 370, 398, 418, 457, 472, 477, 486, 489, 516, 518, 528, 544, 547, 573, 574, 579, 629, 665, 681, 697, 716, 719, 723, 729, 762, 772, 844, 847, 870, 875, 878, 901, 917, 939, 975, 997, 998, 999}
[INFO] [stdout] b items: {35, 195, 503, 659, 695, 708, 752, 968}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(28, 1000), fp: EncodedCountingMonoid(54, SumMonoid(28958)) }], item_sets: [ItemSet { range: Range(1000, 28), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(28, 695), fp: EncodedCountingMonoid(4, SumMonoid(1392)) }, Fingerprint { range: Range(695, 1000), fp: EncodedCountingMonoid(4, SumMonoid(3123)) }], item_sets: [ItemSet { range: Range(1000, 28), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(28, 418), fp: EncodedCountingMonoid(18, SumMonoid(3647)) }, Fingerprint { range: Range(418, 695), fp: EncodedCountingMonoid(17, SumMonoid(9153)) }, Fingerprint { range: Range(695, 875), fp: EncodedCountingMonoid(10, SumMonoid(7679)) }, Fingerprint { range: Range(875, 1000), fp: EncodedCountingMonoid(9, SumMonoid(8479)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(28, 418), items: [35, 195], want_response: true }, ItemSet { range: Range(418, 695), items: [503, 659], want_response: true }, ItemSet { range: Range(695, 752), items: [695, 708], want_response: true }, ItemSet { range: Range(752, 875), items: [752], want_response: true }, ItemSet { range: Range(875, 1000), items: [968], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(28, 418), items: [28, 85, 114, 116, 144, 152, 153, 156, 202, 216, 217, 223, 231, 236, 258, 348, 370, 398], want_response: false }, ItemSet { range: Range(418, 695), items: [418, 457, 472, 477, 486, 489, 516, 518, 528, 544, 547, 573, 574, 579, 629, 665, 681], want_response: false }, ItemSet { range: Range(695, 752), items: [697, 716, 719, 723, 729], want_response: false }, ItemSet { range: Range(752, 875), items: [762, 772, 844, 847, 870], want_response: false }, ItemSet { range: Range(875, 1000), items: [875, 878, 901, 917, 939, 975, 997, 998, 999], want_response: false }], wants: [35, 195, 503, 659, 695, 708, 752, 968], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [28, 85, 114, 116, 144, 152, 153, 156, 202, 216, 217, 223, 231, 236, 258, 348, 370, 398, 418, 457, 472, 477, 486, 489, 516, 518, 528, 544, 547, 573, 574, 579, 629, 665, 681, 697, 716, 719, 723, 729, 762, 772, 844, 847, 870, 875, 878, 901, 917, 939, 975, 997, 998, 999], provide: [(35, true), (195, true), (503, true), (659, true), (695, true), (708, true), (752, true), (968, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(28, true), (85, true), (114, true), (116, true), (144, true), (152, true), (153, true), (156, true), (202, true), (216, true), (217, true), (223, true), (231, true), (236, true), (258, true), (348, true), (370, true), (398, true), (418, true), (457, true), (472, true), (477, true), (486, true), (489, true), (516, true), (518, true), (528, true), (544, true), (547, true), (573, true), (574, true), (579, true), (629, true), (665, true), (681, true), (697, true), (716, true), (719, true), (723, true), (729, true), (762, true), (772, true), (844, true), (847, true), (870, true), (875, true), (878, true), (901, true), (917, true), (939, true), (975, true), (997, true), (998, true), (999, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {28, 85, 114, 116, 144, 152, 153, 156, 202, 216, 217, 223, 231, 236, 258, 348, 370, 398, 418, 457, 472, 477, 486, 489, 516, 518, 528, 544, 547, 573, 574, 579, 629, 665, 681, 697, 716, 719, 723, 729, 762, 772, 844, 847, 870, 875, 878, 901, 917, 939, 975, 997, 998, 999} + [35, 195, 503, 659, 695, 708, 752, 968]
[INFO] [stdout] b all: {35, 195, 503, 659, 695, 708, 752, 968} + [28, 85, 114, 116, 144, 152, 153, 156, 202, 216, 217, 223, 231, 236, 258, 348, 370, 398, 418, 457, 472, 477, 486, 489, 516, 518, 528, 544, 547, 573, 574, 579, 629, 665, 681, 697, 716, 719, 723, 729, 762, 772, 844, 847, 870, 875, 878, 901, 917, 939, 975, 997, 998, 999]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [28, 35, 85, 114, 116, 144, 152, 153, 156, 195, 202, 216, 217, 223, 231, 236, 258, 348, 370, 398, 418, 457, 472, 477, 486, 489, 503, 516, 518, 528, 544, 547, 573, 574, 579, 629, 659, 665, 681, 695, 697, 708, 716, 719, 723, 729, 752, 762, 772, 844, 847, 870, 875, 878, 901, 917, 939, 968, 975, 997, 998, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [28, 35, 85, 114, 116, 144, 152, 153, 156, 195, 202, 216, 217, 223, 231, 236, 258, 348, 370, 398, 418, 457, 472, 477, 486, 489, 503, 516, 518, 528, 544, 547, 573, 574, 579, 629, 659, 665, 681, 695, 697, 708, 716, 719, 723, 729, 752, 762, 772, 844, 847, 870, 875, 878, 901, 917, 939, 968, 975, 997, 998, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [28, 35, 85, 114, 116, 144, 152, 153, 156, 195, 202, 216, 217, 223, 231, 236, 258, 348, 370, 398, 418, 457, 472, 477, 486, 489, 503, 516, 518, 528, 544, 547, 573, 574, 579, 629, 659, 665, 681, 695, 697, 708, 716, 719, 723, 729, 752, 762, 772, 844, 847, 870, 875, 878, 901, 917, 939, 968, 975, 997, 998, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {65, 86, 88, 102, 139, 163, 185, 213, 399, 529, 537, 635, 796, 868, 886, 913, 936, 948}
[INFO] [stdout] b items: {15, 20, 35, 141, 333, 418, 440, 636, 741, 768, 969, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(65, 949), fp: EncodedCountingMonoid(18, SumMonoid(8488)) }], item_sets: [ItemSet { range: Range(949, 65), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(65, 636), fp: EncodedCountingMonoid(4, SumMonoid(1332)) }, Fingerprint { range: Range(636, 949), fp: EncodedCountingMonoid(3, SumMonoid(2145)) }], item_sets: [ItemSet { range: Range(949, 65), items: [969, 996, 15, 20, 35], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(65, 185), fp: EncodedCountingMonoid(6, SumMonoid(643)) }, Fingerprint { range: Range(185, 636), fp: EncodedCountingMonoid(6, SumMonoid(2498)) }, Fingerprint { range: Range(636, 913), fp: EncodedCountingMonoid(3, SumMonoid(2550)) }, Fingerprint { range: Range(913, 949), fp: EncodedCountingMonoid(3, SumMonoid(2797)) }], item_sets: [], wants: [969, 996, 15, 20, 35], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(65, 185), items: [141], want_response: true }, ItemSet { range: Range(185, 440), items: [333, 418], want_response: true }, ItemSet { range: Range(440, 636), items: [440], want_response: true }, ItemSet { range: Range(636, 768), items: [636, 741], want_response: true }, ItemSet { range: Range(768, 913), items: [768], want_response: true }, ItemSet { range: Range(913, 949), items: [], want_response: true }], wants: [], provide: [(969, true), (996, true), (15, true), (20, true), (35, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(65, 185), items: [65, 86, 88, 102, 139, 163], want_response: false }, ItemSet { range: Range(185, 440), items: [185, 213, 399], want_response: false }, ItemSet { range: Range(440, 636), items: [529, 537, 635], want_response: false }, ItemSet { range: Range(636, 768), items: [], want_response: false }, ItemSet { range: Range(768, 913), items: [796, 868, 886], want_response: false }, ItemSet { range: Range(913, 949), items: [913, 936, 948], want_response: false }], wants: [141, 333, 418, 440, 636, 741, 768], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [65, 86, 88, 102, 139, 163, 185, 213, 399, 529, 537, 635, 796, 868, 886, 913, 936, 948], provide: [(141, true), (333, true), (418, true), (440, true), (636, true), (741, true), (768, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(65, true), (86, true), (88, true), (102, true), (139, true), (163, true), (185, true), (213, true), (399, true), (529, true), (537, true), (635, true), (796, true), (868, true), (886, true), (913, true), (936, true), (948, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {65, 86, 88, 102, 139, 163, 185, 213, 399, 529, 537, 635, 796, 868, 886, 913, 936, 948} + [969, 996, 15, 20, 35, 141, 333, 418, 440, 636, 741, 768]
[INFO] [stdout] b all: {15, 20, 35, 141, 333, 418, 440, 636, 741, 768, 969, 996} + [65, 86, 88, 102, 139, 163, 185, 213, 399, 529, 537, 635, 796, 868, 886, 913, 936, 948]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [15, 20, 35, 65, 86, 88, 102, 139, 141, 163, 185, 213, 333, 399, 418, 440, 529, 537, 635, 636, 741, 768, 796, 868, 886, 913, 936, 948, 969, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [15, 20, 35, 65, 86, 88, 102, 139, 141, 163, 185, 213, 333, 399, 418, 440, 529, 537, 635, 636, 741, 768, 796, 868, 886, 913, 936, 948, 969, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [15, 20, 35, 65, 86, 88, 102, 139, 141, 163, 185, 213, 333, 399, 418, 440, 529, 537, 635, 636, 741, 768, 796, 868, 886, 913, 936, 948, 969, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 18, 36, 86, 98, 106, 114, 124, 142, 153, 157, 159, 161, 180, 182, 198, 211, 227, 238, 306, 317, 318, 331, 341, 344, 351, 352, 360, 370, 384, 395, 398, 434, 437, 440, 463, 478, 484, 494, 499, 507, 513, 519, 522, 529, 540, 560, 599, 621, 627, 656, 664, 668, 684, 688, 691, 705, 707, 708, 735, 749, 766, 783, 787, 788, 792, 794, 823, 826, 845, 846, 850, 858, 863, 865, 877, 889, 898, 899, 931, 954, 973, 978}
[INFO] [stdout] b items: {17, 21, 99, 101, 123, 137, 143, 151, 161, 172, 176, 188, 240, 261, 262, 284, 310, 359, 360, 365, 399, 434, 449, 501, 536, 562, 593, 609, 635, 644, 646, 675, 696, 699, 700, 712, 714, 728, 783, 824, 853, 907}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 979), fp: EncodedCountingMonoid(83, SumMonoid(42964)) }], item_sets: [ItemSet { range: Range(979, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 434), fp: EncodedCountingMonoid(21, SumMonoid(4329)) }, Fingerprint { range: Range(434, 979), fp: EncodedCountingMonoid(21, SumMonoid(13900)) }], item_sets: [ItemSet { range: Range(979, 1), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 211), fp: EncodedCountingMonoid(16, SumMonoid(1915)) }, Fingerprint { range: Range(211, 434), fp: EncodedCountingMonoid(16, SumMonoid(5243)) }, Fingerprint { range: Range(434, 708), fp: EncodedCountingMonoid(26, SumMonoid(14729)) }, Fingerprint { range: Range(708, 979), fp: EncodedCountingMonoid(25, SumMonoid(21077)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 143), fp: EncodedCountingMonoid(6, SumMonoid(498)) }, Fingerprint { range: Range(143, 211), fp: EncodedCountingMonoid(6, SumMonoid(991)) }, Fingerprint { range: Range(211, 359), fp: EncodedCountingMonoid(5, SumMonoid(1357)) }, Fingerprint { range: Range(359, 434), fp: EncodedCountingMonoid(4, SumMonoid(1483)) }, Fingerprint { range: Range(434, 635), fp: EncodedCountingMonoid(7, SumMonoid(3684)) }, Fingerprint { range: Range(635, 708), fp: EncodedCountingMonoid(7, SumMonoid(4695)) }, Fingerprint { range: Range(708, 824), fp: EncodedCountingMonoid(4, SumMonoid(2937)) }, Fingerprint { range: Range(824, 979), fp: EncodedCountingMonoid(3, SumMonoid(2584)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 106), fp: EncodedCountingMonoid(5, SumMonoid(239)) }, Fingerprint { range: Range(106, 143), fp: EncodedCountingMonoid(4, SumMonoid(486)) }, Fingerprint { range: Range(143, 180), fp: EncodedCountingMonoid(4, SumMonoid(630)) }, Fingerprint { range: Range(180, 211), fp: EncodedCountingMonoid(3, SumMonoid(560)) }, Fingerprint { range: Range(211, 331), fp: EncodedCountingMonoid(6, SumMonoid(1617)) }, Fingerprint { range: Range(331, 359), fp: EncodedCountingMonoid(5, SumMonoid(1719)) }, Fingerprint { range: Range(359, 395), fp: EncodedCountingMonoid(3, SumMonoid(1114)) }, Fingerprint { range: Range(434, 513), fp: EncodedCountingMonoid(9, SumMonoid(4236)) }, Fingerprint { range: Range(513, 635), fp: EncodedCountingMonoid(9, SumMonoid(5030)) }, Fingerprint { range: Range(635, 688), fp: EncodedCountingMonoid(4, SumMonoid(2672)) }, Fingerprint { range: Range(688, 708), fp: EncodedCountingMonoid(4, SumMonoid(2791)) }, Fingerprint { range: Range(708, 787), fp: EncodedCountingMonoid(5, SumMonoid(3741)) }, Fingerprint { range: Range(787, 824), fp: EncodedCountingMonoid(5, SumMonoid(3984)) }, Fingerprint { range: Range(824, 889), fp: EncodedCountingMonoid(8, SumMonoid(6830)) }, Fingerprint { range: Range(889, 979), fp: EncodedCountingMonoid(7, SumMonoid(6522)) }], item_sets: [ItemSet { range: Range(395, 434), items: [395, 398], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(143, 172), fp: EncodedCountingMonoid(3, SumMonoid(455)) }, Fingerprint { range: Range(211, 284), fp: EncodedCountingMonoid(3, SumMonoid(763)) }], item_sets: [ItemSet { range: Range(395, 434), items: [399], want_response: false }, ItemSet { range: Range(1, 99), items: [17, 21], want_response: true }, ItemSet { range: Range(99, 106), items: [99, 101], want_response: true }, ItemSet { range: Range(106, 143), items: [123, 137], want_response: true }, ItemSet { range: Range(172, 180), items: [172, 176], want_response: true }, ItemSet { range: Range(180, 211), items: [188], want_response: true }, ItemSet { range: Range(284, 331), items: [284, 310], want_response: true }, ItemSet { range: Range(331, 359), items: [], want_response: true }, ItemSet { range: Range(359, 365), items: [359, 360], want_response: true }, ItemSet { range: Range(365, 395), items: [365], want_response: true }, ItemSet { range: Range(434, 501), items: [434, 449], want_response: true }, ItemSet { range: Range(501, 513), items: [501], want_response: true }, ItemSet { range: Range(513, 593), items: [536, 562], want_response: true }, ItemSet { range: Range(593, 635), items: [593, 609], want_response: true }, ItemSet { range: Range(635, 646), items: [635, 644], want_response: true }, ItemSet { range: Range(646, 688), items: [646, 675], want_response: true }, ItemSet { range: Range(688, 700), items: [696, 699], want_response: true }, ItemSet { range: Range(700, 708), items: [700], want_response: true }, ItemSet { range: Range(708, 728), items: [712, 714], want_response: true }, ItemSet { range: Range(728, 787), items: [728, 783], want_response: true }, ItemSet { range: Range(787, 824), items: [], want_response: true }, ItemSet { range: Range(824, 889), items: [824, 853], want_response: true }, ItemSet { range: Range(889, 979), items: [907], want_response: true }], wants: [395, 398], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(1, 99), items: [1, 18, 36, 86, 98], want_response: false }, ItemSet { range: Range(99, 106), items: [], want_response: false }, ItemSet { range: Range(106, 143), items: [106, 114, 124, 142], want_response: false }, ItemSet { range: Range(172, 180), items: [], want_response: false }, ItemSet { range: Range(180, 211), items: [180, 182, 198], want_response: false }, ItemSet { range: Range(284, 331), items: [306, 317, 318], want_response: false }, ItemSet { range: Range(331, 359), items: [331, 341, 344, 351, 352], want_response: false }, ItemSet { range: Range(359, 365), items: [360], want_response: false }, ItemSet { range: Range(365, 395), items: [370, 384], want_response: false }, ItemSet { range: Range(434, 501), items: [434, 437, 440, 463, 478, 484, 494, 499], want_response: false }, ItemSet { range: Range(501, 513), items: [507], want_response: false }, ItemSet { range: Range(513, 593), items: [513, 519, 522, 529, 540, 560], want_response: false }, ItemSet { range: Range(593, 635), items: [599, 621, 627], want_response: false }, ItemSet { range: Range(635, 646), items: [], want_response: false }, ItemSet { range: Range(646, 688), items: [656, 664, 668, 684], want_response: false }, ItemSet { range: Range(688, 700), items: [688, 691], want_response: false }, ItemSet { range: Range(700, 708), items: [705, 707], want_response: false }, ItemSet { range: Range(708, 728), items: [708], want_response: false }, ItemSet { range: Range(728, 787), items: [735, 749, 766, 783], want_response: false }, ItemSet { range: Range(787, 824), items: [787, 788, 792, 794, 823], want_response: false }, ItemSet { range: Range(824, 889), items: [826, 845, 846, 850, 858, 863, 865, 877], want_response: false }, ItemSet { range: Range(889, 979), items: [889, 898, 899, 931, 954, 973, 978], want_response: false }, ItemSet { range: Range(143, 159), items: [153, 157], want_response: true }, ItemSet { range: Range(159, 172), items: [159, 161], want_response: true }, ItemSet { range: Range(211, 238), items: [211, 227], want_response: true }, ItemSet { range: Range(238, 284), items: [238], want_response: true }], wants: [399, 17, 21, 99, 101, 123, 137, 172, 176, 188, 284, 310, 359, 365, 449, 501, 536, 562, 593, 609, 635, 644, 646, 675, 696, 699, 700, 712, 714, 728, 824, 853, 907], provide: [(395, true), (398, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(143, 159), items: [143, 151], want_response: false }, ItemSet { range: Range(159, 172), items: [161], want_response: false }, ItemSet { range: Range(211, 238), items: [], want_response: false }, ItemSet { range: Range(238, 284), items: [240, 261, 262], want_response: false }], wants: [1, 18, 36, 86, 98, 106, 114, 124, 142, 180, 182, 198, 306, 317, 318, 331, 341, 344, 351, 352, 370, 384, 437, 440, 463, 478, 484, 494, 499, 507, 513, 519, 522, 529, 540, 560, 599, 621, 627, 656, 664, 668, 684, 688, 691, 705, 707, 708, 735, 749, 766, 787, 788, 792, 794, 823, 826, 845, 846, 850, 858, 863, 865, 877, 889, 898, 899, 931, 954, 973, 978, 153, 157, 159, 211, 227, 238], provide: [(399, true), (17, true), (21, true), (99, true), (101, true), (123, true), (137, true), (172, true), (176, true), (188, true), (284, true), (310, true), (359, true), (365, true), (449, true), (501, true), (536, true), (562, true), (593, true), (609, true), (635, true), (644, true), (646, true), (675, true), (696, true), (699, true), (700, true), (712, true), (714, true), (728, true), (824, true), (853, true), (907, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [143, 151, 240, 261, 262], provide: [(1, true), (18, true), (36, true), (86, true), (98, true), (106, true), (114, true), (124, true), (142, true), (180, true), (182, true), (198, true), (306, true), (317, true), (318, true), (331, true), (341, true), (344, true), (351, true), (352, true), (370, true), (384, true), (437, true), (440, true), (463, true), (478, true), (484, true), (494, true), (499, true), (507, true), (513, true), (519, true), (522, true), (529, true), (540, true), (560, true), (599, true), (621, true), (627, true), (656, true), (664, true), (668, true), (684, true), (688, true), (691, true), (705, true), (707, true), (708, true), (735, true), (749, true), (766, true), (787, true), (788, true), (792, true), (794, true), (823, true), (826, true), (845, true), (846, true), (850, true), (858, true), (863, true), (865, true), (877, true), (889, true), (898, true), (899, true), (931, true), (954, true), (973, true), (978, true), (153, true), (157, true), (159, true), (211, true), (227, true), (238, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(143, true), (151, true), (240, true), (261, true), (262, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 18, 36, 86, 98, 106, 114, 124, 142, 153, 157, 159, 161, 180, 182, 198, 211, 227, 238, 306, 317, 318, 331, 341, 344, 351, 352, 360, 370, 384, 395, 398, 434, 437, 440, 463, 478, 484, 494, 499, 507, 513, 519, 522, 529, 540, 560, 599, 621, 627, 656, 664, 668, 684, 688, 691, 705, 707, 708, 735, 749, 766, 783, 787, 788, 792, 794, 823, 826, 845, 846, 850, 858, 863, 865, 877, 889, 898, 899, 931, 954, 973, 978} + [399, 17, 21, 99, 101, 123, 137, 172, 176, 188, 284, 310, 359, 365, 449, 501, 536, 562, 593, 609, 635, 644, 646, 675, 696, 699, 700, 712, 714, 728, 824, 853, 907, 143, 151, 240, 261, 262]
[INFO] [stdout] b all: {17, 21, 99, 101, 123, 137, 143, 151, 161, 172, 176, 188, 240, 261, 262, 284, 310, 359, 360, 365, 399, 434, 449, 501, 536, 562, 593, 609, 635, 644, 646, 675, 696, 699, 700, 712, 714, 728, 783, 824, 853, 907} + [395, 398, 1, 18, 36, 86, 98, 106, 114, 124, 142, 180, 182, 198, 306, 317, 318, 331, 341, 344, 351, 352, 370, 384, 437, 440, 463, 478, 484, 494, 499, 507, 513, 519, 522, 529, 540, 560, 599, 621, 627, 656, 664, 668, 684, 688, 691, 705, 707, 708, 735, 749, 766, 787, 788, 792, 794, 823, 826, 845, 846, 850, 858, 863, 865, 877, 889, 898, 899, 931, 954, 973, 978, 153, 157, 159, 211, 227, 238]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 17, 18, 21, 36, 86, 98, 99, 101, 106, 114, 123, 124, 137, 142, 143, 151, 153, 157, 159, 161, 172, 176, 180, 182, 188, 198, 211, 227, 238, 240, 261, 262, 284, 306, 310, 317, 318, 331, 341, 344, 351, 352, 359, 360, 365, 370, 384, 395, 398, 399, 434, 437, 440, 449, 463, 478, 484, 494, 499, 501, 507, 513, 519, 522, 529, 536, 540, 560, 562, 593, 599, 609, 621, 627, 635, 644, 646, 656, 664, 668, 675, 684, 688, 691, 696, 699, 700, 705, 707, 708, 712, 714, 728, 735, 749, 766, 783, 787, 788, 792, 794, 823, 824, 826, 845, 846, 850, 853, 858, 863, 865, 877, 889, 898, 899, 907, 931, 954, 973, 978]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 17, 18, 21, 36, 86, 98, 99, 101, 106, 114, 123, 124, 137, 142, 143, 151, 153, 157, 159, 161, 172, 176, 180, 182, 188, 198, 211, 227, 238, 240, 261, 262, 284, 306, 310, 317, 318, 331, 341, 344, 351, 352, 359, 360, 365, 370, 384, 395, 398, 399, 434, 437, 440, 449, 463, 478, 484, 494, 499, 501, 507, 513, 519, 522, 529, 536, 540, 560, 562, 593, 599, 609, 621, 627, 635, 644, 646, 656, 664, 668, 675, 684, 688, 691, 696, 699, 700, 705, 707, 708, 712, 714, 728, 735, 749, 766, 783, 787, 788, 792, 794, 823, 824, 826, 845, 846, 850, 853, 858, 863, 865, 877, 889, 898, 899, 907, 931, 954, 973, 978], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 17, 18, 21, 36, 86, 98, 99, 101, 106, 114, 123, 124, 137, 142, 143, 151, 153, 157, 159, 161, 172, 176, 180, 182, 188, 198, 211, 227, 238, 240, 261, 262, 284, 306, 310, 317, 318, 331, 341, 344, 351, 352, 359, 360, 365, 370, 384, 395, 398, 399, 434, 437, 440, 449, 463, 478, 484, 494, 499, 501, 507, 513, 519, 522, 529, 536, 540, 560, 562, 593, 599, 609, 621, 627, 635, 644, 646, 656, 664, 668, 675, 684, 688, 691, 696, 699, 700, 705, 707, 708, 712, 714, 728, 735, 749, 766, 783, 787, 788, 792, 794, 823, 824, 826, 845, 846, 850, 853, 858, 863, 865, 877, 889, 898, 899, 907, 931, 954, 973, 978], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {4, 27, 66, 95, 104, 116, 118, 154, 156, 271, 273, 283, 298, 334, 396, 424, 433, 450, 459, 462, 494, 496, 505, 538, 555, 563, 587, 685, 713, 714, 769, 796, 837, 925}
[INFO] [stdout] b items: {21, 67, 73, 106, 146, 199, 244, 302, 310, 315, 322, 365, 369, 373, 382, 395, 414, 467, 469, 515, 520, 539, 555, 562, 649, 658, 754, 804, 822, 838, 852, 878, 954, 974, 976}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 926), fp: EncodedCountingMonoid(34, SumMonoid(14100)) }], item_sets: [ItemSet { range: Range(926, 4), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 414), fp: EncodedCountingMonoid(16, SumMonoid(3989)) }, Fingerprint { range: Range(414, 926), fp: EncodedCountingMonoid(16, SumMonoid(10296)) }], item_sets: [ItemSet { range: Range(926, 4), items: [954, 974, 976], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 156), fp: EncodedCountingMonoid(8, SumMonoid(684)) }, Fingerprint { range: Range(156, 414), fp: EncodedCountingMonoid(7, SumMonoid(2011)) }, Fingerprint { range: Range(414, 563), fp: EncodedCountingMonoid(10, SumMonoid(4816)) }, Fingerprint { range: Range(563, 926), fp: EncodedCountingMonoid(9, SumMonoid(6589)) }], item_sets: [], wants: [954, 974, 976], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 106), fp: EncodedCountingMonoid(3, SumMonoid(161)) }, Fingerprint { range: Range(156, 365), fp: EncodedCountingMonoid(6, SumMonoid(1692)) }, Fingerprint { range: Range(365, 414), fp: EncodedCountingMonoid(5, SumMonoid(1884)) }, Fingerprint { range: Range(414, 520), fp: EncodedCountingMonoid(4, SumMonoid(1865)) }, Fingerprint { range: Range(520, 563), fp: EncodedCountingMonoid(4, SumMonoid(2176)) }, Fingerprint { range: Range(563, 822), fp: EncodedCountingMonoid(4, SumMonoid(2865)) }, Fingerprint { range: Range(822, 926), fp: EncodedCountingMonoid(4, SumMonoid(3390)) }], item_sets: [ItemSet { range: Range(106, 156), items: [106, 146], want_response: true }], wants: [], provide: [(954, true), (974, true), (976, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 95), fp: EncodedCountingMonoid(3, SumMonoid(97)) }, Fingerprint { range: Range(156, 283), fp: EncodedCountingMonoid(3, SumMonoid(700)) }, Fingerprint { range: Range(283, 365), fp: EncodedCountingMonoid(3, SumMonoid(915)) }, Fingerprint { range: Range(414, 462), fp: EncodedCountingMonoid(4, SumMonoid(1766)) }, Fingerprint { range: Range(462, 520), fp: EncodedCountingMonoid(4, SumMonoid(1957)) }, Fingerprint { range: Range(563, 714), fp: EncodedCountingMonoid(4, SumMonoid(2548)) }, Fingerprint { range: Range(714, 822), fp: EncodedCountingMonoid(3, SumMonoid(2279)) }], item_sets: [ItemSet { range: Range(106, 156), items: [116, 118, 154], want_response: false }, ItemSet { range: Range(95, 106), items: [95, 104], want_response: true }, ItemSet { range: Range(365, 414), items: [396], want_response: true }, ItemSet { range: Range(520, 563), items: [538, 555], want_response: true }, ItemSet { range: Range(822, 926), items: [837, 925], want_response: true }], wants: [106, 146], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(95, 106), items: [], want_response: false }, ItemSet { range: Range(365, 414), items: [365, 369, 373, 382, 395], want_response: false }, ItemSet { range: Range(520, 563), items: [520, 539, 555, 562], want_response: false }, ItemSet { range: Range(822, 926), items: [822, 838, 852, 878], want_response: false }, ItemSet { range: Range(4, 73), items: [21, 67], want_response: true }, ItemSet { range: Range(73, 95), items: [73], want_response: true }, ItemSet { range: Range(156, 283), items: [199, 244], want_response: true }, ItemSet { range: Range(283, 315), items: [302, 310], want_response: true }, ItemSet { range: Range(315, 365), items: [315, 322], want_response: true }, ItemSet { range: Range(414, 462), items: [414], want_response: true }, ItemSet { range: Range(462, 515), items: [467, 469], want_response: true }, ItemSet { range: Range(515, 520), items: [515], want_response: true }, ItemSet { range: Range(563, 714), items: [649, 658], want_response: true }, ItemSet { range: Range(714, 822), items: [754, 804], want_response: true }], wants: [116, 118, 154, 95, 104, 396, 538, 837, 925], provide: [(106, true), (146, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(4, 73), items: [4, 27, 66], want_response: false }, ItemSet { range: Range(73, 95), items: [], want_response: false }, ItemSet { range: Range(156, 283), items: [156, 271, 273], want_response: false }, ItemSet { range: Range(283, 315), items: [283, 298], want_response: false }, ItemSet { range: Range(315, 365), items: [334], want_response: false }, ItemSet { range: Range(414, 462), items: [424, 433, 450, 459], want_response: false }, ItemSet { range: Range(462, 515), items: [462, 494, 496, 505], want_response: false }, ItemSet { range: Range(515, 520), items: [], want_response: false }, ItemSet { range: Range(563, 714), items: [563, 587, 685, 713], want_response: false }, ItemSet { range: Range(714, 822), items: [714, 769, 796], want_response: false }], wants: [365, 369, 373, 382, 395, 520, 539, 562, 822, 838, 852, 878, 21, 67, 73, 199, 244, 302, 310, 315, 322, 414, 467, 469, 515, 649, 658, 754, 804], provide: [(116, true), (118, true), (154, true), (95, true), (104, true), (396, true), (538, true), (837, true), (925, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [4, 27, 66, 156, 271, 273, 283, 298, 334, 424, 433, 450, 459, 462, 494, 496, 505, 563, 587, 685, 713, 714, 769, 796], provide: [(365, true), (369, true), (373, true), (382, true), (395, true), (520, true), (539, true), (562, true), (822, true), (838, true), (852, true), (878, true), (21, true), (67, true), (73, true), (199, true), (244, true), (302, true), (310, true), (315, true), (322, true), (414, true), (467, true), (469, true), (515, true), (649, true), (658, true), (754, true), (804, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(4, true), (27, true), (66, true), (156, true), (271, true), (273, true), (283, true), (298, true), (334, true), (424, true), (433, true), (450, true), (459, true), (462, true), (494, true), (496, true), (505, true), (563, true), (587, true), (685, true), (713, true), (714, true), (769, true), (796, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {4, 27, 66, 95, 104, 116, 118, 154, 156, 271, 273, 283, 298, 334, 396, 424, 433, 450, 459, 462, 494, 496, 505, 538, 555, 563, 587, 685, 713, 714, 769, 796, 837, 925} + [954, 974, 976, 106, 146, 365, 369, 373, 382, 395, 520, 539, 562, 822, 838, 852, 878, 21, 67, 73, 199, 244, 302, 310, 315, 322, 414, 467, 469, 515, 649, 658, 754, 804]
[INFO] [stdout] b all: {21, 67, 73, 106, 146, 199, 244, 302, 310, 315, 322, 365, 369, 373, 382, 395, 414, 467, 469, 515, 520, 539, 555, 562, 649, 658, 754, 804, 822, 838, 852, 878, 954, 974, 976} + [116, 118, 154, 95, 104, 396, 538, 837, 925, 4, 27, 66, 156, 271, 273, 283, 298, 334, 424, 433, 450, 459, 462, 494, 496, 505, 563, 587, 685, 713, 714, 769, 796]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [4, 21, 27, 66, 67, 73, 95, 104, 106, 116, 118, 146, 154, 156, 199, 244, 271, 273, 283, 298, 302, 310, 315, 322, 334, 365, 369, 373, 382, 395, 396, 414, 424, 433, 450, 459, 462, 467, 469, 494, 496, 505, 515, 520, 538, 539, 555, 562, 563, 587, 649, 658, 685, 713, 714, 754, 769, 796, 804, 822, 837, 838, 852, 878, 925, 954, 974, 976]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [4, 21, 27, 66, 67, 73, 95, 104, 106, 116, 118, 146, 154, 156, 199, 244, 271, 273, 283, 298, 302, 310, 315, 322, 334, 365, 369, 373, 382, 395, 396, 414, 424, 433, 450, 459, 462, 467, 469, 494, 496, 505, 515, 520, 538, 539, 555, 562, 563, 587, 649, 658, 685, 713, 714, 754, 769, 796, 804, 822, 837, 838, 852, 878, 925, 954, 974, 976], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [4, 21, 27, 66, 67, 73, 95, 104, 106, 116, 118, 146, 154, 156, 199, 244, 271, 273, 283, 298, 302, 310, 315, 322, 334, 365, 369, 373, 382, 395, 396, 414, 424, 433, 450, 459, 462, 467, 469, 494, 496, 505, 515, 520, 538, 539, 555, 562, 563, 587, 649, 658, 685, 713, 714, 754, 769, 796, 804, 822, 837, 838, 852, 878, 925, 954, 974, 976], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {15, 39, 41, 47, 73, 83, 99, 112, 114, 138, 145, 177, 197, 209, 232, 236, 241, 310, 330, 346, 348, 375, 385, 392, 414, 415, 442, 445, 450, 466, 475, 480, 488, 507, 521, 539, 551, 563, 619, 620, 654, 676, 680, 688, 694, 710, 711, 721, 728, 733, 742, 746, 763, 797, 809, 813, 826, 828, 830, 855, 874, 885, 907, 909, 916, 917, 944, 972}
[INFO] [stdout] b items: {5, 24, 34, 48, 52, 54, 60, 73, 80, 83, 95, 116, 130, 135, 159, 164, 188, 225, 226, 227, 228, 229, 273, 286, 305, 355, 361, 362, 370, 405, 419, 431, 452, 477, 504, 517, 533, 537, 542, 552, 555, 557, 581, 599, 601, 614, 638, 646, 696, 700, 728, 743, 766, 769, 770, 776, 780, 781, 791, 811, 818, 848, 864, 877, 878, 888, 894, 896, 897, 900, 907, 912, 918, 919, 924, 936, 951, 952, 954, 969, 984, 985}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(15, 973), fp: EncodedCountingMonoid(68, SumMonoid(35007)) }], item_sets: [ItemSet { range: Range(973, 15), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(15, 557), fp: EncodedCountingMonoid(40, SumMonoid(10866)) }, Fingerprint { range: Range(557, 973), fp: EncodedCountingMonoid(39, SumMonoid(31449)) }], item_sets: [ItemSet { range: Range(973, 15), items: [984, 985, 5], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(15, 346), fp: EncodedCountingMonoid(19, SumMonoid(2838)) }, Fingerprint { range: Range(346, 557), fp: EncodedCountingMonoid(18, SumMonoid(8039)) }, Fingerprint { range: Range(557, 797), fp: EncodedCountingMonoid(16, SumMonoid(11048)) }, Fingerprint { range: Range(797, 973), fp: EncodedCountingMonoid(15, SumMonoid(13082)) }], item_sets: [], wants: [984, 985, 5], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(15, 135), fp: EncodedCountingMonoid(12, SumMonoid(849)) }, Fingerprint { range: Range(135, 346), fp: EncodedCountingMonoid(12, SumMonoid(2645)) }, Fingerprint { range: Range(346, 477), fp: EncodedCountingMonoid(8, SumMonoid(3155)) }, Fingerprint { range: Range(477, 557), fp: EncodedCountingMonoid(8, SumMonoid(4217)) }, Fingerprint { range: Range(557, 728), fp: EncodedCountingMonoid(9, SumMonoid(5632)) }, Fingerprint { range: Range(728, 797), fp: EncodedCountingMonoid(9, SumMonoid(6904)) }, Fingerprint { range: Range(797, 907), fp: EncodedCountingMonoid(11, SumMonoid(9571)) }, Fingerprint { range: Range(907, 973), fp: EncodedCountingMonoid(10, SumMonoid(9342)) }], item_sets: [], wants: [], provide: [(984, true), (985, true), (5, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(15, 83), fp: EncodedCountingMonoid(5, SumMonoid(215)) }, Fingerprint { range: Range(83, 135), fp: EncodedCountingMonoid(4, SumMonoid(408)) }, Fingerprint { range: Range(135, 232), fp: EncodedCountingMonoid(5, SumMonoid(866)) }, Fingerprint { range: Range(232, 346), fp: EncodedCountingMonoid(5, SumMonoid(1349)) }, Fingerprint { range: Range(346, 415), fp: EncodedCountingMonoid(6, SumMonoid(2260)) }, Fingerprint { range: Range(415, 477), fp: EncodedCountingMonoid(6, SumMonoid(2693)) }, Fingerprint { range: Range(477, 521), fp: EncodedCountingMonoid(3, SumMonoid(1475)) }, Fingerprint { range: Range(521, 557), fp: EncodedCountingMonoid(3, SumMonoid(1611)) }, Fingerprint { range: Range(557, 688), fp: EncodedCountingMonoid(6, SumMonoid(3812)) }, Fingerprint { range: Range(688, 728), fp: EncodedCountingMonoid(5, SumMonoid(3524)) }, Fingerprint { range: Range(728, 746), fp: EncodedCountingMonoid(3, SumMonoid(2203)) }, Fingerprint { range: Range(797, 830), fp: EncodedCountingMonoid(5, SumMonoid(4073)) }, Fingerprint { range: Range(830, 907), fp: EncodedCountingMonoid(4, SumMonoid(3444)) }, Fingerprint { range: Range(907, 917), fp: EncodedCountingMonoid(3, SumMonoid(2732)) }, Fingerprint { range: Range(917, 973), fp: EncodedCountingMonoid(3, SumMonoid(2833)) }], item_sets: [ItemSet { range: Range(746, 797), items: [746, 763], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(15, 54), fp: EncodedCountingMonoid(4, SumMonoid(158)) }, Fingerprint { range: Range(54, 83), fp: EncodedCountingMonoid(4, SumMonoid(267)) }, Fingerprint { range: Range(135, 226), fp: EncodedCountingMonoid(5, SumMonoid(871)) }, Fingerprint { range: Range(226, 232), fp: EncodedCountingMonoid(4, SumMonoid(910)) }, Fingerprint { range: Range(346, 370), fp: EncodedCountingMonoid(3, SumMonoid(1078)) }, Fingerprint { range: Range(521, 552), fp: EncodedCountingMonoid(3, SumMonoid(1612)) }, Fingerprint { range: Range(557, 614), fp: EncodedCountingMonoid(4, SumMonoid(2338)) }, Fingerprint { range: Range(614, 688), fp: EncodedCountingMonoid(3, SumMonoid(1898)) }, Fingerprint { range: Range(830, 894), fp: EncodedCountingMonoid(5, SumMonoid(4355)) }, Fingerprint { range: Range(894, 907), fp: EncodedCountingMonoid(4, SumMonoid(3587)) }, Fingerprint { range: Range(917, 951), fp: EncodedCountingMonoid(4, SumMonoid(3697)) }, Fingerprint { range: Range(951, 973), fp: EncodedCountingMonoid(4, SumMonoid(3826)) }], item_sets: [ItemSet { range: Range(746, 797), items: [766, 769, 770, 776, 780, 781, 791], want_response: false }, ItemSet { range: Range(83, 116), items: [83, 95], want_response: true }, ItemSet { range: Range(116, 135), items: [116, 130], want_response: true }, ItemSet { range: Range(232, 305), items: [273, 286], want_response: true }, ItemSet { range: Range(305, 346), items: [305], want_response: true }, ItemSet { range: Range(370, 415), items: [370, 405], want_response: true }, ItemSet { range: Range(415, 452), items: [419, 431], want_response: true }, ItemSet { range: Range(452, 477), items: [452], want_response: true }, ItemSet { range: Range(477, 517), items: [477, 504], want_response: true }, ItemSet { range: Range(517, 521), items: [517], want_response: true }, ItemSet { range: Range(552, 557), items: [552, 555], want_response: true }, ItemSet { range: Range(688, 728), items: [696, 700], want_response: true }, ItemSet { range: Range(728, 746), items: [728, 743], want_response: true }, ItemSet { range: Range(797, 830), items: [811, 818], want_response: true }, ItemSet { range: Range(907, 917), items: [907, 912], want_response: true }], wants: [746, 763], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(135, 197), fp: EncodedCountingMonoid(3, SumMonoid(460)) }, Fingerprint { range: Range(614, 676), fp: EncodedCountingMonoid(3, SumMonoid(1893)) }], item_sets: [ItemSet { range: Range(83, 116), items: [83, 99, 112, 114], want_response: false }, ItemSet { range: Range(116, 135), items: [], want_response: false }, ItemSet { range: Range(232, 305), items: [232, 236, 241], want_response: false }, ItemSet { range: Range(305, 346), items: [310, 330], want_response: false }, ItemSet { range: Range(370, 415), items: [375, 385, 392, 414], want_response: false }, ItemSet { range: Range(415, 452), items: [415, 442, 445, 450], want_response: false }, ItemSet { range: Range(452, 477), items: [466, 475], want_response: false }, ItemSet { range: Range(477, 517), items: [480, 488, 507], want_response: false }, ItemSet { range: Range(517, 521), items: [], want_response: false }, ItemSet { range: Range(552, 557), items: [], want_response: false }, ItemSet { range: Range(688, 728), items: [688, 694, 710, 711, 721], want_response: false }, ItemSet { range: Range(728, 746), items: [728, 733, 742], want_response: false }, ItemSet { range: Range(797, 830), items: [797, 809, 813, 826, 828], want_response: false }, ItemSet { range: Range(907, 917), items: [907, 909, 916], want_response: false }, ItemSet { range: Range(15, 41), items: [15, 39], want_response: true }, ItemSet { range: Range(41, 54), items: [41, 47], want_response: true }, ItemSet { range: Range(54, 83), items: [73], want_response: true }, ItemSet { range: Range(197, 226), items: [197, 209], want_response: true }, ItemSet { range: Range(226, 232), items: [], want_response: true }, ItemSet { range: Range(346, 370), items: [346, 348], want_response: true }, ItemSet { range: Range(521, 551), items: [521, 539], want_response: true }, ItemSet { range: Range(551, 552), items: [551], want_response: true }, ItemSet { range: Range(557, 614), items: [563], want_response: true }, ItemSet { range: Range(676, 688), items: [676, 680], want_response: true }, ItemSet { range: Range(830, 874), items: [830, 855], want_response: true }, ItemSet { range: Range(874, 894), items: [874, 885], want_response: true }, ItemSet { range: Range(894, 907), items: [], want_response: true }, ItemSet { range: Range(917, 951), items: [917, 944], want_response: true }, ItemSet { range: Range(951, 973), items: [972], want_response: true }], wants: [766, 769, 770, 776, 780, 781, 791, 95, 116, 130, 273, 286, 305, 370, 405, 419, 431, 452, 477, 504, 517, 552, 555, 696, 700, 743, 811, 818, 912], provide: [(746, true), (763, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(15, 41), items: [24, 34], want_response: false }, ItemSet { range: Range(41, 54), items: [48, 52], want_response: false }, ItemSet { range: Range(54, 83), items: [54, 60, 73, 80], want_response: false }, ItemSet { range: Range(197, 226), items: [225], want_response: false }, ItemSet { range: Range(226, 232), items: [226, 227, 228, 229], want_response: false }, ItemSet { range: Range(346, 370), items: [355, 361, 362], want_response: false }, ItemSet { range: Range(521, 551), items: [533, 537, 542], want_response: false }, ItemSet { range: Range(551, 552), items: [], want_response: false }, ItemSet { range: Range(557, 614), items: [557, 581, 599, 601], want_response: false }, ItemSet { range: Range(676, 688), items: [], want_response: false }, ItemSet { range: Range(830, 874), items: [848, 864], want_response: false }, ItemSet { range: Range(874, 894), items: [877, 878, 888], want_response: false }, ItemSet { range: Range(894, 907), items: [894, 896, 897, 900], want_response: false }, ItemSet { range: Range(917, 951), items: [918, 919, 924, 936], want_response: false }, ItemSet { range: Range(951, 973), items: [951, 952, 954, 969], want_response: false }, ItemSet { range: Range(135, 164), items: [135, 159], want_response: true }, ItemSet { range: Range(164, 197), items: [164, 188], want_response: true }, ItemSet { range: Range(614, 646), items: [614, 638], want_response: true }, ItemSet { range: Range(646, 676), items: [646], want_response: true }], wants: [99, 112, 114, 232, 236, 241, 310, 330, 375, 385, 392, 414, 415, 442, 445, 450, 466, 475, 480, 488, 507, 688, 694, 710, 711, 721, 733, 742, 797, 809, 813, 826, 828, 909, 916, 15, 39, 41, 47, 197, 209, 346, 348, 521, 539, 551, 563, 676, 680, 830, 855, 874, 885, 917, 944, 972], provide: [(766, true), (769, true), (770, true), (776, true), (780, true), (781, true), (791, true), (95, true), (116, true), (130, true), (273, true), (286, true), (305, true), (370, true), (405, true), (419, true), (431, true), (452, true), (477, true), (504, true), (517, true), (552, true), (555, true), (696, true), (700, true), (743, true), (811, true), (818, true), (912, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(135, 164), items: [138, 145], want_response: false }, ItemSet { range: Range(164, 197), items: [177], want_response: false }, ItemSet { range: Range(614, 646), items: [619, 620], want_response: false }, ItemSet { range: Range(646, 676), items: [654], want_response: false }], wants: [24, 34, 48, 52, 54, 60, 80, 225, 226, 227, 228, 229, 355, 361, 362, 533, 537, 542, 557, 581, 599, 601, 848, 864, 877, 878, 888, 894, 896, 897, 900, 918, 919, 924, 936, 951, 952, 954, 969, 135, 159, 164, 188, 614, 638, 646], provide: [(99, true), (112, true), (114, true), (232, true), (236, true), (241, true), (310, true), (330, true), (375, true), (385, true), (392, true), (414, true), (415, true), (442, true), (445, true), (450, true), (466, true), (475, true), (480, true), (488, true), (507, true), (688, true), (694, true), (710, true), (711, true), (721, true), (733, true), (742, true), (797, true), (809, true), (813, true), (826, true), (828, true), (909, true), (916, true), (15, true), (39, true), (41, true), (47, true), (197, true), (209, true), (346, true), (348, true), (521, true), (539, true), (551, true), (563, true), (676, true), (680, true), (830, true), (855, true), (874, true), (885, true), (917, true), (944, true), (972, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [138, 145, 177, 619, 620, 654], provide: [(24, true), (34, true), (48, true), (52, true), (54, true), (60, true), (80, true), (225, true), (226, true), (227, true), (228, true), (229, true), (355, true), (361, true), (362, true), (533, true), (537, true), (542, true), (557, true), (581, true), (599, true), (601, true), (848, true), (864, true), (877, true), (878, true), (888, true), (894, true), (896, true), (897, true), (900, true), (918, true), (919, true), (924, true), (936, true), (951, true), (952, true), (954, true), (969, true), (135, true), (159, true), (164, true), (188, true), (614, true), (638, true), (646, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(138, true), (145, true), (177, true), (619, true), (620, true), (654, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {15, 39, 41, 47, 73, 83, 99, 112, 114, 138, 145, 177, 197, 209, 232, 236, 241, 310, 330, 346, 348, 375, 385, 392, 414, 415, 442, 445, 450, 466, 475, 480, 488, 507, 521, 539, 551, 563, 619, 620, 654, 676, 680, 688, 694, 710, 711, 721, 728, 733, 742, 746, 763, 797, 809, 813, 826, 828, 830, 855, 874, 885, 907, 909, 916, 917, 944, 972} + [984, 985, 5, 766, 769, 770, 776, 780, 781, 791, 95, 116, 130, 273, 286, 305, 370, 405, 419, 431, 452, 477, 504, 517, 552, 555, 696, 700, 743, 811, 818, 912, 24, 34, 48, 52, 54, 60, 80, 225, 226, 227, 228, 229, 355, 361, 362, 533, 537, 542, 557, 581, 599, 601, 848, 864, 877, 878, 888, 894, 896, 897, 900, 918, 919, 924, 936, 951, 952, 954, 969, 135, 159, 164, 188, 614, 638, 646]
[INFO] [stdout] b all: {5, 24, 34, 48, 52, 54, 60, 73, 80, 83, 95, 116, 130, 135, 159, 164, 188, 225, 226, 227, 228, 229, 273, 286, 305, 355, 361, 362, 370, 405, 419, 431, 452, 477, 504, 517, 533, 537, 542, 552, 555, 557, 581, 599, 601, 614, 638, 646, 696, 700, 728, 743, 766, 769, 770, 776, 780, 781, 791, 811, 818, 848, 864, 877, 878, 888, 894, 896, 897, 900, 907, 912, 918, 919, 924, 936, 951, 952, 954, 969, 984, 985} + [746, 763, 99, 112, 114, 232, 236, 241, 310, 330, 375, 385, 392, 414, 415, 442, 445, 450, 466, 475, 480, 488, 507, 688, 694, 710, 711, 721, 733, 742, 797, 809, 813, 826, 828, 909, 916, 15, 39, 41, 47, 197, 209, 346, 348, 521, 539, 551, 563, 676, 680, 830, 855, 874, 885, 917, 944, 972, 138, 145, 177, 619, 620, 654]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 15, 24, 34, 39, 41, 47, 48, 52, 54, 60, 73, 80, 83, 95, 99, 112, 114, 116, 130, 135, 138, 145, 159, 164, 177, 188, 197, 209, 225, 226, 227, 228, 229, 232, 236, 241, 273, 286, 305, 310, 330, 346, 348, 355, 361, 362, 370, 375, 385, 392, 405, 414, 415, 419, 431, 442, 445, 450, 452, 466, 475, 477, 480, 488, 504, 507, 517, 521, 533, 537, 539, 542, 551, 552, 555, 557, 563, 581, 599, 601, 614, 619, 620, 638, 646, 654, 676, 680, 688, 694, 696, 700, 710, 711, 721, 728, 733, 742, 743, 746, 763, 766, 769, 770, 776, 780, 781, 791, 797, 809, 811, 813, 818, 826, 828, 830, 848, 855, 864, 874, 877, 878, 885, 888, 894, 896, 897, 900, 907, 909, 912, 916, 917, 918, 919, 924, 936, 944, 951, 952, 954, 969, 972, 984, 985]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 15, 24, 34, 39, 41, 47, 48, 52, 54, 60, 73, 80, 83, 95, 99, 112, 114, 116, 130, 135, 138, 145, 159, 164, 177, 188, 197, 209, 225, 226, 227, 228, 229, 232, 236, 241, 273, 286, 305, 310, 330, 346, 348, 355, 361, 362, 370, 375, 385, 392, 405, 414, 415, 419, 431, 442, 445, 450, 452, 466, 475, 477, 480, 488, 504, 507, 517, 521, 533, 537, 539, 542, 551, 552, 555, 557, 563, 581, 599, 601, 614, 619, 620, 638, 646, 654, 676, 680, 688, 694, 696, 700, 710, 711, 721, 728, 733, 742, 743, 746, 763, 766, 769, 770, 776, 780, 781, 791, 797, 809, 811, 813, 818, 826, 828, 830, 848, 855, 864, 874, 877, 878, 885, 888, 894, 896, 897, 900, 907, 909, 912, 916, 917, 918, 919, 924, 936, 944, 951, 952, 954, 969, 972, 984, 985], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 15, 24, 34, 39, 41, 47, 48, 52, 54, 60, 73, 80, 83, 95, 99, 112, 114, 116, 130, 135, 138, 145, 159, 164, 177, 188, 197, 209, 225, 226, 227, 228, 229, 232, 236, 241, 273, 286, 305, 310, 330, 346, 348, 355, 361, 362, 370, 375, 385, 392, 405, 414, 415, 419, 431, 442, 445, 450, 452, 466, 475, 477, 480, 488, 504, 507, 517, 521, 533, 537, 539, 542, 551, 552, 555, 557, 563, 581, 599, 601, 614, 619, 620, 638, 646, 654, 676, 680, 688, 694, 696, 700, 710, 711, 721, 728, 733, 742, 743, 746, 763, 766, 769, 770, 776, 780, 781, 791, 797, 809, 811, 813, 818, 826, 828, 830, 848, 855, 864, 874, 877, 878, 885, 888, 894, 896, 897, 900, 907, 909, 912, 916, 917, 918, 919, 924, 936, 944, 951, 952, 954, 969, 972, 984, 985], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {3, 183, 186, 209, 279, 356, 371, 382, 440, 546, 655, 664, 693, 705, 747, 833, 870, 964, 975, 978, 999}
[INFO] [stdout] b items: {57, 67, 84, 92, 93, 126, 150, 183, 200, 222, 243, 311, 322, 388, 400, 418, 453, 532, 541, 593, 648, 653, 689, 691, 699, 703, 728, 784, 813, 883, 947, 981}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 1000), fp: EncodedCountingMonoid(21, SumMonoid(12038)) }], item_sets: [ItemSet { range: Range(1000, 3), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 453), fp: EncodedCountingMonoid(16, SumMonoid(3356)) }, Fingerprint { range: Range(453, 1000), fp: EncodedCountingMonoid(16, SumMonoid(11338)) }], item_sets: [ItemSet { range: Range(1000, 3), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 356), fp: EncodedCountingMonoid(5, SumMonoid(860)) }, Fingerprint { range: Range(356, 453), fp: EncodedCountingMonoid(4, SumMonoid(1549)) }, Fingerprint { range: Range(453, 833), fp: EncodedCountingMonoid(6, SumMonoid(4010)) }, Fingerprint { range: Range(833, 1000), fp: EncodedCountingMonoid(6, SumMonoid(5619)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 183), fp: EncodedCountingMonoid(7, SumMonoid(669)) }, Fingerprint { range: Range(183, 356), fp: EncodedCountingMonoid(6, SumMonoid(1481)) }, Fingerprint { range: Range(453, 691), fp: EncodedCountingMonoid(7, SumMonoid(4109)) }, Fingerprint { range: Range(691, 833), fp: EncodedCountingMonoid(6, SumMonoid(4418)) }], item_sets: [ItemSet { range: Range(356, 418), items: [388, 400], want_response: true }, ItemSet { range: Range(418, 453), items: [418], want_response: true }, ItemSet { range: Range(833, 981), items: [883, 947], want_response: true }, ItemSet { range: Range(981, 1000), items: [981], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(356, 418), items: [356, 371, 382], want_response: false }, ItemSet { range: Range(418, 453), items: [440], want_response: false }, ItemSet { range: Range(833, 981), items: [833, 870, 964, 975, 978], want_response: false }, ItemSet { range: Range(981, 1000), items: [999], want_response: false }, ItemSet { range: Range(3, 183), items: [3], want_response: true }, ItemSet { range: Range(183, 209), items: [183, 186], want_response: true }, ItemSet { range: Range(209, 356), items: [209, 279], want_response: true }, ItemSet { range: Range(453, 664), items: [546, 655], want_response: true }, ItemSet { range: Range(664, 691), items: [664], want_response: true }, ItemSet { range: Range(691, 747), items: [693, 705], want_response: true }, ItemSet { range: Range(747, 833), items: [747], want_response: true }], wants: [388, 400, 418, 883, 947, 981], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(3, 183), items: [57, 67, 84, 92, 93, 126, 150], want_response: false }, ItemSet { range: Range(183, 209), items: [183, 200], want_response: false }, ItemSet { range: Range(209, 356), items: [222, 243, 311, 322], want_response: false }, ItemSet { range: Range(453, 664), items: [453, 532, 541, 593, 648, 653], want_response: false }, ItemSet { range: Range(664, 691), items: [689], want_response: false }, ItemSet { range: Range(691, 747), items: [691, 699, 703, 728], want_response: false }, ItemSet { range: Range(747, 833), items: [784, 813], want_response: false }], wants: [356, 371, 382, 440, 833, 870, 964, 975, 978, 999, 3, 186, 209, 279, 546, 655, 664, 693, 705, 747], provide: [(388, true), (400, true), (418, true), (883, true), (947, true), (981, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [57, 67, 84, 92, 93, 126, 150, 200, 222, 243, 311, 322, 453, 532, 541, 593, 648, 653, 689, 691, 699, 703, 728, 784, 813], provide: [(356, true), (371, true), (382, true), (440, true), (833, true), (870, true), (964, true), (975, true), (978, true), (999, true), (3, true), (186, true), (209, true), (279, true), (546, true), (655, true), (664, true), (693, true), (705, true), (747, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(57, true), (67, true), (84, true), (92, true), (93, true), (126, true), (150, true), (200, true), (222, true), (243, true), (311, true), (322, true), (453, true), (532, true), (541, true), (593, true), (648, true), (653, true), (689, true), (691, true), (699, true), (703, true), (728, true), (784, true), (813, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {3, 183, 186, 209, 279, 356, 371, 382, 440, 546, 655, 664, 693, 705, 747, 833, 870, 964, 975, 978, 999} + [388, 400, 418, 883, 947, 981, 57, 67, 84, 92, 93, 126, 150, 200, 222, 243, 311, 322, 453, 532, 541, 593, 648, 653, 689, 691, 699, 703, 728, 784, 813]
[INFO] [stdout] b all: {57, 67, 84, 92, 93, 126, 150, 183, 200, 222, 243, 311, 322, 388, 400, 418, 453, 532, 541, 593, 648, 653, 689, 691, 699, 703, 728, 784, 813, 883, 947, 981} + [356, 371, 382, 440, 833, 870, 964, 975, 978, 999, 3, 186, 209, 279, 546, 655, 664, 693, 705, 747]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [3, 57, 67, 84, 92, 93, 126, 150, 183, 186, 200, 209, 222, 243, 279, 311, 322, 356, 371, 382, 388, 400, 418, 440, 453, 532, 541, 546, 593, 648, 653, 655, 664, 689, 691, 693, 699, 703, 705, 728, 747, 784, 813, 833, 870, 883, 947, 964, 975, 978, 981, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [3, 57, 67, 84, 92, 93, 126, 150, 183, 186, 200, 209, 222, 243, 279, 311, 322, 356, 371, 382, 388, 400, 418, 440, 453, 532, 541, 546, 593, 648, 653, 655, 664, 689, 691, 693, 699, 703, 705, 728, 747, 784, 813, 833, 870, 883, 947, 964, 975, 978, 981, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [3, 57, 67, 84, 92, 93, 126, 150, 183, 186, 200, 209, 222, 243, 279, 311, 322, 356, 371, 382, 388, 400, 418, 440, 453, 532, 541, 546, 593, 648, 653, 655, 664, 689, 691, 693, 699, 703, 705, 728, 747, 784, 813, 833, 870, 883, 947, 964, 975, 978, 981, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {10, 87, 121, 146, 159, 188, 219, 234, 238, 263, 270, 347, 355, 399, 419, 422, 426, 463, 467, 477, 485, 487, 489, 502, 514, 518, 533, 560, 595, 613, 631, 640, 651, 657, 688, 689, 728, 740, 758, 818, 850, 851, 864, 869, 898, 933, 950, 970, 974, 988}
[INFO] [stdout] b items: {93, 94, 338, 378, 440, 815, 830, 860, 897}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(10, 989), fp: EncodedCountingMonoid(50, SumMonoid(27153)) }], item_sets: [ItemSet { range: Range(989, 10), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(10, 815), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(815, 989), fp: EncodedCountingMonoid(4, SumMonoid(3402)) }], item_sets: [ItemSet { range: Range(989, 10), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(10, 485), fp: EncodedCountingMonoid(20, SumMonoid(5710)) }, Fingerprint { range: Range(485, 815), fp: EncodedCountingMonoid(19, SumMonoid(11478)) }, Fingerprint { range: Range(815, 933), fp: EncodedCountingMonoid(6, SumMonoid(5150)) }, Fingerprint { range: Range(933, 989), fp: EncodedCountingMonoid(5, SumMonoid(4815)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(10, 378), fp: EncodedCountingMonoid(3, SumMonoid(525)) }], item_sets: [ItemSet { range: Range(378, 485), items: [378, 440], want_response: true }, ItemSet { range: Range(485, 815), items: [], want_response: true }, ItemSet { range: Range(815, 860), items: [815, 830], want_response: true }, ItemSet { range: Range(860, 933), items: [860, 897], want_response: true }, ItemSet { range: Range(933, 989), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(10, 234), fp: EncodedCountingMonoid(7, SumMonoid(930)) }, Fingerprint { range: Range(234, 378), fp: EncodedCountingMonoid(6, SumMonoid(1707)) }], item_sets: [ItemSet { range: Range(378, 485), items: [399, 419, 422, 426, 463, 467, 477], want_response: false }, ItemSet { range: Range(485, 815), items: [485, 487, 489, 502, 514, 518, 533, 560, 595, 613, 631, 640, 651, 657, 688, 689, 728, 740, 758], want_response: false }, ItemSet { range: Range(815, 860), items: [818, 850, 851], want_response: false }, ItemSet { range: Range(860, 933), items: [864, 869, 898], want_response: false }, ItemSet { range: Range(933, 989), items: [933, 950, 970, 974, 988], want_response: false }], wants: [378, 440, 815, 830, 860, 897], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(10, 234), items: [93, 94], want_response: true }, ItemSet { range: Range(234, 378), items: [338], want_response: true }], wants: [399, 419, 422, 426, 463, 467, 477, 485, 487, 489, 502, 514, 518, 533, 560, 595, 613, 631, 640, 651, 657, 688, 689, 728, 740, 758, 818, 850, 851, 864, 869, 898, 933, 950, 970, 974, 988], provide: [(378, true), (440, true), (815, true), (830, true), (860, true), (897, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(10, 234), items: [10, 87, 121, 146, 159, 188, 219], want_response: false }, ItemSet { range: Range(234, 378), items: [234, 238, 263, 270, 347, 355], want_response: false }], wants: [93, 94, 338], provide: [(399, true), (419, true), (422, true), (426, true), (463, true), (467, true), (477, true), (485, true), (487, true), (489, true), (502, true), (514, true), (518, true), (533, true), (560, true), (595, true), (613, true), (631, true), (640, true), (651, true), (657, true), (688, true), (689, true), (728, true), (740, true), (758, true), (818, true), (850, true), (851, true), (864, true), (869, true), (898, true), (933, true), (950, true), (970, true), (974, true), (988, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [10, 87, 121, 146, 159, 188, 219, 234, 238, 263, 270, 347, 355], provide: [(93, true), (94, true), (338, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(10, true), (87, true), (121, true), (146, true), (159, true), (188, true), (219, true), (234, true), (238, true), (263, true), (270, true), (347, true), (355, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {10, 87, 121, 146, 159, 188, 219, 234, 238, 263, 270, 347, 355, 399, 419, 422, 426, 463, 467, 477, 485, 487, 489, 502, 514, 518, 533, 560, 595, 613, 631, 640, 651, 657, 688, 689, 728, 740, 758, 818, 850, 851, 864, 869, 898, 933, 950, 970, 974, 988} + [378, 440, 815, 830, 860, 897, 93, 94, 338]
[INFO] [stdout] b all: {93, 94, 338, 378, 440, 815, 830, 860, 897} + [399, 419, 422, 426, 463, 467, 477, 485, 487, 489, 502, 514, 518, 533, 560, 595, 613, 631, 640, 651, 657, 688, 689, 728, 740, 758, 818, 850, 851, 864, 869, 898, 933, 950, 970, 974, 988, 10, 87, 121, 146, 159, 188, 219, 234, 238, 263, 270, 347, 355]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [10, 87, 93, 94, 121, 146, 159, 188, 219, 234, 238, 263, 270, 338, 347, 355, 378, 399, 419, 422, 426, 440, 463, 467, 477, 485, 487, 489, 502, 514, 518, 533, 560, 595, 613, 631, 640, 651, 657, 688, 689, 728, 740, 758, 815, 818, 830, 850, 851, 860, 864, 869, 897, 898, 933, 950, 970, 974, 988]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [10, 87, 93, 94, 121, 146, 159, 188, 219, 234, 238, 263, 270, 338, 347, 355, 378, 399, 419, 422, 426, 440, 463, 467, 477, 485, 487, 489, 502, 514, 518, 533, 560, 595, 613, 631, 640, 651, 657, 688, 689, 728, 740, 758, 815, 818, 830, 850, 851, 860, 864, 869, 897, 898, 933, 950, 970, 974, 988], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [10, 87, 93, 94, 121, 146, 159, 188, 219, 234, 238, 263, 270, 338, 347, 355, 378, 399, 419, 422, 426, 440, 463, 467, 477, 485, 487, 489, 502, 514, 518, 533, 560, 595, 613, 631, 640, 651, 657, 688, 689, 728, 740, 758, 815, 818, 830, 850, 851, 860, 864, 869, 897, 898, 933, 950, 970, 974, 988], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {4, 19, 41, 63, 83, 143, 151, 163, 180, 190, 191, 262, 268, 300, 301, 334, 340, 364, 391, 429, 443, 452, 478, 486, 511, 533, 536, 539, 557, 566, 578, 589, 597, 639, 692, 697, 703, 707, 708, 729, 754, 801, 807, 829, 838, 849, 858, 874, 892, 900, 913, 914, 934, 945, 947, 985, 992}
[INFO] [stdout] b items: {7, 32, 44, 47, 66, 70, 82, 97, 131, 145, 158, 163, 167, 178, 190, 191, 192, 215, 226, 227, 253, 262, 277, 298, 309, 310, 311, 313, 315, 330, 344, 347, 348, 363, 366, 430, 448, 451, 460, 521, 531, 537, 549, 557, 569, 578, 580, 594, 598, 607, 610, 612, 621, 632, 634, 635, 647, 652, 663, 665, 680, 691, 692, 703, 716, 724, 731, 738, 747, 759, 798, 799, 824, 826, 837, 839, 873, 876, 884, 908, 937, 954, 975, 991, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 993), fp: EncodedCountingMonoid(57, SumMonoid(30989)) }], item_sets: [ItemSet { range: Range(993, 4), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 549), fp: EncodedCountingMonoid(42, SumMonoid(10752)) }, Fingerprint { range: Range(549, 993), fp: EncodedCountingMonoid(42, SumMonoid(30505)) }], item_sets: [ItemSet { range: Range(993, 4), items: [999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 301), fp: EncodedCountingMonoid(14, SumMonoid(2058)) }, Fingerprint { range: Range(301, 549), fp: EncodedCountingMonoid(14, SumMonoid(6137)) }, Fingerprint { range: Range(549, 829), fp: EncodedCountingMonoid(15, SumMonoid(10124)) }, Fingerprint { range: Range(829, 993), fp: EncodedCountingMonoid(14, SumMonoid(12670)) }], item_sets: [], wants: [999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 167), fp: EncodedCountingMonoid(12, SumMonoid(1042)) }, Fingerprint { range: Range(167, 301), fp: EncodedCountingMonoid(12, SumMonoid(2676)) }, Fingerprint { range: Range(301, 363), fp: EncodedCountingMonoid(9, SumMonoid(2927)) }, Fingerprint { range: Range(363, 549), fp: EncodedCountingMonoid(9, SumMonoid(4107)) }, Fingerprint { range: Range(549, 663), fp: EncodedCountingMonoid(16, SumMonoid(9675)) }, Fingerprint { range: Range(663, 829), fp: EncodedCountingMonoid(16, SumMonoid(11756)) }, Fingerprint { range: Range(829, 908), fp: EncodedCountingMonoid(5, SumMonoid(4309)) }, Fingerprint { range: Range(908, 993), fp: EncodedCountingMonoid(5, SumMonoid(4765)) }], item_sets: [], wants: [], provide: [(999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 83), fp: EncodedCountingMonoid(4, SumMonoid(127)) }, Fingerprint { range: Range(83, 167), fp: EncodedCountingMonoid(4, SumMonoid(540)) }, Fingerprint { range: Range(167, 262), fp: EncodedCountingMonoid(3, SumMonoid(561)) }, Fingerprint { range: Range(262, 301), fp: EncodedCountingMonoid(3, SumMonoid(830)) }, Fingerprint { range: Range(363, 486), fp: EncodedCountingMonoid(6, SumMonoid(2557)) }, Fingerprint { range: Range(486, 549), fp: EncodedCountingMonoid(5, SumMonoid(2605)) }, Fingerprint { range: Range(549, 589), fp: EncodedCountingMonoid(3, SumMonoid(1701)) }, Fingerprint { range: Range(589, 663), fp: EncodedCountingMonoid(3, SumMonoid(1825)) }, Fingerprint { range: Range(663, 729), fp: EncodedCountingMonoid(5, SumMonoid(3507)) }, Fingerprint { range: Range(729, 829), fp: EncodedCountingMonoid(4, SumMonoid(3091)) }, Fingerprint { range: Range(829, 874), fp: EncodedCountingMonoid(4, SumMonoid(3374)) }, Fingerprint { range: Range(874, 908), fp: EncodedCountingMonoid(3, SumMonoid(2666)) }, Fingerprint { range: Range(908, 947), fp: EncodedCountingMonoid(4, SumMonoid(3706)) }, Fingerprint { range: Range(947, 993), fp: EncodedCountingMonoid(3, SumMonoid(2924)) }], item_sets: [ItemSet { range: Range(301, 340), items: [301, 334], want_response: true }, ItemSet { range: Range(340, 363), items: [340], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 66), fp: EncodedCountingMonoid(4, SumMonoid(130)) }, Fingerprint { range: Range(66, 83), fp: EncodedCountingMonoid(3, SumMonoid(218)) }, Fingerprint { range: Range(83, 158), fp: EncodedCountingMonoid(3, SumMonoid(373)) }, Fingerprint { range: Range(167, 215), fp: EncodedCountingMonoid(5, SumMonoid(918)) }, Fingerprint { range: Range(215, 262), fp: EncodedCountingMonoid(4, SumMonoid(921)) }, Fingerprint { range: Range(363, 448), fp: EncodedCountingMonoid(3, SumMonoid(1159)) }, Fingerprint { range: Range(448, 486), fp: EncodedCountingMonoid(3, SumMonoid(1359)) }, Fingerprint { range: Range(549, 578), fp: EncodedCountingMonoid(3, SumMonoid(1675)) }, Fingerprint { range: Range(589, 632), fp: EncodedCountingMonoid(6, SumMonoid(3642)) }, Fingerprint { range: Range(632, 663), fp: EncodedCountingMonoid(5, SumMonoid(3200)) }, Fingerprint { range: Range(663, 692), fp: EncodedCountingMonoid(4, SumMonoid(2699)) }, Fingerprint { range: Range(692, 729), fp: EncodedCountingMonoid(4, SumMonoid(2835)) }, Fingerprint { range: Range(729, 798), fp: EncodedCountingMonoid(4, SumMonoid(2975)) }, Fingerprint { range: Range(798, 829), fp: EncodedCountingMonoid(4, SumMonoid(3247)) }], item_sets: [ItemSet { range: Range(301, 340), items: [309, 310, 311, 313, 315, 330], want_response: false }, ItemSet { range: Range(340, 363), items: [344, 347, 348], want_response: false }, ItemSet { range: Range(158, 167), items: [158, 163], want_response: true }, ItemSet { range: Range(262, 298), items: [262, 277], want_response: true }, ItemSet { range: Range(298, 301), items: [298], want_response: true }, ItemSet { range: Range(486, 537), items: [521, 531], want_response: true }, ItemSet { range: Range(537, 549), items: [537], want_response: true }, ItemSet { range: Range(578, 589), items: [578, 580], want_response: true }, ItemSet { range: Range(829, 873), items: [837, 839], want_response: true }, ItemSet { range: Range(873, 874), items: [873], want_response: true }, ItemSet { range: Range(874, 908), items: [876, 884], want_response: true }, ItemSet { range: Range(908, 947), items: [908, 937], want_response: true }, ItemSet { range: Range(947, 991), items: [954, 975], want_response: true }, ItemSet { range: Range(991, 993), items: [991], want_response: true }], wants: [301, 334, 340], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(692, 707), fp: EncodedCountingMonoid(3, SumMonoid(2092)) }], item_sets: [ItemSet { range: Range(158, 167), items: [163], want_response: false }, ItemSet { range: Range(262, 298), items: [262, 268], want_response: false }, ItemSet { range: Range(298, 301), items: [300], want_response: false }, ItemSet { range: Range(486, 537), items: [486, 511, 533, 536], want_response: false }, ItemSet { range: Range(537, 549), items: [539], want_response: false }, ItemSet { range: Range(578, 589), items: [578], want_response: false }, ItemSet { range: Range(829, 873), items: [829, 838, 849, 858], want_response: false }, ItemSet { range: Range(873, 874), items: [], want_response: false }, ItemSet { range: Range(874, 908), items: [874, 892, 900], want_response: false }, ItemSet { range: Range(908, 947), items: [913, 914, 934, 945], want_response: false }, ItemSet { range: Range(947, 991), items: [947, 985], want_response: false }, ItemSet { range: Range(991, 993), items: [992], want_response: false }, ItemSet { range: Range(4, 41), items: [4, 19], want_response: true }, ItemSet { range: Range(41, 66), items: [41, 63], want_response: true }, ItemSet { range: Range(66, 83), items: [], want_response: true }, ItemSet { range: Range(83, 151), items: [83, 143], want_response: true }, ItemSet { range: Range(151, 158), items: [151], want_response: true }, ItemSet { range: Range(167, 191), items: [180, 190], want_response: true }, ItemSet { range: Range(191, 215), items: [191], want_response: true }, ItemSet { range: Range(215, 262), items: [], want_response: true }, ItemSet { range: Range(363, 429), items: [364, 391], want_response: true }, ItemSet { range: Range(429, 448), items: [429, 443], want_response: true }, ItemSet { range: Range(448, 486), items: [452, 478], want_response: true }, ItemSet { range: Range(549, 578), items: [557, 566], want_response: true }, ItemSet { range: Range(589, 632), items: [589, 597], want_response: true }, ItemSet { range: Range(632, 663), items: [639], want_response: true }, ItemSet { range: Range(663, 692), items: [], want_response: true }, ItemSet { range: Range(707, 729), items: [707, 708], want_response: true }, ItemSet { range: Range(729, 798), items: [729, 754], want_response: true }, ItemSet { range: Range(798, 829), items: [801, 807], want_response: true }], wants: [309, 310, 311, 313, 315, 330, 344, 347, 348, 158, 277, 298, 521, 531, 537, 580, 837, 839, 873, 876, 884, 908, 937, 954, 975, 991], provide: [(301, true), (334, true), (340, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(4, 41), items: [7, 32], want_response: false }, ItemSet { range: Range(41, 66), items: [44, 47], want_response: false }, ItemSet { range: Range(66, 83), items: [66, 70, 82], want_response: false }, ItemSet { range: Range(83, 151), items: [97, 131, 145], want_response: false }, ItemSet { range: Range(151, 158), items: [], want_response: false }, ItemSet { range: Range(167, 191), items: [167, 178, 190], want_response: false }, ItemSet { range: Range(191, 215), items: [191, 192], want_response: false }, ItemSet { range: Range(215, 262), items: [215, 226, 227, 253], want_response: false }, ItemSet { range: Range(363, 429), items: [363, 366], want_response: false }, ItemSet { range: Range(429, 448), items: [430], want_response: false }, ItemSet { range: Range(448, 486), items: [448, 451, 460], want_response: false }, ItemSet { range: Range(549, 578), items: [549, 557, 569], want_response: false }, ItemSet { range: Range(589, 632), items: [594, 598, 607, 610, 612, 621], want_response: false }, ItemSet { range: Range(632, 663), items: [632, 634, 635, 647, 652], want_response: false }, ItemSet { range: Range(663, 692), items: [663, 665, 680, 691], want_response: false }, ItemSet { range: Range(707, 729), items: [716, 724], want_response: false }, ItemSet { range: Range(729, 798), items: [731, 738, 747, 759], want_response: false }, ItemSet { range: Range(798, 829), items: [798, 799, 824, 826], want_response: false }, ItemSet { range: Range(692, 707), items: [692, 703], want_response: true }], wants: [268, 300, 486, 511, 533, 536, 539, 829, 838, 849, 858, 874, 892, 900, 913, 914, 934, 945, 947, 985, 992, 4, 19, 41, 63, 83, 143, 151, 180, 364, 391, 429, 443, 452, 478, 566, 589, 597, 639, 707, 708, 729, 754, 801, 807], provide: [(309, true), (310, true), (311, true), (313, true), (315, true), (330, true), (344, true), (347, true), (348, true), (158, true), (277, true), (298, true), (521, true), (531, true), (537, true), (580, true), (837, true), (839, true), (873, true), (876, true), (884, true), (908, true), (937, true), (954, true), (975, true), (991, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(692, 707), items: [692, 697, 703], want_response: false }], wants: [7, 32, 44, 47, 66, 70, 82, 97, 131, 145, 167, 178, 192, 215, 226, 227, 253, 363, 366, 430, 448, 451, 460, 549, 569, 594, 598, 607, 610, 612, 621, 632, 634, 635, 647, 652, 663, 665, 680, 691, 716, 724, 731, 738, 747, 759, 798, 799, 824, 826], provide: [(268, true), (300, true), (486, true), (511, true), (533, true), (536, true), (539, true), (829, true), (838, true), (849, true), (858, true), (874, true), (892, true), (900, true), (913, true), (914, true), (934, true), (945, true), (947, true), (985, true), (992, true), (4, true), (19, true), (41, true), (63, true), (83, true), (143, true), (151, true), (180, true), (364, true), (391, true), (429, true), (443, true), (452, true), (478, true), (566, true), (589, true), (597, true), (639, true), (707, true), (708, true), (729, true), (754, true), (801, true), (807, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [697], provide: [(7, true), (32, true), (44, true), (47, true), (66, true), (70, true), (82, true), (97, true), (131, true), (145, true), (167, true), (178, true), (192, true), (215, true), (226, true), (227, true), (253, true), (363, true), (366, true), (430, true), (448, true), (451, true), (460, true), (549, true), (569, true), (594, true), (598, true), (607, true), (610, true), (612, true), (621, true), (632, true), (634, true), (635, true), (647, true), (652, true), (663, true), (665, true), (680, true), (691, true), (716, true), (724, true), (731, true), (738, true), (747, true), (759, true), (798, true), (799, true), (824, true), (826, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(697, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {4, 19, 41, 63, 83, 143, 151, 163, 180, 190, 191, 262, 268, 300, 301, 334, 340, 364, 391, 429, 443, 452, 478, 486, 511, 533, 536, 539, 557, 566, 578, 589, 597, 639, 692, 697, 703, 707, 708, 729, 754, 801, 807, 829, 838, 849, 858, 874, 892, 900, 913, 914, 934, 945, 947, 985, 992} + [999, 309, 310, 311, 313, 315, 330, 344, 347, 348, 158, 277, 298, 521, 531, 537, 580, 837, 839, 873, 876, 884, 908, 937, 954, 975, 991, 7, 32, 44, 47, 66, 70, 82, 97, 131, 145, 167, 178, 192, 215, 226, 227, 253, 363, 366, 430, 448, 451, 460, 549, 569, 594, 598, 607, 610, 612, 621, 632, 634, 635, 647, 652, 663, 665, 680, 691, 716, 724, 731, 738, 747, 759, 798, 799, 824, 826]
[INFO] [stdout] b all: {7, 32, 44, 47, 66, 70, 82, 97, 131, 145, 158, 163, 167, 178, 190, 191, 192, 215, 226, 227, 253, 262, 277, 298, 309, 310, 311, 313, 315, 330, 344, 347, 348, 363, 366, 430, 448, 451, 460, 521, 531, 537, 549, 557, 569, 578, 580, 594, 598, 607, 610, 612, 621, 632, 634, 635, 647, 652, 663, 665, 680, 691, 692, 703, 716, 724, 731, 738, 747, 759, 798, 799, 824, 826, 837, 839, 873, 876, 884, 908, 937, 954, 975, 991, 999} + [301, 334, 340, 268, 300, 486, 511, 533, 536, 539, 829, 838, 849, 858, 874, 892, 900, 913, 914, 934, 945, 947, 985, 992, 4, 19, 41, 63, 83, 143, 151, 180, 364, 391, 429, 443, 452, 478, 566, 589, 597, 639, 707, 708, 729, 754, 801, 807, 697]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [4, 7, 19, 32, 41, 44, 47, 63, 66, 70, 82, 83, 97, 131, 143, 145, 151, 158, 163, 167, 178, 180, 190, 191, 192, 215, 226, 227, 253, 262, 268, 277, 298, 300, 301, 309, 310, 311, 313, 315, 330, 334, 340, 344, 347, 348, 363, 364, 366, 391, 429, 430, 443, 448, 451, 452, 460, 478, 486, 511, 521, 531, 533, 536, 537, 539, 549, 557, 566, 569, 578, 580, 589, 594, 597, 598, 607, 610, 612, 621, 632, 634, 635, 639, 647, 652, 663, 665, 680, 691, 692, 697, 703, 707, 708, 716, 724, 729, 731, 738, 747, 754, 759, 798, 799, 801, 807, 824, 826, 829, 837, 838, 839, 849, 858, 873, 874, 876, 884, 892, 900, 908, 913, 914, 934, 937, 945, 947, 954, 975, 985, 991, 992, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [4, 7, 19, 32, 41, 44, 47, 63, 66, 70, 82, 83, 97, 131, 143, 145, 151, 158, 163, 167, 178, 180, 190, 191, 192, 215, 226, 227, 253, 262, 268, 277, 298, 300, 301, 309, 310, 311, 313, 315, 330, 334, 340, 344, 347, 348, 363, 364, 366, 391, 429, 430, 443, 448, 451, 452, 460, 478, 486, 511, 521, 531, 533, 536, 537, 539, 549, 557, 566, 569, 578, 580, 589, 594, 597, 598, 607, 610, 612, 621, 632, 634, 635, 639, 647, 652, 663, 665, 680, 691, 692, 697, 703, 707, 708, 716, 724, 729, 731, 738, 747, 754, 759, 798, 799, 801, 807, 824, 826, 829, 837, 838, 839, 849, 858, 873, 874, 876, 884, 892, 900, 908, 913, 914, 934, 937, 945, 947, 954, 975, 985, 991, 992, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [4, 7, 19, 32, 41, 44, 47, 63, 66, 70, 82, 83, 97, 131, 143, 145, 151, 158, 163, 167, 178, 180, 190, 191, 192, 215, 226, 227, 253, 262, 268, 277, 298, 300, 301, 309, 310, 311, 313, 315, 330, 334, 340, 344, 347, 348, 363, 364, 366, 391, 429, 430, 443, 448, 451, 452, 460, 478, 486, 511, 521, 531, 533, 536, 537, 539, 549, 557, 566, 569, 578, 580, 589, 594, 597, 598, 607, 610, 612, 621, 632, 634, 635, 639, 647, 652, 663, 665, 680, 691, 692, 697, 703, 707, 708, 716, 724, 729, 731, 738, 747, 754, 759, 798, 799, 801, 807, 824, 826, 829, 837, 838, 839, 849, 858, 873, 874, 876, 884, 892, 900, 908, 913, 914, 934, 937, 945, 947, 954, 975, 985, 991, 992, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 10, 20, 34, 41, 61, 85, 102, 110, 125, 148, 160, 180, 203, 205, 224, 231, 247, 263, 268, 271, 289, 293, 315, 329, 344, 362, 370, 384, 389, 393, 405, 431, 443, 464, 481, 482, 505, 513, 517, 567, 580, 583, 592, 599, 612, 616, 624, 628, 639, 646, 647, 662, 679, 690, 692, 746, 749, 752, 754, 798, 835, 890, 899, 907, 911, 922, 923, 953, 964, 972, 990}
[INFO] [stdout] b items: {29, 66, 68, 84, 114, 121, 140, 163, 289, 319, 336, 394, 405, 426, 454, 456, 460, 473, 479, 556, 653, 669, 685, 688, 701, 791, 792, 844, 856, 874, 899, 984, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 991), fp: EncodedCountingMonoid(72, SumMonoid(34719)) }], 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, 460), fp: EncodedCountingMonoid(16, SumMonoid(3864)) }, Fingerprint { range: Range(460, 991), fp: EncodedCountingMonoid(16, SumMonoid(11404)) }], item_sets: [ItemSet { range: Range(991, 1), items: [999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 247), fp: EncodedCountingMonoid(17, SumMonoid(1940)) }, Fingerprint { range: Range(247, 460), fp: EncodedCountingMonoid(17, SumMonoid(5796)) }, Fingerprint { range: Range(460, 679), fp: EncodedCountingMonoid(19, SumMonoid(10957)) }, Fingerprint { range: Range(679, 991), fp: EncodedCountingMonoid(19, SumMonoid(16026)) }], item_sets: [], wants: [999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 114), fp: EncodedCountingMonoid(4, SumMonoid(247)) }, Fingerprint { range: Range(114, 247), fp: EncodedCountingMonoid(4, SumMonoid(538)) }, Fingerprint { range: Range(247, 405), fp: EncodedCountingMonoid(4, SumMonoid(1338)) }, Fingerprint { range: Range(405, 460), fp: EncodedCountingMonoid(4, SumMonoid(1741)) }, Fingerprint { range: Range(460, 556), fp: EncodedCountingMonoid(3, SumMonoid(1412)) }, Fingerprint { range: Range(556, 679), fp: EncodedCountingMonoid(3, SumMonoid(1878)) }, Fingerprint { range: Range(679, 844), fp: EncodedCountingMonoid(5, SumMonoid(3657)) }, Fingerprint { range: Range(844, 991), fp: EncodedCountingMonoid(5, SumMonoid(4457)) }], item_sets: [], wants: [], provide: [(999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 61), fp: EncodedCountingMonoid(5, SumMonoid(106)) }, Fingerprint { range: Range(61, 114), fp: EncodedCountingMonoid(4, SumMonoid(358)) }, Fingerprint { range: Range(114, 203), fp: EncodedCountingMonoid(4, SumMonoid(613)) }, Fingerprint { range: Range(203, 247), fp: EncodedCountingMonoid(4, SumMonoid(863)) }, Fingerprint { range: Range(247, 329), fp: EncodedCountingMonoid(7, SumMonoid(1946)) }, Fingerprint { range: Range(329, 405), fp: EncodedCountingMonoid(7, SumMonoid(2571)) }, Fingerprint { range: Range(460, 505), fp: EncodedCountingMonoid(3, SumMonoid(1427)) }, Fingerprint { range: Range(505, 556), fp: EncodedCountingMonoid(3, SumMonoid(1535)) }, Fingerprint { range: Range(556, 624), fp: EncodedCountingMonoid(7, SumMonoid(4149)) }, Fingerprint { range: Range(624, 679), fp: EncodedCountingMonoid(6, SumMonoid(3846)) }, Fingerprint { range: Range(679, 752), fp: EncodedCountingMonoid(5, SumMonoid(3556)) }, Fingerprint { range: Range(752, 844), fp: EncodedCountingMonoid(4, SumMonoid(3139)) }, Fingerprint { range: Range(844, 923), fp: EncodedCountingMonoid(5, SumMonoid(4529)) }, Fingerprint { range: Range(923, 991), fp: EncodedCountingMonoid(5, SumMonoid(4802)) }], item_sets: [ItemSet { range: Range(405, 443), items: [405, 431], want_response: true }, ItemSet { range: Range(443, 460), items: [443], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(405, 443), items: [405, 426], want_response: false }, ItemSet { range: Range(443, 460), items: [454, 456], want_response: false }, ItemSet { range: Range(1, 61), items: [29], want_response: true }, ItemSet { range: Range(61, 84), items: [66, 68], want_response: true }, ItemSet { range: Range(84, 114), items: [84], want_response: true }, ItemSet { range: Range(114, 140), items: [114, 121], want_response: true }, ItemSet { range: Range(140, 203), items: [140, 163], want_response: true }, ItemSet { range: Range(203, 247), items: [], want_response: true }, ItemSet { range: Range(247, 329), items: [289, 319], want_response: true }, ItemSet { range: Range(329, 405), items: [336, 394], want_response: true }, ItemSet { range: Range(460, 479), items: [460, 473], want_response: true }, ItemSet { range: Range(479, 505), items: [479], want_response: true }, ItemSet { range: Range(505, 556), items: [], want_response: true }, ItemSet { range: Range(556, 624), items: [556], want_response: true }, ItemSet { range: Range(624, 679), items: [653, 669], want_response: true }, ItemSet { range: Range(679, 701), items: [685, 688], want_response: true }, ItemSet { range: Range(701, 752), items: [701], want_response: true }, ItemSet { range: Range(752, 844), items: [791, 792], want_response: true }, ItemSet { range: Range(844, 874), items: [844, 856], want_response: true }, ItemSet { range: Range(874, 923), items: [874, 899], want_response: true }, ItemSet { range: Range(923, 991), items: [984], want_response: true }], wants: [431, 443], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(1, 61), items: [1, 10, 20, 34, 41], want_response: false }, ItemSet { range: Range(61, 84), items: [61], want_response: false }, ItemSet { range: Range(84, 114), items: [85, 102, 110], want_response: false }, ItemSet { range: Range(114, 140), items: [125], want_response: false }, ItemSet { range: Range(140, 203), items: [148, 160, 180], want_response: false }, ItemSet { range: Range(203, 247), items: [203, 205, 224, 231], want_response: false }, ItemSet { range: Range(247, 329), items: [247, 263, 268, 271, 289, 293, 315], want_response: false }, ItemSet { range: Range(329, 405), items: [329, 344, 362, 370, 384, 389, 393], want_response: false }, ItemSet { range: Range(460, 479), items: [464], want_response: false }, ItemSet { range: Range(479, 505), items: [481, 482], want_response: false }, ItemSet { range: Range(505, 556), items: [505, 513, 517], want_response: false }, ItemSet { range: Range(556, 624), items: [567, 580, 583, 592, 599, 612, 616], want_response: false }, ItemSet { range: Range(624, 679), items: [624, 628, 639, 646, 647, 662], want_response: false }, ItemSet { range: Range(679, 701), items: [679, 690, 692], want_response: false }, ItemSet { range: Range(701, 752), items: [746, 749], want_response: false }, ItemSet { range: Range(752, 844), items: [752, 754, 798, 835], want_response: false }, ItemSet { range: Range(844, 874), items: [], want_response: false }, ItemSet { range: Range(874, 923), items: [890, 899, 907, 911, 922], want_response: false }, ItemSet { range: Range(923, 991), items: [923, 953, 964, 972, 990], want_response: false }], wants: [426, 454, 456, 29, 66, 68, 84, 114, 121, 140, 163, 319, 336, 394, 460, 473, 479, 556, 653, 669, 685, 688, 701, 791, 792, 844, 856, 874, 984], provide: [(431, true), (443, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [1, 10, 20, 34, 41, 61, 85, 102, 110, 125, 148, 160, 180, 203, 205, 224, 231, 247, 263, 268, 271, 293, 315, 329, 344, 362, 370, 384, 389, 393, 464, 481, 482, 505, 513, 517, 567, 580, 583, 592, 599, 612, 616, 624, 628, 639, 646, 647, 662, 679, 690, 692, 746, 749, 752, 754, 798, 835, 890, 907, 911, 922, 923, 953, 964, 972, 990], provide: [(426, true), (454, true), (456, true), (29, true), (66, true), (68, true), (84, true), (114, true), (121, true), (140, true), (163, true), (319, true), (336, true), (394, true), (460, true), (473, true), (479, true), (556, true), (653, true), (669, true), (685, true), (688, true), (701, true), (791, true), (792, true), (844, true), (856, true), (874, true), (984, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(1, true), (10, true), (20, true), (34, true), (41, true), (61, true), (85, true), (102, true), (110, true), (125, true), (148, true), (160, true), (180, true), (203, true), (205, true), (224, true), (231, true), (247, true), (263, true), (268, true), (271, true), (293, true), (315, true), (329, true), (344, true), (362, true), (370, true), (384, true), (389, true), (393, true), (464, true), (481, true), (482, true), (505, true), (513, true), (517, true), (567, true), (580, true), (583, true), (592, true), (599, true), (612, true), (616, true), (624, true), (628, true), (639, true), (646, true), (647, true), (662, true), (679, true), (690, true), (692, true), (746, true), (749, true), (752, true), (754, true), (798, true), (835, true), (890, true), (907, true), (911, true), (922, true), (923, true), (953, true), (964, true), (972, true), (990, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 10, 20, 34, 41, 61, 85, 102, 110, 125, 148, 160, 180, 203, 205, 224, 231, 247, 263, 268, 271, 289, 293, 315, 329, 344, 362, 370, 384, 389, 393, 405, 431, 443, 464, 481, 482, 505, 513, 517, 567, 580, 583, 592, 599, 612, 616, 624, 628, 639, 646, 647, 662, 679, 690, 692, 746, 749, 752, 754, 798, 835, 890, 899, 907, 911, 922, 923, 953, 964, 972, 990} + [999, 426, 454, 456, 29, 66, 68, 84, 114, 121, 140, 163, 319, 336, 394, 460, 473, 479, 556, 653, 669, 685, 688, 701, 791, 792, 844, 856, 874, 984]
[INFO] [stdout] b all: {29, 66, 68, 84, 114, 121, 140, 163, 289, 319, 336, 394, 405, 426, 454, 456, 460, 473, 479, 556, 653, 669, 685, 688, 701, 791, 792, 844, 856, 874, 899, 984, 999} + [431, 443, 1, 10, 20, 34, 41, 61, 85, 102, 110, 125, 148, 160, 180, 203, 205, 224, 231, 247, 263, 268, 271, 293, 315, 329, 344, 362, 370, 384, 389, 393, 464, 481, 482, 505, 513, 517, 567, 580, 583, 592, 599, 612, 616, 624, 628, 639, 646, 647, 662, 679, 690, 692, 746, 749, 752, 754, 798, 835, 890, 907, 911, 922, 923, 953, 964, 972, 990]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 10, 20, 29, 34, 41, 61, 66, 68, 84, 85, 102, 110, 114, 121, 125, 140, 148, 160, 163, 180, 203, 205, 224, 231, 247, 263, 268, 271, 289, 293, 315, 319, 329, 336, 344, 362, 370, 384, 389, 393, 394, 405, 426, 431, 443, 454, 456, 460, 464, 473, 479, 481, 482, 505, 513, 517, 556, 567, 580, 583, 592, 599, 612, 616, 624, 628, 639, 646, 647, 653, 662, 669, 679, 685, 688, 690, 692, 701, 746, 749, 752, 754, 791, 792, 798, 835, 844, 856, 874, 890, 899, 907, 911, 922, 923, 953, 964, 972, 984, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 10, 20, 29, 34, 41, 61, 66, 68, 84, 85, 102, 110, 114, 121, 125, 140, 148, 160, 163, 180, 203, 205, 224, 231, 247, 263, 268, 271, 289, 293, 315, 319, 329, 336, 344, 362, 370, 384, 389, 393, 394, 405, 426, 431, 443, 454, 456, 460, 464, 473, 479, 481, 482, 505, 513, 517, 556, 567, 580, 583, 592, 599, 612, 616, 624, 628, 639, 646, 647, 653, 662, 669, 679, 685, 688, 690, 692, 701, 746, 749, 752, 754, 791, 792, 798, 835, 844, 856, 874, 890, 899, 907, 911, 922, 923, 953, 964, 972, 984, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 10, 20, 29, 34, 41, 61, 66, 68, 84, 85, 102, 110, 114, 121, 125, 140, 148, 160, 163, 180, 203, 205, 224, 231, 247, 263, 268, 271, 289, 293, 315, 319, 329, 336, 344, 362, 370, 384, 389, 393, 394, 405, 426, 431, 443, 454, 456, 460, 464, 473, 479, 481, 482, 505, 513, 517, 556, 567, 580, 583, 592, 599, 612, 616, 624, 628, 639, 646, 647, 653, 662, 669, 679, 685, 688, 690, 692, 701, 746, 749, 752, 754, 791, 792, 798, 835, 844, 856, 874, 890, 899, 907, 911, 922, 923, 953, 964, 972, 984, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {58, 350, 496, 519, 838, 887, 929}
[INFO] [stdout] b items: {36, 97, 104, 271, 273, 287, 353, 369, 502, 592, 819, 970}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(58, 930), fp: EncodedCountingMonoid(7, SumMonoid(4077)) }], item_sets: [ItemSet { range: Range(930, 58), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(58, 353), fp: EncodedCountingMonoid(5, SumMonoid(1032)) }, Fingerprint { range: Range(353, 930), fp: EncodedCountingMonoid(5, SumMonoid(2635)) }], item_sets: [ItemSet { range: Range(930, 58), items: [970, 36], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(353, 887), fp: EncodedCountingMonoid(3, SumMonoid(1853)) }], item_sets: [ItemSet { range: Range(58, 353), items: [58, 350], want_response: true }, ItemSet { range: Range(887, 930), items: [887, 929], want_response: true }], wants: [970, 36], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(353, 592), fp: EncodedCountingMonoid(3, SumMonoid(1224)) }], item_sets: [ItemSet { range: Range(58, 353), items: [97, 104, 271, 273, 287], want_response: false }, ItemSet { range: Range(887, 930), items: [], want_response: false }, ItemSet { range: Range(592, 887), items: [592, 819], want_response: true }], wants: [58, 350, 887, 929], provide: [(970, true), (36, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(592, 887), items: [838], want_response: false }, ItemSet { range: Range(353, 592), items: [496, 519], want_response: true }], wants: [97, 104, 271, 273, 287, 592, 819], provide: [(58, true), (350, true), (887, true), (929, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(353, 592), items: [353, 369, 502], want_response: false }], wants: [838, 496, 519], provide: [(97, true), (104, true), (271, true), (273, true), (287, true), (592, true), (819, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [353, 369, 502], provide: [(838, true), (496, true), (519, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(353, true), (369, true), (502, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {58, 350, 496, 519, 838, 887, 929} + [970, 36, 97, 104, 271, 273, 287, 592, 819, 353, 369, 502]
[INFO] [stdout] b all: {36, 97, 104, 271, 273, 287, 353, 369, 502, 592, 819, 970} + [58, 350, 887, 929, 838, 496, 519]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [36, 58, 97, 104, 271, 273, 287, 350, 353, 369, 496, 502, 519, 592, 819, 838, 887, 929, 970]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [36, 58, 97, 104, 271, 273, 287, 350, 353, 369, 496, 502, 519, 592, 819, 838, 887, 929, 970], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [36, 58, 97, 104, 271, 273, 287, 350, 353, 369, 496, 502, 519, 592, 819, 838, 887, 929, 970], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {20, 54, 67, 86, 87, 93, 138, 165, 177, 185, 223, 246, 271, 281, 284, 286, 307, 332, 337, 345, 373, 393, 428, 446, 461, 527, 532, 618, 644, 679, 705, 722, 724, 761, 769, 825, 871, 875, 912, 962}
[INFO] [stdout] b items: {8, 9, 20, 50, 53, 54, 75, 86, 92, 93, 111, 158, 174, 191, 203, 209, 216, 219, 234, 242, 243, 262, 270, 275, 296, 304, 305, 312, 320, 333, 334, 341, 347, 354, 360, 379, 390, 410, 413, 416, 419, 422, 425, 441, 458, 465, 466, 473, 485, 523, 541, 544, 547, 551, 559, 561, 592, 601, 602, 606, 626, 631, 635, 642, 650, 680, 687, 688, 699, 703, 711, 728, 748, 758, 772, 793, 808, 830, 835, 842, 845, 869, 874, 899, 914, 963, 970, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(20, 963), fp: EncodedCountingMonoid(40, SumMonoid(17211)) }], item_sets: [ItemSet { range: Range(963, 20), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(20, 458), fp: EncodedCountingMonoid(42, SumMonoid(10851)) }, Fingerprint { range: Range(458, 963), fp: EncodedCountingMonoid(41, SumMonoid(27441)) }], item_sets: [ItemSet { range: Range(963, 20), items: [963, 970, 999, 8, 9], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(20, 271), fp: EncodedCountingMonoid(12, SumMonoid(1541)) }, Fingerprint { range: Range(271, 458), fp: EncodedCountingMonoid(12, SumMonoid(4083)) }, Fingerprint { range: Range(458, 724), fp: EncodedCountingMonoid(8, SumMonoid(4888)) }, Fingerprint { range: Range(724, 963), fp: EncodedCountingMonoid(8, SumMonoid(6699)) }], item_sets: [], wants: [963, 970, 999, 8, 9], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(20, 191), fp: EncodedCountingMonoid(11, SumMonoid(966)) }, Fingerprint { range: Range(191, 271), fp: EncodedCountingMonoid(10, SumMonoid(2289)) }, Fingerprint { range: Range(271, 360), fp: EncodedCountingMonoid(11, SumMonoid(3521)) }, Fingerprint { range: Range(360, 458), fp: EncodedCountingMonoid(10, SumMonoid(4075)) }, Fingerprint { range: Range(458, 602), fp: EncodedCountingMonoid(14, SumMonoid(7366)) }, Fingerprint { range: Range(602, 724), fp: EncodedCountingMonoid(13, SumMonoid(8560)) }, Fingerprint { range: Range(724, 835), fp: EncodedCountingMonoid(7, SumMonoid(5437)) }, Fingerprint { range: Range(835, 963), fp: EncodedCountingMonoid(7, SumMonoid(6078)) }], item_sets: [], wants: [], provide: [(963, true), (970, true), (999, true), (8, true), (9, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(20, 93), fp: EncodedCountingMonoid(5, SumMonoid(314)) }, Fingerprint { range: Range(93, 191), fp: EncodedCountingMonoid(5, SumMonoid(758)) }, Fingerprint { range: Range(271, 307), fp: EncodedCountingMonoid(4, SumMonoid(1122)) }, Fingerprint { range: Range(307, 360), fp: EncodedCountingMonoid(4, SumMonoid(1321)) }, Fingerprint { range: Range(602, 705), fp: EncodedCountingMonoid(3, SumMonoid(1941)) }], item_sets: [ItemSet { range: Range(191, 271), items: [223, 246], want_response: true }, ItemSet { range: Range(360, 428), items: [373, 393], want_response: true }, ItemSet { range: Range(428, 458), items: [428, 446], want_response: true }, ItemSet { range: Range(458, 532), items: [461, 527], want_response: true }, ItemSet { range: Range(532, 602), items: [532], want_response: true }, ItemSet { range: Range(705, 724), items: [705, 722], want_response: true }, ItemSet { range: Range(724, 769), items: [724, 761], want_response: true }, ItemSet { range: Range(769, 835), items: [769, 825], want_response: true }, ItemSet { range: Range(835, 912), items: [871, 875], want_response: true }, ItemSet { range: Range(912, 963), items: [912, 962], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(20, 75), fp: EncodedCountingMonoid(4, SumMonoid(177)) }, Fingerprint { range: Range(75, 93), fp: EncodedCountingMonoid(3, SumMonoid(253)) }, Fingerprint { range: Range(307, 341), fp: EncodedCountingMonoid(4, SumMonoid(1299)) }, Fingerprint { range: Range(341, 360), fp: EncodedCountingMonoid(3, SumMonoid(1042)) }, Fingerprint { range: Range(602, 650), fp: EncodedCountingMonoid(6, SumMonoid(3742)) }, Fingerprint { range: Range(650, 705), fp: EncodedCountingMonoid(6, SumMonoid(4107)) }], item_sets: [ItemSet { range: Range(191, 271), items: [191, 203, 209, 216, 219, 234, 242, 243, 262, 270], want_response: false }, ItemSet { range: Range(360, 428), items: [360, 379, 390, 410, 413, 416, 419, 422, 425], want_response: false }, ItemSet { range: Range(428, 458), items: [441], want_response: false }, ItemSet { range: Range(458, 532), items: [458, 465, 466, 473, 485, 523], want_response: false }, ItemSet { range: Range(532, 602), items: [541, 544, 547, 551, 559, 561, 592, 601], want_response: false }, ItemSet { range: Range(705, 724), items: [711], want_response: false }, ItemSet { range: Range(724, 769), items: [728, 748, 758], want_response: false }, ItemSet { range: Range(769, 835), items: [772, 793, 808, 830], want_response: false }, ItemSet { range: Range(835, 912), items: [835, 842, 845, 869, 874, 899], want_response: false }, ItemSet { range: Range(912, 963), items: [914], want_response: false }, ItemSet { range: Range(93, 158), items: [93, 111], want_response: true }, ItemSet { range: Range(158, 191), items: [158, 174], want_response: true }, ItemSet { range: Range(271, 304), items: [275, 296], want_response: true }, ItemSet { range: Range(304, 307), items: [304, 305], want_response: true }], wants: [223, 246, 373, 393, 428, 446, 461, 527, 532, 705, 722, 724, 761, 769, 825, 871, 875, 912, 962], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(93, 158), items: [93, 138], want_response: false }, ItemSet { range: Range(158, 191), items: [165, 177, 185], want_response: false }, ItemSet { range: Range(271, 304), items: [271, 281, 284, 286], want_response: false }, ItemSet { range: Range(304, 307), items: [], want_response: false }, ItemSet { range: Range(20, 67), items: [20, 54], want_response: true }, ItemSet { range: Range(67, 75), items: [67], want_response: true }, ItemSet { range: Range(75, 93), items: [86, 87], want_response: true }, ItemSet { range: Range(307, 337), items: [307, 332], want_response: true }, ItemSet { range: Range(337, 341), items: [337], want_response: true }, ItemSet { range: Range(341, 360), items: [345], want_response: true }, ItemSet { range: Range(602, 650), items: [618, 644], want_response: true }, ItemSet { range: Range(650, 705), items: [679], want_response: true }], wants: [191, 203, 209, 216, 219, 234, 242, 243, 262, 270, 360, 379, 390, 410, 413, 416, 419, 422, 425, 441, 458, 465, 466, 473, 485, 523, 541, 544, 547, 551, 559, 561, 592, 601, 711, 728, 748, 758, 772, 793, 808, 830, 835, 842, 845, 869, 874, 899, 914, 111, 158, 174, 275, 296, 304, 305], provide: [(223, true), (246, true), (373, true), (393, true), (428, true), (446, true), (461, true), (527, true), (532, true), (705, true), (722, true), (724, true), (761, true), (769, true), (825, true), (871, true), (875, true), (912, true), (962, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(20, 67), items: [20, 50, 53, 54], want_response: false }, ItemSet { range: Range(67, 75), items: [], want_response: false }, ItemSet { range: Range(75, 93), items: [75, 86, 92], want_response: false }, ItemSet { range: Range(307, 337), items: [312, 320, 333, 334], want_response: false }, ItemSet { range: Range(337, 341), items: [], want_response: false }, ItemSet { range: Range(341, 360), items: [341, 347, 354], want_response: false }, ItemSet { range: Range(602, 650), items: [602, 606, 626, 631, 635, 642], want_response: false }, ItemSet { range: Range(650, 705), items: [650, 680, 687, 688, 699, 703], want_response: false }], wants: [138, 165, 177, 185, 271, 281, 284, 286, 67, 87, 307, 332, 337, 345, 618, 644, 679], provide: [(191, true), (203, true), (209, true), (216, true), (219, true), (234, true), (242, true), (243, true), (262, true), (270, true), (360, true), (379, true), (390, true), (410, true), (413, true), (416, true), (419, true), (422, true), (425, true), (441, true), (458, true), (465, true), (466, true), (473, true), (485, true), (523, true), (541, true), (544, true), (547, true), (551, true), (559, true), (561, true), (592, true), (601, true), (711, true), (728, true), (748, true), (758, true), (772, true), (793, true), (808, true), (830, true), (835, true), (842, true), (845, true), (869, true), (874, true), (899, true), (914, true), (111, true), (158, true), (174, true), (275, true), (296, true), (304, true), (305, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [50, 53, 75, 92, 312, 320, 333, 334, 341, 347, 354, 602, 606, 626, 631, 635, 642, 650, 680, 687, 688, 699, 703], provide: [(138, true), (165, true), (177, true), (185, true), (271, true), (281, true), (284, true), (286, true), (67, true), (87, true), (307, true), (332, true), (337, true), (345, true), (618, true), (644, true), (679, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(50, true), (53, true), (75, true), (92, true), (312, true), (320, true), (333, true), (334, true), (341, true), (347, true), (354, true), (602, true), (606, true), (626, true), (631, true), (635, true), (642, true), (650, true), (680, true), (687, true), (688, true), (699, true), (703, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {20, 54, 67, 86, 87, 93, 138, 165, 177, 185, 223, 246, 271, 281, 284, 286, 307, 332, 337, 345, 373, 393, 428, 446, 461, 527, 532, 618, 644, 679, 705, 722, 724, 761, 769, 825, 871, 875, 912, 962} + [963, 970, 999, 8, 9, 191, 203, 209, 216, 219, 234, 242, 243, 262, 270, 360, 379, 390, 410, 413, 416, 419, 422, 425, 441, 458, 465, 466, 473, 485, 523, 541, 544, 547, 551, 559, 561, 592, 601, 711, 728, 748, 758, 772, 793, 808, 830, 835, 842, 845, 869, 874, 899, 914, 111, 158, 174, 275, 296, 304, 305, 50, 53, 75, 92, 312, 320, 333, 334, 341, 347, 354, 602, 606, 626, 631, 635, 642, 650, 680, 687, 688, 699, 703]
[INFO] [stdout] b all: {8, 9, 20, 50, 53, 54, 75, 86, 92, 93, 111, 158, 174, 191, 203, 209, 216, 219, 234, 242, 243, 262, 270, 275, 296, 304, 305, 312, 320, 333, 334, 341, 347, 354, 360, 379, 390, 410, 413, 416, 419, 422, 425, 441, 458, 465, 466, 473, 485, 523, 541, 544, 547, 551, 559, 561, 592, 601, 602, 606, 626, 631, 635, 642, 650, 680, 687, 688, 699, 703, 711, 728, 748, 758, 772, 793, 808, 830, 835, 842, 845, 869, 874, 899, 914, 963, 970, 999} + [223, 246, 373, 393, 428, 446, 461, 527, 532, 705, 722, 724, 761, 769, 825, 871, 875, 912, 962, 138, 165, 177, 185, 271, 281, 284, 286, 67, 87, 307, 332, 337, 345, 618, 644, 679]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [8, 9, 20, 50, 53, 54, 67, 75, 86, 87, 92, 93, 111, 138, 158, 165, 174, 177, 185, 191, 203, 209, 216, 219, 223, 234, 242, 243, 246, 262, 270, 271, 275, 281, 284, 286, 296, 304, 305, 307, 312, 320, 332, 333, 334, 337, 341, 345, 347, 354, 360, 373, 379, 390, 393, 410, 413, 416, 419, 422, 425, 428, 441, 446, 458, 461, 465, 466, 473, 485, 523, 527, 532, 541, 544, 547, 551, 559, 561, 592, 601, 602, 606, 618, 626, 631, 635, 642, 644, 650, 679, 680, 687, 688, 699, 703, 705, 711, 722, 724, 728, 748, 758, 761, 769, 772, 793, 808, 825, 830, 835, 842, 845, 869, 871, 874, 875, 899, 912, 914, 962, 963, 970, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [8, 9, 20, 50, 53, 54, 67, 75, 86, 87, 92, 93, 111, 138, 158, 165, 174, 177, 185, 191, 203, 209, 216, 219, 223, 234, 242, 243, 246, 262, 270, 271, 275, 281, 284, 286, 296, 304, 305, 307, 312, 320, 332, 333, 334, 337, 341, 345, 347, 354, 360, 373, 379, 390, 393, 410, 413, 416, 419, 422, 425, 428, 441, 446, 458, 461, 465, 466, 473, 485, 523, 527, 532, 541, 544, 547, 551, 559, 561, 592, 601, 602, 606, 618, 626, 631, 635, 642, 644, 650, 679, 680, 687, 688, 699, 703, 705, 711, 722, 724, 728, 748, 758, 761, 769, 772, 793, 808, 825, 830, 835, 842, 845, 869, 871, 874, 875, 899, 912, 914, 962, 963, 970, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [8, 9, 20, 50, 53, 54, 67, 75, 86, 87, 92, 93, 111, 138, 158, 165, 174, 177, 185, 191, 203, 209, 216, 219, 223, 234, 242, 243, 246, 262, 270, 271, 275, 281, 284, 286, 296, 304, 305, 307, 312, 320, 332, 333, 334, 337, 341, 345, 347, 354, 360, 373, 379, 390, 393, 410, 413, 416, 419, 422, 425, 428, 441, 446, 458, 461, 465, 466, 473, 485, 523, 527, 532, 541, 544, 547, 551, 559, 561, 592, 601, 602, 606, 618, 626, 631, 635, 642, 644, 650, 679, 680, 687, 688, 699, 703, 705, 711, 722, 724, 728, 748, 758, 761, 769, 772, 793, 808, 825, 830, 835, 842, 845, 869, 871, 874, 875, 899, 912, 914, 962, 963, 970, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 100, 292, 711, 769, 794, 814, 950, 955}
[INFO] [stdout] b items: {15, 21, 63, 88, 107, 131, 160, 226, 231, 300, 320, 384, 402, 407, 432, 467, 471, 483, 507, 511, 563, 632, 636, 668, 688, 708, 717, 768, 823, 860, 861, 874, 937, 980}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 956), fp: EncodedCountingMonoid(9, SumMonoid(5402)) }], item_sets: [ItemSet { range: Range(956, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 483), fp: EncodedCountingMonoid(16, SumMonoid(4210)) }, Fingerprint { range: Range(483, 956), fp: EncodedCountingMonoid(16, SumMonoid(11236)) }], item_sets: [ItemSet { range: Range(956, 17), items: [980, 15], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(483, 814), fp: EncodedCountingMonoid(3, SumMonoid(2274)) }, Fingerprint { range: Range(814, 956), fp: EncodedCountingMonoid(3, SumMonoid(2719)) }], item_sets: [ItemSet { range: Range(17, 292), items: [17, 100], want_response: true }, ItemSet { range: Range(292, 483), items: [292], want_response: true }], wants: [980, 15], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(483, 668), fp: EncodedCountingMonoid(6, SumMonoid(3332)) }, Fingerprint { range: Range(668, 814), fp: EncodedCountingMonoid(5, SumMonoid(3549)) }, Fingerprint { range: Range(814, 874), fp: EncodedCountingMonoid(3, SumMonoid(2544)) }], item_sets: [ItemSet { range: Range(17, 292), items: [21, 63, 88, 107, 131, 160, 226, 231], want_response: false }, ItemSet { range: Range(292, 483), items: [300, 320, 384, 402, 407, 432, 467, 471], want_response: false }, ItemSet { range: Range(874, 956), items: [874, 937], want_response: true }], wants: [17, 100, 292], provide: [(980, true), (15, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(874, 956), items: [950, 955], want_response: false }, ItemSet { range: Range(483, 668), items: [], want_response: true }, ItemSet { range: Range(668, 794), items: [711, 769], want_response: true }, ItemSet { range: Range(794, 814), items: [794], want_response: true }, ItemSet { range: Range(814, 874), items: [814], want_response: true }], wants: [21, 63, 88, 107, 131, 160, 226, 231, 300, 320, 384, 402, 407, 432, 467, 471, 874, 937], provide: [(17, true), (100, true), (292, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(483, 668), items: [483, 507, 511, 563, 632, 636], want_response: false }, ItemSet { range: Range(668, 794), items: [668, 688, 708, 717, 768], want_response: false }, ItemSet { range: Range(794, 814), items: [], want_response: false }, ItemSet { range: Range(814, 874), items: [823, 860, 861], want_response: false }], wants: [950, 955, 711, 769, 794, 814], provide: [(21, true), (63, true), (88, true), (107, true), (131, true), (160, true), (226, true), (231, true), (300, true), (320, true), (384, true), (402, true), (407, true), (432, true), (467, true), (471, true), (874, true), (937, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [483, 507, 511, 563, 632, 636, 668, 688, 708, 717, 768, 823, 860, 861], provide: [(950, true), (955, true), (711, true), (769, true), (794, true), (814, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(483, true), (507, true), (511, true), (563, true), (632, true), (636, true), (668, true), (688, true), (708, true), (717, true), (768, true), (823, true), (860, true), (861, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 100, 292, 711, 769, 794, 814, 950, 955} + [980, 15, 21, 63, 88, 107, 131, 160, 226, 231, 300, 320, 384, 402, 407, 432, 467, 471, 874, 937, 483, 507, 511, 563, 632, 636, 668, 688, 708, 717, 768, 823, 860, 861]
[INFO] [stdout] b all: {15, 21, 63, 88, 107, 131, 160, 226, 231, 300, 320, 384, 402, 407, 432, 467, 471, 483, 507, 511, 563, 632, 636, 668, 688, 708, 717, 768, 823, 860, 861, 874, 937, 980} + [17, 100, 292, 950, 955, 711, 769, 794, 814]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [15, 17, 21, 63, 88, 100, 107, 131, 160, 226, 231, 292, 300, 320, 384, 402, 407, 432, 467, 471, 483, 507, 511, 563, 632, 636, 668, 688, 708, 711, 717, 768, 769, 794, 814, 823, 860, 861, 874, 937, 950, 955, 980]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [15, 17, 21, 63, 88, 100, 107, 131, 160, 226, 231, 292, 300, 320, 384, 402, 407, 432, 467, 471, 483, 507, 511, 563, 632, 636, 668, 688, 708, 711, 717, 768, 769, 794, 814, 823, 860, 861, 874, 937, 950, 955, 980], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [15, 17, 21, 63, 88, 100, 107, 131, 160, 226, 231, 292, 300, 320, 384, 402, 407, 432, 467, 471, 483, 507, 511, 563, 632, 636, 668, 688, 708, 711, 717, 768, 769, 794, 814, 823, 860, 861, 874, 937, 950, 955, 980], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {5, 25, 26, 86, 87, 92, 103, 105, 116, 122, 129, 152, 172, 214, 224, 241, 243, 259, 263, 270, 281, 282, 312, 316, 387, 414, 441, 444, 448, 457, 459, 463, 467, 487, 507, 511, 522, 574, 597, 606, 613, 614, 643, 645, 648, 684, 713, 716, 737, 787, 814, 817, 820, 834, 847, 892, 906, 929, 934, 950, 953, 975, 995}
[INFO] [stdout] b items: {92, 111, 123, 133, 206, 269, 344, 352, 403, 409, 415, 553, 565, 593, 625, 636, 654, 664, 702, 709, 711, 770, 782, 807, 819, 837, 884, 909, 912, 938, 970, 973}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 996), fp: EncodedCountingMonoid(63, SumMonoid(30375)) }], item_sets: [ItemSet { range: Range(996, 5), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 654), fp: EncodedCountingMonoid(16, SumMonoid(5829)) }, Fingerprint { range: Range(654, 996), fp: EncodedCountingMonoid(16, SumMonoid(13041)) }], item_sets: [ItemSet { range: Range(996, 5), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 316), fp: EncodedCountingMonoid(23, SumMonoid(3809)) }, Fingerprint { range: Range(316, 654), fp: EncodedCountingMonoid(22, SumMonoid(11263)) }, Fingerprint { range: Range(654, 847), fp: EncodedCountingMonoid(9, SumMonoid(6922)) }, Fingerprint { range: Range(847, 996), fp: EncodedCountingMonoid(9, SumMonoid(8381)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(5, 133), fp: EncodedCountingMonoid(3, SumMonoid(326)) }, Fingerprint { range: Range(133, 316), fp: EncodedCountingMonoid(3, SumMonoid(608)) }, Fingerprint { range: Range(316, 553), fp: EncodedCountingMonoid(5, SumMonoid(1923)) }, Fingerprint { range: Range(553, 654), fp: EncodedCountingMonoid(5, SumMonoid(2972)) }, Fingerprint { range: Range(654, 770), fp: EncodedCountingMonoid(5, SumMonoid(3440)) }, Fingerprint { range: Range(770, 847), fp: EncodedCountingMonoid(5, SumMonoid(4015)) }, Fingerprint { range: Range(847, 938), fp: EncodedCountingMonoid(3, SumMonoid(2705)) }, Fingerprint { range: Range(938, 996), fp: EncodedCountingMonoid(3, SumMonoid(2881)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(5, 103), fp: EncodedCountingMonoid(6, SumMonoid(321)) }, Fingerprint { range: Range(103, 133), fp: EncodedCountingMonoid(5, SumMonoid(575)) }, Fingerprint { range: Range(133, 259), fp: EncodedCountingMonoid(6, SumMonoid(1246)) }, Fingerprint { range: Range(259, 316), fp: EncodedCountingMonoid(6, SumMonoid(1667)) }, Fingerprint { range: Range(316, 459), fp: EncodedCountingMonoid(7, SumMonoid(2907)) }, Fingerprint { range: Range(459, 553), fp: EncodedCountingMonoid(7, SumMonoid(3416)) }, Fingerprint { range: Range(553, 614), fp: EncodedCountingMonoid(4, SumMonoid(2390)) }, Fingerprint { range: Range(614, 654), fp: EncodedCountingMonoid(4, SumMonoid(2550)) }, Fingerprint { range: Range(770, 820), fp: EncodedCountingMonoid(3, SumMonoid(2418)) }, Fingerprint { range: Range(847, 929), fp: EncodedCountingMonoid(3, SumMonoid(2645)) }], item_sets: [ItemSet { range: Range(654, 716), items: [684, 713], want_response: true }, ItemSet { range: Range(716, 770), items: [716, 737], want_response: true }, ItemSet { range: Range(820, 847), items: [820, 834], want_response: true }, ItemSet { range: Range(929, 938), items: [929, 934], want_response: true }, ItemSet { range: Range(938, 975), items: [950, 953], want_response: true }, ItemSet { range: Range(975, 996), items: [975, 995], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(316, 409), fp: EncodedCountingMonoid(3, SumMonoid(1099)) }], item_sets: [ItemSet { range: Range(654, 716), items: [654, 664, 702, 709, 711], want_response: false }, ItemSet { range: Range(716, 770), items: [], want_response: false }, ItemSet { range: Range(820, 847), items: [837], want_response: false }, ItemSet { range: Range(929, 938), items: [], want_response: false }, ItemSet { range: Range(938, 975), items: [938, 970, 973], want_response: false }, ItemSet { range: Range(975, 996), items: [], want_response: false }, ItemSet { range: Range(5, 103), items: [92], want_response: true }, ItemSet { range: Range(103, 133), items: [111, 123], want_response: true }, ItemSet { range: Range(133, 259), items: [133, 206], want_response: true }, ItemSet { range: Range(259, 316), items: [269], want_response: true }, ItemSet { range: Range(409, 459), items: [409, 415], want_response: true }, ItemSet { range: Range(459, 553), items: [], want_response: true }, ItemSet { range: Range(553, 593), items: [553, 565], want_response: true }, ItemSet { range: Range(593, 614), items: [593], want_response: true }, ItemSet { range: Range(614, 654), items: [625, 636], want_response: true }, ItemSet { range: Range(770, 807), items: [770, 782], want_response: true }, ItemSet { range: Range(807, 820), items: [807, 819], want_response: true }, ItemSet { range: Range(847, 912), items: [884, 909], want_response: true }, ItemSet { range: Range(912, 929), items: [912], want_response: true }], wants: [684, 713, 716, 737, 820, 834, 929, 934, 950, 953, 975, 995], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(5, 103), items: [5, 25, 26, 86, 87, 92], want_response: false }, ItemSet { range: Range(103, 133), items: [103, 105, 116, 122, 129], want_response: false }, ItemSet { range: Range(133, 259), items: [152, 172, 214, 224, 241, 243], want_response: false }, ItemSet { range: Range(259, 316), items: [259, 263, 270, 281, 282, 312], want_response: false }, ItemSet { range: Range(409, 459), items: [414, 441, 444, 448, 457], want_response: false }, ItemSet { range: Range(459, 553), items: [459, 463, 467, 487, 507, 511, 522], want_response: false }, ItemSet { range: Range(553, 593), items: [574], want_response: false }, ItemSet { range: Range(593, 614), items: [597, 606, 613], want_response: false }, ItemSet { range: Range(614, 654), items: [614, 643, 645, 648], want_response: false }, ItemSet { range: Range(770, 807), items: [787], want_response: false }, ItemSet { range: Range(807, 820), items: [814, 817], want_response: false }, ItemSet { range: Range(847, 912), items: [847, 892, 906], want_response: false }, ItemSet { range: Range(912, 929), items: [], want_response: false }, ItemSet { range: Range(316, 409), items: [316, 387], want_response: true }], wants: [654, 664, 702, 709, 711, 837, 938, 970, 973, 111, 123, 133, 206, 269, 409, 415, 553, 565, 593, 625, 636, 770, 782, 807, 819, 884, 909, 912], provide: [(684, true), (713, true), (716, true), (737, true), (820, true), (834, true), (929, true), (934, true), (950, true), (953, true), (975, true), (995, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(316, 409), items: [344, 352, 403], want_response: false }], wants: [5, 25, 26, 86, 87, 103, 105, 116, 122, 129, 152, 172, 214, 224, 241, 243, 259, 263, 270, 281, 282, 312, 414, 441, 444, 448, 457, 459, 463, 467, 487, 507, 511, 522, 574, 597, 606, 613, 614, 643, 645, 648, 787, 814, 817, 847, 892, 906, 316, 387], provide: [(654, true), (664, true), (702, true), (709, true), (711, true), (837, true), (938, true), (970, true), (973, true), (111, true), (123, true), (133, true), (206, true), (269, true), (409, true), (415, true), (553, true), (565, true), (593, true), (625, true), (636, true), (770, true), (782, true), (807, true), (819, true), (884, true), (909, true), (912, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [344, 352, 403], provide: [(5, true), (25, true), (26, true), (86, true), (87, true), (103, true), (105, true), (116, true), (122, true), (129, true), (152, true), (172, true), (214, true), (224, true), (241, true), (243, true), (259, true), (263, true), (270, true), (281, true), (282, true), (312, true), (414, true), (441, true), (444, true), (448, true), (457, true), (459, true), (463, true), (467, true), (487, true), (507, true), (511, true), (522, true), (574, true), (597, true), (606, true), (613, true), (614, true), (643, true), (645, true), (648, true), (787, true), (814, true), (817, true), (847, true), (892, true), (906, true), (316, true), (387, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(344, true), (352, true), (403, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {5, 25, 26, 86, 87, 92, 103, 105, 116, 122, 129, 152, 172, 214, 224, 241, 243, 259, 263, 270, 281, 282, 312, 316, 387, 414, 441, 444, 448, 457, 459, 463, 467, 487, 507, 511, 522, 574, 597, 606, 613, 614, 643, 645, 648, 684, 713, 716, 737, 787, 814, 817, 820, 834, 847, 892, 906, 929, 934, 950, 953, 975, 995} + [654, 664, 702, 709, 711, 837, 938, 970, 973, 111, 123, 133, 206, 269, 409, 415, 553, 565, 593, 625, 636, 770, 782, 807, 819, 884, 909, 912, 344, 352, 403]
[INFO] [stdout] b all: {92, 111, 123, 133, 206, 269, 344, 352, 403, 409, 415, 553, 565, 593, 625, 636, 654, 664, 702, 709, 711, 770, 782, 807, 819, 837, 884, 909, 912, 938, 970, 973} + [684, 713, 716, 737, 820, 834, 929, 934, 950, 953, 975, 995, 5, 25, 26, 86, 87, 103, 105, 116, 122, 129, 152, 172, 214, 224, 241, 243, 259, 263, 270, 281, 282, 312, 414, 441, 444, 448, 457, 459, 463, 467, 487, 507, 511, 522, 574, 597, 606, 613, 614, 643, 645, 648, 787, 814, 817, 847, 892, 906, 316, 387]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 25, 26, 86, 87, 92, 103, 105, 111, 116, 122, 123, 129, 133, 152, 172, 206, 214, 224, 241, 243, 259, 263, 269, 270, 281, 282, 312, 316, 344, 352, 387, 403, 409, 414, 415, 441, 444, 448, 457, 459, 463, 467, 487, 507, 511, 522, 553, 565, 574, 593, 597, 606, 613, 614, 625, 636, 643, 645, 648, 654, 664, 684, 702, 709, 711, 713, 716, 737, 770, 782, 787, 807, 814, 817, 819, 820, 834, 837, 847, 884, 892, 906, 909, 912, 929, 934, 938, 950, 953, 970, 973, 975, 995]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 25, 26, 86, 87, 92, 103, 105, 111, 116, 122, 123, 129, 133, 152, 172, 206, 214, 224, 241, 243, 259, 263, 269, 270, 281, 282, 312, 316, 344, 352, 387, 403, 409, 414, 415, 441, 444, 448, 457, 459, 463, 467, 487, 507, 511, 522, 553, 565, 574, 593, 597, 606, 613, 614, 625, 636, 643, 645, 648, 654, 664, 684, 702, 709, 711, 713, 716, 737, 770, 782, 787, 807, 814, 817, 819, 820, 834, 837, 847, 884, 892, 906, 909, 912, 929, 934, 938, 950, 953, 970, 973, 975, 995], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 25, 26, 86, 87, 92, 103, 105, 111, 116, 122, 123, 129, 133, 152, 172, 206, 214, 224, 241, 243, 259, 263, 269, 270, 281, 282, 312, 316, 344, 352, 387, 403, 409, 414, 415, 441, 444, 448, 457, 459, 463, 467, 487, 507, 511, 522, 553, 565, 574, 593, 597, 606, 613, 614, 625, 636, 643, 645, 648, 654, 664, 684, 702, 709, 711, 713, 716, 737, 770, 782, 787, 807, 814, 817, 819, 820, 834, 837, 847, 884, 892, 906, 909, 912, 929, 934, 938, 950, 953, 970, 973, 975, 995], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {2, 94, 101, 174, 238, 264, 360, 393, 419, 459, 505, 691, 703, 709, 841, 866, 920, 962}
[INFO] [stdout] b items: {21, 25, 47, 61, 67, 70, 90, 104, 110, 130, 132, 137, 167, 182, 186, 187, 197, 211, 216, 222, 240, 241, 250, 259, 271, 274, 293, 300, 313, 314, 331, 343, 347, 364, 370, 390, 402, 404, 409, 425, 430, 431, 433, 436, 458, 464, 471, 480, 500, 515, 519, 524, 538, 545, 554, 556, 559, 566, 573, 578, 585, 611, 620, 623, 649, 692, 702, 725, 738, 793, 805, 827, 831, 834, 835, 836, 845, 871, 881, 905, 911, 912, 927, 939, 946, 956, 971, 978}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 963), fp: EncodedCountingMonoid(18, SumMonoid(8701)) }], item_sets: [ItemSet { range: Range(963, 2), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(2, 436), fp: EncodedCountingMonoid(43, SumMonoid(10396)) }, Fingerprint { range: Range(436, 963), fp: EncodedCountingMonoid(43, SumMonoid(29635)) }], item_sets: [ItemSet { range: Range(963, 2), items: [971, 978], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 264), fp: EncodedCountingMonoid(5, SumMonoid(609)) }, Fingerprint { range: Range(264, 436), fp: EncodedCountingMonoid(4, SumMonoid(1436)) }, Fingerprint { range: Range(436, 841), fp: EncodedCountingMonoid(5, SumMonoid(3067)) }, Fingerprint { range: Range(841, 963), fp: EncodedCountingMonoid(4, SumMonoid(3589)) }], item_sets: [], wants: [971, 978], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(2, 167), fp: EncodedCountingMonoid(12, SumMonoid(994)) }, Fingerprint { range: Range(167, 264), fp: EncodedCountingMonoid(12, SumMonoid(2558)) }, Fingerprint { range: Range(264, 370), fp: EncodedCountingMonoid(10, SumMonoid(3150)) }, Fingerprint { range: Range(370, 436), fp: EncodedCountingMonoid(9, SumMonoid(3694)) }, Fingerprint { range: Range(436, 585), fp: EncodedCountingMonoid(17, SumMonoid(8836)) }, Fingerprint { range: Range(585, 841), fp: EncodedCountingMonoid(16, SumMonoid(11706)) }, Fingerprint { range: Range(841, 912), fp: EncodedCountingMonoid(5, SumMonoid(4413)) }, Fingerprint { range: Range(912, 963), fp: EncodedCountingMonoid(5, SumMonoid(4680)) }], item_sets: [], wants: [], provide: [(971, true), (978, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(2, 101), items: [2, 94], want_response: true }, ItemSet { range: Range(101, 167), items: [101], want_response: true }, ItemSet { range: Range(167, 264), items: [174, 238], want_response: true }, ItemSet { range: Range(264, 370), items: [264, 360], want_response: true }, ItemSet { range: Range(370, 436), items: [393, 419], want_response: true }, ItemSet { range: Range(436, 585), items: [459, 505], want_response: true }, ItemSet { range: Range(585, 709), items: [691, 703], want_response: true }, ItemSet { range: Range(709, 841), items: [709], want_response: true }, ItemSet { range: Range(841, 912), items: [841, 866], want_response: true }, ItemSet { range: Range(912, 963), items: [920, 962], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(2, 101), items: [21, 25, 47, 61, 67, 70, 90], want_response: false }, ItemSet { range: Range(101, 167), items: [104, 110, 130, 132, 137], want_response: false }, ItemSet { range: Range(167, 264), items: [167, 182, 186, 187, 197, 211, 216, 222, 240, 241, 250, 259], want_response: false }, ItemSet { range: Range(264, 370), items: [271, 274, 293, 300, 313, 314, 331, 343, 347, 364], want_response: false }, ItemSet { range: Range(370, 436), items: [370, 390, 402, 404, 409, 425, 430, 431, 433], want_response: false }, ItemSet { range: Range(436, 585), items: [436, 458, 464, 471, 480, 500, 515, 519, 524, 538, 545, 554, 556, 559, 566, 573, 578], want_response: false }, ItemSet { range: Range(585, 709), items: [585, 611, 620, 623, 649, 692, 702], want_response: false }, ItemSet { range: Range(709, 841), items: [725, 738, 793, 805, 827, 831, 834, 835, 836], want_response: false }, ItemSet { range: Range(841, 912), items: [845, 871, 881, 905, 911], want_response: false }, ItemSet { range: Range(912, 963), items: [912, 927, 939, 946, 956], want_response: false }], wants: [2, 94, 101, 174, 238, 264, 360, 393, 419, 459, 505, 691, 703, 709, 841, 866, 920, 962], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [21, 25, 47, 61, 67, 70, 90, 104, 110, 130, 132, 137, 167, 182, 186, 187, 197, 211, 216, 222, 240, 241, 250, 259, 271, 274, 293, 300, 313, 314, 331, 343, 347, 364, 370, 390, 402, 404, 409, 425, 430, 431, 433, 436, 458, 464, 471, 480, 500, 515, 519, 524, 538, 545, 554, 556, 559, 566, 573, 578, 585, 611, 620, 623, 649, 692, 702, 725, 738, 793, 805, 827, 831, 834, 835, 836, 845, 871, 881, 905, 911, 912, 927, 939, 946, 956], provide: [(2, true), (94, true), (101, true), (174, true), (238, true), (264, true), (360, true), (393, true), (419, true), (459, true), (505, true), (691, true), (703, true), (709, true), (841, true), (866, true), (920, true), (962, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(21, true), (25, true), (47, true), (61, true), (67, true), (70, true), (90, true), (104, true), (110, true), (130, true), (132, true), (137, true), (167, true), (182, true), (186, true), (187, true), (197, true), (211, true), (216, true), (222, true), (240, true), (241, true), (250, true), (259, true), (271, true), (274, true), (293, true), (300, true), (313, true), (314, true), (331, true), (343, true), (347, true), (364, true), (370, true), (390, true), (402, true), (404, true), (409, true), (425, true), (430, true), (431, true), (433, true), (436, true), (458, true), (464, true), (471, true), (480, true), (500, true), (515, true), (519, true), (524, true), (538, true), (545, true), (554, true), (556, true), (559, true), (566, true), (573, true), (578, true), (585, true), (611, true), (620, true), (623, true), (649, true), (692, true), (702, true), (725, true), (738, true), (793, true), (805, true), (827, true), (831, true), (834, true), (835, true), (836, true), (845, true), (871, true), (881, true), (905, true), (911, true), (912, true), (927, true), (939, true), (946, true), (956, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {2, 94, 101, 174, 238, 264, 360, 393, 419, 459, 505, 691, 703, 709, 841, 866, 920, 962} + [971, 978, 21, 25, 47, 61, 67, 70, 90, 104, 110, 130, 132, 137, 167, 182, 186, 187, 197, 211, 216, 222, 240, 241, 250, 259, 271, 274, 293, 300, 313, 314, 331, 343, 347, 364, 370, 390, 402, 404, 409, 425, 430, 431, 433, 436, 458, 464, 471, 480, 500, 515, 519, 524, 538, 545, 554, 556, 559, 566, 573, 578, 585, 611, 620, 623, 649, 692, 702, 725, 738, 793, 805, 827, 831, 834, 835, 836, 845, 871, 881, 905, 911, 912, 927, 939, 946, 956]
[INFO] [stdout] b all: {21, 25, 47, 61, 67, 70, 90, 104, 110, 130, 132, 137, 167, 182, 186, 187, 197, 211, 216, 222, 240, 241, 250, 259, 271, 274, 293, 300, 313, 314, 331, 343, 347, 364, 370, 390, 402, 404, 409, 425, 430, 431, 433, 436, 458, 464, 471, 480, 500, 515, 519, 524, 538, 545, 554, 556, 559, 566, 573, 578, 585, 611, 620, 623, 649, 692, 702, 725, 738, 793, 805, 827, 831, 834, 835, 836, 845, 871, 881, 905, 911, 912, 927, 939, 946, 956, 971, 978} + [2, 94, 101, 174, 238, 264, 360, 393, 419, 459, 505, 691, 703, 709, 841, 866, 920, 962]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [2, 21, 25, 47, 61, 67, 70, 90, 94, 101, 104, 110, 130, 132, 137, 167, 174, 182, 186, 187, 197, 211, 216, 222, 238, 240, 241, 250, 259, 264, 271, 274, 293, 300, 313, 314, 331, 343, 347, 360, 364, 370, 390, 393, 402, 404, 409, 419, 425, 430, 431, 433, 436, 458, 459, 464, 471, 480, 500, 505, 515, 519, 524, 538, 545, 554, 556, 559, 566, 573, 578, 585, 611, 620, 623, 649, 691, 692, 702, 703, 709, 725, 738, 793, 805, 827, 831, 834, 835, 836, 841, 845, 866, 871, 881, 905, 911, 912, 920, 927, 939, 946, 956, 962, 971, 978]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [2, 21, 25, 47, 61, 67, 70, 90, 94, 101, 104, 110, 130, 132, 137, 167, 174, 182, 186, 187, 197, 211, 216, 222, 238, 240, 241, 250, 259, 264, 271, 274, 293, 300, 313, 314, 331, 343, 347, 360, 364, 370, 390, 393, 402, 404, 409, 419, 425, 430, 431, 433, 436, 458, 459, 464, 471, 480, 500, 505, 515, 519, 524, 538, 545, 554, 556, 559, 566, 573, 578, 585, 611, 620, 623, 649, 691, 692, 702, 703, 709, 725, 738, 793, 805, 827, 831, 834, 835, 836, 841, 845, 866, 871, 881, 905, 911, 912, 920, 927, 939, 946, 956, 962, 971, 978], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [2, 21, 25, 47, 61, 67, 70, 90, 94, 101, 104, 110, 130, 132, 137, 167, 174, 182, 186, 187, 197, 211, 216, 222, 238, 240, 241, 250, 259, 264, 271, 274, 293, 300, 313, 314, 331, 343, 347, 360, 364, 370, 390, 393, 402, 404, 409, 419, 425, 430, 431, 433, 436, 458, 459, 464, 471, 480, 500, 505, 515, 519, 524, 538, 545, 554, 556, 559, 566, 573, 578, 585, 611, 620, 623, 649, 691, 692, 702, 703, 709, 725, 738, 793, 805, 827, 831, 834, 835, 836, 841, 845, 866, 871, 881, 905, 911, 912, 920, 927, 939, 946, 956, 962, 971, 978], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {101, 178, 422, 434, 473, 562, 563, 630, 676, 833, 933, 975, 979}
[INFO] [stdout] b items: {5, 8, 18, 39, 50, 51, 53, 89, 130, 145, 147, 169, 190, 191, 197, 209, 218, 228, 279, 280, 281, 286, 298, 305, 364, 375, 404, 420, 422, 435, 437, 475, 488, 494, 498, 511, 523, 534, 541, 594, 619, 628, 657, 684, 689, 695, 701, 706, 734, 735, 758, 760, 782, 786, 788, 792, 797, 846, 848, 855, 866, 886, 917, 922, 931, 933, 945, 954, 966, 968, 972, 974, 990, 995, 996}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(101, 980), fp: EncodedCountingMonoid(13, SumMonoid(7759)) }], item_sets: [ItemSet { range: Range(980, 101), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(101, 619), fp: EncodedCountingMonoid(32, SumMonoid(11068)) }, Fingerprint { range: Range(619, 980), fp: EncodedCountingMonoid(32, SumMonoid(26094)) }], item_sets: [ItemSet { range: Range(980, 101), items: [990, 995, 996, 5, 8, 18, 39, 50, 51, 53, 89], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(101, 473), fp: EncodedCountingMonoid(4, SumMonoid(1135)) }, Fingerprint { range: Range(473, 619), fp: EncodedCountingMonoid(3, SumMonoid(1598)) }, Fingerprint { range: Range(619, 933), fp: EncodedCountingMonoid(3, SumMonoid(2139)) }, Fingerprint { range: Range(933, 980), fp: EncodedCountingMonoid(3, SumMonoid(2887)) }], item_sets: [], wants: [990, 995, 996, 5, 8, 18, 39, 50, 51, 53, 89], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(101, 281), fp: EncodedCountingMonoid(12, SumMonoid(2383)) }, Fingerprint { range: Range(281, 473), fp: EncodedCountingMonoid(11, SumMonoid(4027)) }, Fingerprint { range: Range(473, 523), fp: EncodedCountingMonoid(5, SumMonoid(2466)) }, Fingerprint { range: Range(523, 619), fp: EncodedCountingMonoid(4, SumMonoid(2192)) }, Fingerprint { range: Range(619, 786), fp: EncodedCountingMonoid(13, SumMonoid(9148)) }, Fingerprint { range: Range(786, 933), fp: EncodedCountingMonoid(12, SumMonoid(10234)) }, Fingerprint { range: Range(933, 968), fp: EncodedCountingMonoid(4, SumMonoid(3798)) }, Fingerprint { range: Range(968, 980), fp: EncodedCountingMonoid(3, SumMonoid(2914)) }], item_sets: [], wants: [], provide: [(990, true), (995, true), (996, true), (5, true), (8, true), (18, true), (39, true), (50, true), (51, true), (53, true), (89, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(101, 281), items: [101, 178], want_response: true }, ItemSet { range: Range(281, 473), items: [422, 434], want_response: true }, ItemSet { range: Range(473, 523), items: [473], want_response: true }, ItemSet { range: Range(523, 619), items: [562, 563], want_response: true }, ItemSet { range: Range(619, 786), items: [630, 676], want_response: true }, ItemSet { range: Range(786, 933), items: [833], want_response: true }, ItemSet { range: Range(933, 968), items: [933], want_response: true }, ItemSet { range: Range(968, 980), items: [975, 979], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(101, 281), items: [130, 145, 147, 169, 190, 191, 197, 209, 218, 228, 279, 280], want_response: false }, ItemSet { range: Range(281, 473), items: [281, 286, 298, 305, 364, 375, 404, 420, 422, 435, 437], want_response: false }, ItemSet { range: Range(473, 523), items: [475, 488, 494, 498, 511], want_response: false }, ItemSet { range: Range(523, 619), items: [523, 534, 541, 594], want_response: false }, ItemSet { range: Range(619, 786), items: [619, 628, 657, 684, 689, 695, 701, 706, 734, 735, 758, 760, 782], want_response: false }, ItemSet { range: Range(786, 933), items: [786, 788, 792, 797, 846, 848, 855, 866, 886, 917, 922, 931], want_response: false }, ItemSet { range: Range(933, 968), items: [933, 945, 954, 966], want_response: false }, ItemSet { range: Range(968, 980), items: [968, 972, 974], want_response: false }], wants: [101, 178, 434, 473, 562, 563, 630, 676, 833, 975, 979], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [130, 145, 147, 169, 190, 191, 197, 209, 218, 228, 279, 280, 281, 286, 298, 305, 364, 375, 404, 420, 435, 437, 475, 488, 494, 498, 511, 523, 534, 541, 594, 619, 628, 657, 684, 689, 695, 701, 706, 734, 735, 758, 760, 782, 786, 788, 792, 797, 846, 848, 855, 866, 886, 917, 922, 931, 945, 954, 966, 968, 972, 974], provide: [(101, true), (178, true), (434, true), (473, true), (562, true), (563, true), (630, true), (676, true), (833, true), (975, true), (979, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(130, true), (145, true), (147, true), (169, true), (190, true), (191, true), (197, true), (209, true), (218, true), (228, true), (279, true), (280, true), (281, true), (286, true), (298, true), (305, true), (364, true), (375, true), (404, true), (420, true), (435, true), (437, true), (475, true), (488, true), (494, true), (498, true), (511, true), (523, true), (534, true), (541, true), (594, true), (619, true), (628, true), (657, true), (684, true), (689, true), (695, true), (701, true), (706, true), (734, true), (735, true), (758, true), (760, true), (782, true), (786, true), (788, true), (792, true), (797, true), (846, true), (848, true), (855, true), (866, true), (886, true), (917, true), (922, true), (931, true), (945, true), (954, true), (966, true), (968, true), (972, true), (974, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {101, 178, 422, 434, 473, 562, 563, 630, 676, 833, 933, 975, 979} + [990, 995, 996, 5, 8, 18, 39, 50, 51, 53, 89, 130, 145, 147, 169, 190, 191, 197, 209, 218, 228, 279, 280, 281, 286, 298, 305, 364, 375, 404, 420, 435, 437, 475, 488, 494, 498, 511, 523, 534, 541, 594, 619, 628, 657, 684, 689, 695, 701, 706, 734, 735, 758, 760, 782, 786, 788, 792, 797, 846, 848, 855, 866, 886, 917, 922, 931, 945, 954, 966, 968, 972, 974]
[INFO] [stdout] b all: {5, 8, 18, 39, 50, 51, 53, 89, 130, 145, 147, 169, 190, 191, 197, 209, 218, 228, 279, 280, 281, 286, 298, 305, 364, 375, 404, 420, 422, 435, 437, 475, 488, 494, 498, 511, 523, 534, 541, 594, 619, 628, 657, 684, 689, 695, 701, 706, 734, 735, 758, 760, 782, 786, 788, 792, 797, 846, 848, 855, 866, 886, 917, 922, 931, 933, 945, 954, 966, 968, 972, 974, 990, 995, 996} + [101, 178, 434, 473, 562, 563, 630, 676, 833, 975, 979]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 8, 18, 39, 50, 51, 53, 89, 101, 130, 145, 147, 169, 178, 190, 191, 197, 209, 218, 228, 279, 280, 281, 286, 298, 305, 364, 375, 404, 420, 422, 434, 435, 437, 473, 475, 488, 494, 498, 511, 523, 534, 541, 562, 563, 594, 619, 628, 630, 657, 676, 684, 689, 695, 701, 706, 734, 735, 758, 760, 782, 786, 788, 792, 797, 833, 846, 848, 855, 866, 886, 917, 922, 931, 933, 945, 954, 966, 968, 972, 974, 975, 979, 990, 995, 996]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 8, 18, 39, 50, 51, 53, 89, 101, 130, 145, 147, 169, 178, 190, 191, 197, 209, 218, 228, 279, 280, 281, 286, 298, 305, 364, 375, 404, 420, 422, 434, 435, 437, 473, 475, 488, 494, 498, 511, 523, 534, 541, 562, 563, 594, 619, 628, 630, 657, 676, 684, 689, 695, 701, 706, 734, 735, 758, 760, 782, 786, 788, 792, 797, 833, 846, 848, 855, 866, 886, 917, 922, 931, 933, 945, 954, 966, 968, 972, 974, 975, 979, 990, 995, 996], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 8, 18, 39, 50, 51, 53, 89, 101, 130, 145, 147, 169, 178, 190, 191, 197, 209, 218, 228, 279, 280, 281, 286, 298, 305, 364, 375, 404, 420, 422, 434, 435, 437, 473, 475, 488, 494, 498, 511, 523, 534, 541, 562, 563, 594, 619, 628, 630, 657, 676, 684, 689, 695, 701, 706, 734, 735, 758, 760, 782, 786, 788, 792, 797, 833, 846, 848, 855, 866, 886, 917, 922, 931, 933, 945, 954, 966, 968, 972, 974, 975, 979, 990, 995, 996], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {22, 38, 45, 122, 128, 135, 212, 213, 225, 229, 247, 259, 273, 276, 288, 313, 324, 350, 354, 378, 379, 390, 402, 403, 405, 430, 450, 453, 455, 456, 466, 473, 516, 520, 533, 544, 545, 567, 570, 595, 596, 629, 641, 649, 674, 690, 692, 694, 706, 718, 728, 751, 752, 780, 812, 854, 869, 881, 907, 928, 936, 977, 979}
[INFO] [stdout] b items: {1, 50, 81, 125, 126, 136, 178, 184, 217, 221, 232, 257, 263, 268, 301, 343, 347, 357, 362, 364, 370, 379, 384, 391, 394, 414, 421, 448, 459, 460, 461, 465, 470, 471, 493, 514, 538, 580, 594, 621, 644, 675, 704, 711, 719, 727, 746, 750, 753, 763, 769, 781, 783, 784, 799, 824, 827, 836, 886, 907, 909, 911, 913, 916, 932, 942, 951, 966, 969}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(22, 980), fp: EncodedCountingMonoid(63, SumMonoid(31826)) }], item_sets: [ItemSet { range: Range(980, 22), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(22, 514), fp: EncodedCountingMonoid(34, SumMonoid(10892)) }, Fingerprint { range: Range(514, 980), fp: EncodedCountingMonoid(34, SumMonoid(26644)) }], item_sets: [ItemSet { range: Range(980, 22), items: [1], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(22, 324), fp: EncodedCountingMonoid(16, SumMonoid(3025)) }, Fingerprint { range: Range(324, 514), fp: EncodedCountingMonoid(16, SumMonoid(6568)) }, Fingerprint { range: Range(514, 706), fp: EncodedCountingMonoid(16, SumMonoid(9655)) }, Fingerprint { range: Range(706, 980), fp: EncodedCountingMonoid(15, SumMonoid(12578)) }], item_sets: [], wants: [1], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(22, 217), fp: EncodedCountingMonoid(7, SumMonoid(880)) }, Fingerprint { range: Range(217, 324), fp: EncodedCountingMonoid(7, SumMonoid(1759)) }, Fingerprint { range: Range(324, 414), fp: EncodedCountingMonoid(10, SumMonoid(3691)) }, Fingerprint { range: Range(414, 514), fp: EncodedCountingMonoid(10, SumMonoid(4562)) }, Fingerprint { range: Range(514, 621), fp: EncodedCountingMonoid(4, SumMonoid(2226)) }, Fingerprint { range: Range(621, 706), fp: EncodedCountingMonoid(4, SumMonoid(2644)) }, Fingerprint { range: Range(706, 827), fp: EncodedCountingMonoid(13, SumMonoid(9909)) }, Fingerprint { range: Range(827, 980), fp: EncodedCountingMonoid(13, SumMonoid(11865)) }], item_sets: [], wants: [], provide: [(1, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(22, 128), fp: EncodedCountingMonoid(4, SumMonoid(227)) }, Fingerprint { range: Range(128, 217), fp: EncodedCountingMonoid(4, SumMonoid(688)) }, Fingerprint { range: Range(217, 273), fp: EncodedCountingMonoid(4, SumMonoid(960)) }, Fingerprint { range: Range(273, 324), fp: EncodedCountingMonoid(4, SumMonoid(1150)) }, Fingerprint { range: Range(324, 390), fp: EncodedCountingMonoid(5, SumMonoid(1785)) }, Fingerprint { range: Range(390, 414), fp: EncodedCountingMonoid(4, SumMonoid(1600)) }, Fingerprint { range: Range(414, 456), fp: EncodedCountingMonoid(4, SumMonoid(1788)) }, Fingerprint { range: Range(456, 514), fp: EncodedCountingMonoid(3, SumMonoid(1395)) }, Fingerprint { range: Range(514, 567), fp: EncodedCountingMonoid(5, SumMonoid(2658)) }, Fingerprint { range: Range(567, 621), fp: EncodedCountingMonoid(4, SumMonoid(2328)) }, Fingerprint { range: Range(621, 690), fp: EncodedCountingMonoid(4, SumMonoid(2593)) }, Fingerprint { range: Range(690, 706), fp: EncodedCountingMonoid(3, SumMonoid(2076)) }, Fingerprint { range: Range(706, 752), fp: EncodedCountingMonoid(4, SumMonoid(2903)) }, Fingerprint { range: Range(752, 827), fp: EncodedCountingMonoid(3, SumMonoid(2344)) }, Fingerprint { range: Range(827, 928), fp: EncodedCountingMonoid(4, SumMonoid(3511)) }, Fingerprint { range: Range(928, 980), fp: EncodedCountingMonoid(4, SumMonoid(3820)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(217, 257), fp: EncodedCountingMonoid(3, SumMonoid(670)) }, Fingerprint { range: Range(257, 273), fp: EncodedCountingMonoid(3, SumMonoid(788)) }, Fingerprint { range: Range(324, 364), fp: EncodedCountingMonoid(4, SumMonoid(1409)) }, Fingerprint { range: Range(364, 390), fp: EncodedCountingMonoid(4, SumMonoid(1497)) }, Fingerprint { range: Range(456, 470), fp: EncodedCountingMonoid(4, SumMonoid(1845)) }, Fingerprint { range: Range(470, 514), fp: EncodedCountingMonoid(3, SumMonoid(1434)) }, Fingerprint { range: Range(706, 746), fp: EncodedCountingMonoid(3, SumMonoid(2157)) }, Fingerprint { range: Range(752, 783), fp: EncodedCountingMonoid(4, SumMonoid(3066)) }, Fingerprint { range: Range(783, 827), fp: EncodedCountingMonoid(4, SumMonoid(3190)) }, Fingerprint { range: Range(827, 909), fp: EncodedCountingMonoid(4, SumMonoid(3456)) }, Fingerprint { range: Range(909, 928), fp: EncodedCountingMonoid(4, SumMonoid(3649)) }, Fingerprint { range: Range(928, 966), fp: EncodedCountingMonoid(3, SumMonoid(2825)) }], item_sets: [ItemSet { range: Range(22, 125), items: [50, 81], want_response: true }, ItemSet { range: Range(125, 128), items: [125, 126], want_response: true }, ItemSet { range: Range(128, 184), items: [136, 178], want_response: true }, ItemSet { range: Range(184, 217), items: [184], want_response: true }, ItemSet { range: Range(273, 324), items: [301], want_response: true }, ItemSet { range: Range(390, 414), items: [391, 394], want_response: true }, ItemSet { range: Range(414, 448), items: [414, 421], want_response: true }, ItemSet { range: Range(448, 456), items: [448], want_response: true }, ItemSet { range: Range(514, 567), items: [514, 538], want_response: true }, ItemSet { range: Range(567, 621), items: [580, 594], want_response: true }, ItemSet { range: Range(621, 675), items: [621, 644], want_response: true }, ItemSet { range: Range(675, 690), items: [675], want_response: true }, ItemSet { range: Range(690, 706), items: [704], want_response: true }, ItemSet { range: Range(746, 752), items: [746, 750], want_response: true }, ItemSet { range: Range(966, 980), items: [966, 969], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(22, 125), items: [22, 38, 45, 122], want_response: false }, ItemSet { range: Range(125, 128), items: [], want_response: false }, ItemSet { range: Range(128, 184), items: [128, 135], want_response: false }, ItemSet { range: Range(184, 217), items: [212, 213], want_response: false }, ItemSet { range: Range(273, 324), items: [273, 276, 288, 313], want_response: false }, ItemSet { range: Range(390, 414), items: [390, 402, 403, 405], want_response: false }, ItemSet { range: Range(414, 448), items: [430], want_response: false }, ItemSet { range: Range(448, 456), items: [450, 453, 455], want_response: false }, ItemSet { range: Range(514, 567), items: [516, 520, 533, 544, 545], want_response: false }, ItemSet { range: Range(567, 621), items: [567, 570, 595, 596], want_response: false }, ItemSet { range: Range(621, 675), items: [629, 641, 649, 674], want_response: false }, ItemSet { range: Range(675, 690), items: [], want_response: false }, ItemSet { range: Range(690, 706), items: [690, 692, 694], want_response: false }, ItemSet { range: Range(746, 752), items: [751], want_response: false }, ItemSet { range: Range(966, 980), items: [977, 979], want_response: false }, ItemSet { range: Range(217, 247), items: [225, 229], want_response: true }, ItemSet { range: Range(247, 257), items: [247], want_response: true }, ItemSet { range: Range(257, 273), items: [259], want_response: true }, ItemSet { range: Range(324, 354), items: [324, 350], want_response: true }, ItemSet { range: Range(354, 364), items: [354], want_response: true }, ItemSet { range: Range(364, 390), items: [378, 379], want_response: true }, ItemSet { range: Range(456, 470), items: [456, 466], want_response: true }, ItemSet { range: Range(470, 514), items: [473], want_response: true }, ItemSet { range: Range(706, 728), items: [706, 718], want_response: true }, ItemSet { range: Range(728, 746), items: [728], want_response: true }, ItemSet { range: Range(752, 783), items: [752, 780], want_response: true }, ItemSet { range: Range(783, 827), items: [812], want_response: true }, ItemSet { range: Range(827, 881), items: [854, 869], want_response: true }, ItemSet { range: Range(881, 909), items: [881, 907], want_response: true }, ItemSet { range: Range(909, 928), items: [], want_response: true }, ItemSet { range: Range(928, 966), items: [928, 936], want_response: true }], wants: [50, 81, 125, 126, 136, 178, 184, 301, 391, 394, 414, 421, 448, 514, 538, 580, 594, 621, 644, 675, 704, 746, 750, 966, 969], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(217, 247), items: [217, 221, 232], want_response: false }, ItemSet { range: Range(247, 257), items: [], want_response: false }, ItemSet { range: Range(257, 273), items: [257, 263, 268], want_response: false }, ItemSet { range: Range(324, 354), items: [343, 347], want_response: false }, ItemSet { range: Range(354, 364), items: [357, 362], want_response: false }, ItemSet { range: Range(364, 390), items: [364, 370, 379, 384], want_response: false }, ItemSet { range: Range(456, 470), items: [459, 460, 461, 465], want_response: false }, ItemSet { range: Range(470, 514), items: [470, 471, 493], want_response: false }, ItemSet { range: Range(706, 728), items: [711, 719, 727], want_response: false }, ItemSet { range: Range(728, 746), items: [], want_response: false }, ItemSet { range: Range(752, 783), items: [753, 763, 769, 781], want_response: false }, ItemSet { range: Range(783, 827), items: [783, 784, 799, 824], want_response: false }, ItemSet { range: Range(827, 881), items: [827, 836], want_response: false }, ItemSet { range: Range(881, 909), items: [886, 907], want_response: false }, ItemSet { range: Range(909, 928), items: [909, 911, 913, 916], want_response: false }, ItemSet { range: Range(928, 966), items: [932, 942, 951], want_response: false }], wants: [22, 38, 45, 122, 128, 135, 212, 213, 273, 276, 288, 313, 390, 402, 403, 405, 430, 450, 453, 455, 516, 520, 533, 544, 545, 567, 570, 595, 596, 629, 641, 649, 674, 690, 692, 694, 751, 977, 979, 225, 229, 247, 259, 324, 350, 354, 378, 456, 466, 473, 706, 718, 728, 752, 780, 812, 854, 869, 881, 928, 936], provide: [(50, true), (81, true), (125, true), (126, true), (136, true), (178, true), (184, true), (301, true), (391, true), (394, true), (414, true), (421, true), (448, true), (514, true), (538, true), (580, true), (594, true), (621, true), (644, true), (675, true), (704, true), (746, true), (750, true), (966, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [217, 221, 232, 257, 263, 268, 343, 347, 357, 362, 364, 370, 384, 459, 460, 461, 465, 470, 471, 493, 711, 719, 727, 753, 763, 769, 781, 783, 784, 799, 824, 827, 836, 886, 909, 911, 913, 916, 932, 942, 951], provide: [(22, true), (38, true), (45, true), (122, true), (128, true), (135, true), (212, true), (213, true), (273, true), (276, true), (288, true), (313, true), (390, true), (402, true), (403, true), (405, true), (430, true), (450, true), (453, true), (455, true), (516, true), (520, true), (533, true), (544, true), (545, true), (567, true), (570, true), (595, true), (596, true), (629, true), (641, true), (649, true), (674, true), (690, true), (692, true), (694, true), (751, true), (977, true), (979, true), (225, true), (229, true), (247, true), (259, true), (324, true), (350, true), (354, true), (378, true), (456, true), (466, true), (473, true), (706, true), (718, true), (728, true), (752, true), (780, true), (812, true), (854, true), (869, true), (881, true), (928, true), (936, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(217, true), (221, true), (232, true), (257, true), (263, true), (268, true), (343, true), (347, true), (357, true), (362, true), (364, true), (370, true), (384, true), (459, true), (460, true), (461, true), (465, true), (470, true), (471, true), (493, true), (711, true), (719, true), (727, true), (753, true), (763, true), (769, true), (781, true), (783, true), (784, true), (799, true), (824, true), (827, true), (836, true), (886, true), (909, true), (911, true), (913, true), (916, true), (932, true), (942, true), (951, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {22, 38, 45, 122, 128, 135, 212, 213, 225, 229, 247, 259, 273, 276, 288, 313, 324, 350, 354, 378, 379, 390, 402, 403, 405, 430, 450, 453, 455, 456, 466, 473, 516, 520, 533, 544, 545, 567, 570, 595, 596, 629, 641, 649, 674, 690, 692, 694, 706, 718, 728, 751, 752, 780, 812, 854, 869, 881, 907, 928, 936, 977, 979} + [1, 50, 81, 125, 126, 136, 178, 184, 301, 391, 394, 414, 421, 448, 514, 538, 580, 594, 621, 644, 675, 704, 746, 750, 966, 969, 217, 221, 232, 257, 263, 268, 343, 347, 357, 362, 364, 370, 384, 459, 460, 461, 465, 470, 471, 493, 711, 719, 727, 753, 763, 769, 781, 783, 784, 799, 824, 827, 836, 886, 909, 911, 913, 916, 932, 942, 951]
[INFO] [stdout] b all: {1, 50, 81, 125, 126, 136, 178, 184, 217, 221, 232, 257, 263, 268, 301, 343, 347, 357, 362, 364, 370, 379, 384, 391, 394, 414, 421, 448, 459, 460, 461, 465, 470, 471, 493, 514, 538, 580, 594, 621, 644, 675, 704, 711, 719, 727, 746, 750, 753, 763, 769, 781, 783, 784, 799, 824, 827, 836, 886, 907, 909, 911, 913, 916, 932, 942, 951, 966, 969} + [22, 38, 45, 122, 128, 135, 212, 213, 273, 276, 288, 313, 390, 402, 403, 405, 430, 450, 453, 455, 516, 520, 533, 544, 545, 567, 570, 595, 596, 629, 641, 649, 674, 690, 692, 694, 751, 977, 979, 225, 229, 247, 259, 324, 350, 354, 378, 456, 466, 473, 706, 718, 728, 752, 780, 812, 854, 869, 881, 928, 936]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 22, 38, 45, 50, 81, 122, 125, 126, 128, 135, 136, 178, 184, 212, 213, 217, 221, 225, 229, 232, 247, 257, 259, 263, 268, 273, 276, 288, 301, 313, 324, 343, 347, 350, 354, 357, 362, 364, 370, 378, 379, 384, 390, 391, 394, 402, 403, 405, 414, 421, 430, 448, 450, 453, 455, 456, 459, 460, 461, 465, 466, 470, 471, 473, 493, 514, 516, 520, 533, 538, 544, 545, 567, 570, 580, 594, 595, 596, 621, 629, 641, 644, 649, 674, 675, 690, 692, 694, 704, 706, 711, 718, 719, 727, 728, 746, 750, 751, 752, 753, 763, 769, 780, 781, 783, 784, 799, 812, 824, 827, 836, 854, 869, 881, 886, 907, 909, 911, 913, 916, 928, 932, 936, 942, 951, 966, 969, 977, 979]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 22, 38, 45, 50, 81, 122, 125, 126, 128, 135, 136, 178, 184, 212, 213, 217, 221, 225, 229, 232, 247, 257, 259, 263, 268, 273, 276, 288, 301, 313, 324, 343, 347, 350, 354, 357, 362, 364, 370, 378, 379, 384, 390, 391, 394, 402, 403, 405, 414, 421, 430, 448, 450, 453, 455, 456, 459, 460, 461, 465, 466, 470, 471, 473, 493, 514, 516, 520, 533, 538, 544, 545, 567, 570, 580, 594, 595, 596, 621, 629, 641, 644, 649, 674, 675, 690, 692, 694, 704, 706, 711, 718, 719, 727, 728, 746, 750, 751, 752, 753, 763, 769, 780, 781, 783, 784, 799, 812, 824, 827, 836, 854, 869, 881, 886, 907, 909, 911, 913, 916, 928, 932, 936, 942, 951, 966, 969, 977, 979], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 22, 38, 45, 50, 81, 122, 125, 126, 128, 135, 136, 178, 184, 212, 213, 217, 221, 225, 229, 232, 247, 257, 259, 263, 268, 273, 276, 288, 301, 313, 324, 343, 347, 350, 354, 357, 362, 364, 370, 378, 379, 384, 390, 391, 394, 402, 403, 405, 414, 421, 430, 448, 450, 453, 455, 456, 459, 460, 461, 465, 466, 470, 471, 473, 493, 514, 516, 520, 533, 538, 544, 545, 567, 570, 580, 594, 595, 596, 621, 629, 641, 644, 649, 674, 675, 690, 692, 694, 704, 706, 711, 718, 719, 727, 728, 746, 750, 751, 752, 753, 763, 769, 780, 781, 783, 784, 799, 812, 824, 827, 836, 854, 869, 881, 886, 907, 909, 911, 913, 916, 928, 932, 936, 942, 951, 966, 969, 977, 979], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {34, 144, 184, 192, 219, 387, 395, 398, 542, 561, 576, 577, 594, 628, 671, 694, 708, 721, 733, 786, 841, 844, 849, 862, 883}
[INFO] [stdout] b items: {7, 16, 26, 50, 93, 96, 101, 117, 118, 121, 122, 143, 155, 156, 158, 170, 174, 176, 180, 242, 273, 288, 298, 300, 306, 312, 316, 329, 365, 369, 403, 422, 432, 440, 444, 465, 486, 509, 575, 593, 597, 604, 622, 628, 639, 644, 652, 706, 714, 722, 723, 742, 770, 773, 786, 790, 810, 814, 815, 828, 903, 904, 953, 961, 968, 975, 979, 981, 983, 986}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(34, 884), fp: EncodedCountingMonoid(25, SumMonoid(14023)) }], item_sets: [ItemSet { range: Range(884, 34), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(34, 432), fp: EncodedCountingMonoid(29, SumMonoid(6353)) }, Fingerprint { range: Range(432, 884), fp: EncodedCountingMonoid(28, SumMonoid(18323)) }], item_sets: [ItemSet { range: Range(884, 34), items: [903, 904, 953, 961, 968, 975, 979, 981, 983, 986, 7, 16, 26], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(34, 219), fp: EncodedCountingMonoid(4, SumMonoid(554)) }, Fingerprint { range: Range(219, 432), fp: EncodedCountingMonoid(4, SumMonoid(1399)) }, Fingerprint { range: Range(432, 721), fp: EncodedCountingMonoid(9, SumMonoid(5551)) }, Fingerprint { range: Range(721, 884), fp: EncodedCountingMonoid(8, SumMonoid(6519)) }], item_sets: [], wants: [903, 904, 953, 961, 968, 975, 979, 981, 983, 986, 7, 16, 26], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(34, 143), fp: EncodedCountingMonoid(8, SumMonoid(818)) }, Fingerprint { range: Range(143, 219), fp: EncodedCountingMonoid(8, SumMonoid(1312)) }, Fingerprint { range: Range(219, 316), fp: EncodedCountingMonoid(7, SumMonoid(2019)) }, Fingerprint { range: Range(316, 432), fp: EncodedCountingMonoid(6, SumMonoid(2204)) }, Fingerprint { range: Range(432, 604), fp: EncodedCountingMonoid(9, SumMonoid(4541)) }, Fingerprint { range: Range(604, 721), fp: EncodedCountingMonoid(8, SumMonoid(5209)) }, Fingerprint { range: Range(721, 790), fp: EncodedCountingMonoid(6, SumMonoid(4516)) }, Fingerprint { range: Range(790, 884), fp: EncodedCountingMonoid(5, SumMonoid(4057)) }], item_sets: [], wants: [], provide: [(903, true), (904, true), (953, true), (961, true), (968, true), (975, true), (979, true), (981, true), (983, true), (986, true), (7, true), (16, true), (26, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(432, 577), fp: EncodedCountingMonoid(3, SumMonoid(1679)) }, Fingerprint { range: Range(790, 862), fp: EncodedCountingMonoid(3, SumMonoid(2534)) }], item_sets: [ItemSet { range: Range(34, 143), items: [34], want_response: true }, ItemSet { range: Range(143, 192), items: [144, 184], want_response: true }, ItemSet { range: Range(192, 219), items: [192], want_response: true }, ItemSet { range: Range(219, 316), items: [219], want_response: true }, ItemSet { range: Range(316, 398), items: [387, 395], want_response: true }, ItemSet { range: Range(398, 432), items: [398], want_response: true }, ItemSet { range: Range(577, 604), items: [577, 594], want_response: true }, ItemSet { range: Range(604, 694), items: [628, 671], want_response: true }, ItemSet { range: Range(694, 721), items: [694, 708], want_response: true }, ItemSet { range: Range(721, 786), items: [721, 733], want_response: true }, ItemSet { range: Range(786, 790), items: [786], want_response: true }, ItemSet { range: Range(862, 884), items: [862, 883], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(432, 486), fp: EncodedCountingMonoid(4, SumMonoid(1781)) }, Fingerprint { range: Range(486, 577), fp: EncodedCountingMonoid(3, SumMonoid(1570)) }, Fingerprint { range: Range(790, 815), fp: EncodedCountingMonoid(3, SumMonoid(2414)) }], item_sets: [ItemSet { range: Range(34, 143), items: [50, 93, 96, 101, 117, 118, 121, 122], want_response: false }, ItemSet { range: Range(143, 192), items: [143, 155, 156, 158, 170, 174, 176, 180], want_response: false }, ItemSet { range: Range(192, 219), items: [], want_response: false }, ItemSet { range: Range(219, 316), items: [242, 273, 288, 298, 300, 306, 312], want_response: false }, ItemSet { range: Range(316, 398), items: [316, 329, 365, 369], want_response: false }, ItemSet { range: Range(398, 432), items: [403, 422], want_response: false }, ItemSet { range: Range(577, 604), items: [593, 597], want_response: false }, ItemSet { range: Range(604, 694), items: [604, 622, 628, 639, 644, 652], want_response: false }, ItemSet { range: Range(694, 721), items: [706, 714], want_response: false }, ItemSet { range: Range(721, 786), items: [722, 723, 742, 770, 773], want_response: false }, ItemSet { range: Range(786, 790), items: [786], want_response: false }, ItemSet { range: Range(862, 884), items: [], want_response: false }, ItemSet { range: Range(815, 862), items: [815, 828], want_response: true }], wants: [34, 144, 184, 192, 219, 387, 395, 398, 577, 594, 671, 694, 708, 721, 733, 862, 883], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(815, 862), items: [841, 844, 849], want_response: false }, ItemSet { range: Range(432, 486), items: [], want_response: true }, ItemSet { range: Range(486, 576), items: [542, 561], want_response: true }, ItemSet { range: Range(576, 577), items: [576], want_response: true }, ItemSet { range: Range(790, 815), items: [], want_response: true }], wants: [50, 93, 96, 101, 117, 118, 121, 122, 143, 155, 156, 158, 170, 174, 176, 180, 242, 273, 288, 298, 300, 306, 312, 316, 329, 365, 369, 403, 422, 593, 597, 604, 622, 639, 644, 652, 706, 714, 722, 723, 742, 770, 773, 815, 828], provide: [(34, true), (144, true), (184, true), (192, true), (219, true), (387, true), (395, true), (398, true), (577, true), (594, true), (671, true), (694, true), (708, true), (721, true), (733, true), (862, true), (883, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(432, 486), items: [432, 440, 444, 465], want_response: false }, ItemSet { range: Range(486, 576), items: [486, 509, 575], want_response: false }, ItemSet { range: Range(576, 577), items: [], want_response: false }, ItemSet { range: Range(790, 815), items: [790, 810, 814], want_response: false }], wants: [841, 844, 849, 542, 561, 576], provide: [(50, true), (93, true), (96, true), (101, true), (117, true), (118, true), (121, true), (122, true), (143, true), (155, true), (156, true), (158, true), (170, true), (174, true), (176, true), (180, true), (242, true), (273, true), (288, true), (298, true), (300, true), (306, true), (312, true), (316, true), (329, true), (365, true), (369, true), (403, true), (422, true), (593, true), (597, true), (604, true), (622, true), (639, true), (644, true), (652, true), (706, true), (714, true), (722, true), (723, true), (742, true), (770, true), (773, true), (815, true), (828, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [432, 440, 444, 465, 486, 509, 575, 790, 810, 814], provide: [(841, true), (844, true), (849, true), (542, true), (561, true), (576, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(432, true), (440, true), (444, true), (465, true), (486, true), (509, true), (575, true), (790, true), (810, true), (814, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {34, 144, 184, 192, 219, 387, 395, 398, 542, 561, 576, 577, 594, 628, 671, 694, 708, 721, 733, 786, 841, 844, 849, 862, 883} + [903, 904, 953, 961, 968, 975, 979, 981, 983, 986, 7, 16, 26, 50, 93, 96, 101, 117, 118, 121, 122, 143, 155, 156, 158, 170, 174, 176, 180, 242, 273, 288, 298, 300, 306, 312, 316, 329, 365, 369, 403, 422, 593, 597, 604, 622, 639, 644, 652, 706, 714, 722, 723, 742, 770, 773, 815, 828, 432, 440, 444, 465, 486, 509, 575, 790, 810, 814]
[INFO] [stdout] b all: {7, 16, 26, 50, 93, 96, 101, 117, 118, 121, 122, 143, 155, 156, 158, 170, 174, 176, 180, 242, 273, 288, 298, 300, 306, 312, 316, 329, 365, 369, 403, 422, 432, 440, 444, 465, 486, 509, 575, 593, 597, 604, 622, 628, 639, 644, 652, 706, 714, 722, 723, 742, 770, 773, 786, 790, 810, 814, 815, 828, 903, 904, 953, 961, 968, 975, 979, 981, 983, 986} + [34, 144, 184, 192, 219, 387, 395, 398, 577, 594, 671, 694, 708, 721, 733, 862, 883, 841, 844, 849, 542, 561, 576]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [7, 16, 26, 34, 50, 93, 96, 101, 117, 118, 121, 122, 143, 144, 155, 156, 158, 170, 174, 176, 180, 184, 192, 219, 242, 273, 288, 298, 300, 306, 312, 316, 329, 365, 369, 387, 395, 398, 403, 422, 432, 440, 444, 465, 486, 509, 542, 561, 575, 576, 577, 593, 594, 597, 604, 622, 628, 639, 644, 652, 671, 694, 706, 708, 714, 721, 722, 723, 733, 742, 770, 773, 786, 790, 810, 814, 815, 828, 841, 844, 849, 862, 883, 903, 904, 953, 961, 968, 975, 979, 981, 983, 986]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [7, 16, 26, 34, 50, 93, 96, 101, 117, 118, 121, 122, 143, 144, 155, 156, 158, 170, 174, 176, 180, 184, 192, 219, 242, 273, 288, 298, 300, 306, 312, 316, 329, 365, 369, 387, 395, 398, 403, 422, 432, 440, 444, 465, 486, 509, 542, 561, 575, 576, 577, 593, 594, 597, 604, 622, 628, 639, 644, 652, 671, 694, 706, 708, 714, 721, 722, 723, 733, 742, 770, 773, 786, 790, 810, 814, 815, 828, 841, 844, 849, 862, 883, 903, 904, 953, 961, 968, 975, 979, 981, 983, 986], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [7, 16, 26, 34, 50, 93, 96, 101, 117, 118, 121, 122, 143, 144, 155, 156, 158, 170, 174, 176, 180, 184, 192, 219, 242, 273, 288, 298, 300, 306, 312, 316, 329, 365, 369, 387, 395, 398, 403, 422, 432, 440, 444, 465, 486, 509, 542, 561, 575, 576, 577, 593, 594, 597, 604, 622, 628, 639, 644, 652, 671, 694, 706, 708, 714, 721, 722, 723, 733, 742, 770, 773, 786, 790, 810, 814, 815, 828, 841, 844, 849, 862, 883, 903, 904, 953, 961, 968, 975, 979, 981, 983, 986], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {13, 49, 74, 86, 89, 97, 107, 121, 125, 145, 149, 189, 223, 234, 244, 246, 250, 290, 345, 346, 368, 384, 393, 400, 402, 406, 415, 418, 435, 449, 480, 484, 490, 491, 501, 519, 530, 534, 546, 558, 624, 626, 636, 645, 648, 652, 663, 698, 705, 719, 720, 723, 727, 733, 771, 775, 790, 791, 794, 826, 881, 882, 883, 886, 910, 931, 933, 969, 986, 993, 996, 999}
[INFO] [stdout] b items: {2, 9, 18, 76, 86, 89, 118, 148, 156, 166, 213, 218, 224, 243, 283, 314, 317, 337, 361, 386, 395, 401, 407, 410, 424, 426, 451, 457, 462, 479, 501, 508, 515, 519, 547, 550, 555, 557, 567, 577, 618, 631, 652, 655, 672, 688, 694, 697, 702, 703, 725, 730, 733, 754, 762, 769, 770, 777, 798, 802, 805, 810, 814, 829, 870, 873, 885, 887, 891, 905, 911, 917, 918, 922, 928, 937, 938, 954, 961, 978, 994, 998, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(13, 1000), fp: EncodedCountingMonoid(72, SumMonoid(38140)) }], item_sets: [ItemSet { range: Range(1000, 13), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(13, 655), fp: EncodedCountingMonoid(41, SumMonoid(15362)) }, Fingerprint { range: Range(655, 1000), fp: EncodedCountingMonoid(40, SumMonoid(33355)) }], item_sets: [ItemSet { range: Range(1000, 13), items: [2, 9], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(13, 400), fp: EncodedCountingMonoid(23, SumMonoid(4567)) }, Fingerprint { range: Range(400, 655), fp: EncodedCountingMonoid(23, SumMonoid(11889)) }, Fingerprint { range: Range(655, 826), fp: EncodedCountingMonoid(13, SumMonoid(9609)) }, Fingerprint { range: Range(826, 1000), fp: EncodedCountingMonoid(13, SumMonoid(12075)) }], item_sets: [], wants: [2, 9], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(13, 224), fp: EncodedCountingMonoid(10, SumMonoid(1288)) }, Fingerprint { range: Range(224, 400), fp: EncodedCountingMonoid(9, SumMonoid(2860)) }, Fingerprint { range: Range(400, 515), fp: EncodedCountingMonoid(11, SumMonoid(4926)) }, Fingerprint { range: Range(515, 655), fp: EncodedCountingMonoid(11, SumMonoid(6288)) }, Fingerprint { range: Range(655, 754), fp: EncodedCountingMonoid(10, SumMonoid(6999)) }, Fingerprint { range: Range(754, 826), fp: EncodedCountingMonoid(10, SumMonoid(7861)) }, Fingerprint { range: Range(826, 922), fp: EncodedCountingMonoid(10, SumMonoid(8886)) }, Fingerprint { range: Range(922, 1000), fp: EncodedCountingMonoid(10, SumMonoid(9609)) }], item_sets: [], wants: [], provide: [(2, true), (9, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(13, 121), fp: EncodedCountingMonoid(7, SumMonoid(515)) }, Fingerprint { range: Range(121, 224), fp: EncodedCountingMonoid(6, SumMonoid(952)) }, Fingerprint { range: Range(224, 345), fp: EncodedCountingMonoid(5, SumMonoid(1264)) }, Fingerprint { range: Range(345, 400), fp: EncodedCountingMonoid(5, SumMonoid(1836)) }, Fingerprint { range: Range(400, 449), fp: EncodedCountingMonoid(6, SumMonoid(2476)) }, Fingerprint { range: Range(449, 515), fp: EncodedCountingMonoid(6, SumMonoid(2895)) }, Fingerprint { range: Range(515, 626), fp: EncodedCountingMonoid(6, SumMonoid(3311)) }, Fingerprint { range: Range(626, 655), fp: EncodedCountingMonoid(5, SumMonoid(3207)) }, Fingerprint { range: Range(655, 720), fp: EncodedCountingMonoid(4, SumMonoid(2785)) }, Fingerprint { range: Range(720, 754), fp: EncodedCountingMonoid(4, SumMonoid(2903)) }, Fingerprint { range: Range(754, 791), fp: EncodedCountingMonoid(3, SumMonoid(2336)) }, Fingerprint { range: Range(826, 883), fp: EncodedCountingMonoid(3, SumMonoid(2589)) }, Fingerprint { range: Range(883, 922), fp: EncodedCountingMonoid(3, SumMonoid(2679)) }, Fingerprint { range: Range(922, 993), fp: EncodedCountingMonoid(4, SumMonoid(3819)) }, Fingerprint { range: Range(993, 1000), fp: EncodedCountingMonoid(3, SumMonoid(2988)) }], item_sets: [ItemSet { range: Range(791, 826), items: [791, 794], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(13, 89), fp: EncodedCountingMonoid(3, SumMonoid(180)) }, Fingerprint { range: Range(121, 213), fp: EncodedCountingMonoid(3, SumMonoid(470)) }, Fingerprint { range: Range(224, 314), fp: EncodedCountingMonoid(3, SumMonoid(750)) }, Fingerprint { range: Range(314, 345), fp: EncodedCountingMonoid(3, SumMonoid(968)) }, Fingerprint { range: Range(400, 424), fp: EncodedCountingMonoid(3, SumMonoid(1218)) }, Fingerprint { range: Range(449, 479), fp: EncodedCountingMonoid(3, SumMonoid(1370)) }, Fingerprint { range: Range(479, 515), fp: EncodedCountingMonoid(3, SumMonoid(1488)) }, Fingerprint { range: Range(515, 557), fp: EncodedCountingMonoid(5, SumMonoid(2686)) }, Fingerprint { range: Range(557, 626), fp: EncodedCountingMonoid(4, SumMonoid(2319)) }, Fingerprint { range: Range(655, 697), fp: EncodedCountingMonoid(4, SumMonoid(2709)) }, Fingerprint { range: Range(697, 720), fp: EncodedCountingMonoid(3, SumMonoid(2102)) }, Fingerprint { range: Range(754, 770), fp: EncodedCountingMonoid(3, SumMonoid(2285)) }, Fingerprint { range: Range(883, 911), fp: EncodedCountingMonoid(4, SumMonoid(3568)) }, Fingerprint { range: Range(911, 922), fp: EncodedCountingMonoid(3, SumMonoid(2746)) }, Fingerprint { range: Range(922, 954), fp: EncodedCountingMonoid(4, SumMonoid(3725)) }, Fingerprint { range: Range(954, 993), fp: EncodedCountingMonoid(3, SumMonoid(2893)) }], item_sets: [ItemSet { range: Range(791, 826), items: [798, 802, 805, 810, 814], want_response: false }, ItemSet { range: Range(89, 121), items: [89, 118], want_response: true }, ItemSet { range: Range(213, 224), items: [213, 218], want_response: true }, ItemSet { range: Range(345, 395), items: [361, 386], want_response: true }, ItemSet { range: Range(395, 400), items: [395], want_response: true }, ItemSet { range: Range(424, 449), items: [424, 426], want_response: true }, ItemSet { range: Range(626, 655), items: [631, 652], want_response: true }, ItemSet { range: Range(720, 733), items: [725, 730], want_response: true }, ItemSet { range: Range(733, 754), items: [733], want_response: true }, ItemSet { range: Range(770, 791), items: [770, 777], want_response: true }, ItemSet { range: Range(826, 873), items: [829, 870], want_response: true }, ItemSet { range: Range(873, 883), items: [873], want_response: true }, ItemSet { range: Range(993, 999), items: [994, 998], want_response: true }, ItemSet { range: Range(999, 1000), items: [999], want_response: true }], wants: [791, 794], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(121, 149), fp: EncodedCountingMonoid(3, SumMonoid(391)) }, Fingerprint { range: Range(224, 250), fp: EncodedCountingMonoid(3, SumMonoid(724)) }, Fingerprint { range: Range(400, 415), fp: EncodedCountingMonoid(3, SumMonoid(1208)) }, Fingerprint { range: Range(479, 491), fp: EncodedCountingMonoid(3, SumMonoid(1454)) }], item_sets: [ItemSet { range: Range(89, 121), items: [89, 97, 107], want_response: false }, ItemSet { range: Range(213, 224), items: [223], want_response: false }, ItemSet { range: Range(345, 395), items: [345, 346, 368, 384, 393], want_response: false }, ItemSet { range: Range(395, 400), items: [], want_response: false }, ItemSet { range: Range(424, 449), items: [435], want_response: false }, ItemSet { range: Range(626, 655), items: [626, 636, 645, 648, 652], want_response: false }, ItemSet { range: Range(720, 733), items: [720, 723, 727], want_response: false }, ItemSet { range: Range(733, 754), items: [733], want_response: false }, ItemSet { range: Range(770, 791), items: [771, 775, 790], want_response: false }, ItemSet { range: Range(826, 873), items: [826], want_response: false }, ItemSet { range: Range(873, 883), items: [881, 882], want_response: false }, ItemSet { range: Range(993, 999), items: [993, 996], want_response: false }, ItemSet { range: Range(999, 1000), items: [999], want_response: false }, ItemSet { range: Range(13, 74), items: [13, 49], want_response: true }, ItemSet { range: Range(74, 89), items: [74, 86], want_response: true }, ItemSet { range: Range(149, 213), items: [149, 189], want_response: true }, ItemSet { range: Range(250, 314), items: [250, 290], want_response: true }, ItemSet { range: Range(314, 345), items: [], want_response: true }, ItemSet { range: Range(415, 424), items: [415, 418], want_response: true }, ItemSet { range: Range(449, 479), items: [449], want_response: true }, ItemSet { range: Range(491, 515), items: [491, 501], want_response: true }, ItemSet { range: Range(515, 534), items: [519, 530], want_response: true }, ItemSet { range: Range(534, 557), items: [534, 546], want_response: true }, ItemSet { range: Range(557, 626), items: [558, 624], want_response: true }, ItemSet { range: Range(655, 697), items: [663], want_response: true }, ItemSet { range: Range(697, 719), items: [698, 705], want_response: true }, ItemSet { range: Range(719, 720), items: [719], want_response: true }, ItemSet { range: Range(754, 770), items: [], want_response: true }, ItemSet { range: Range(883, 910), items: [883, 886], want_response: true }, ItemSet { range: Range(910, 911), items: [910], want_response: true }, ItemSet { range: Range(911, 922), items: [], want_response: true }, ItemSet { range: Range(922, 954), items: [931, 933], want_response: true }, ItemSet { range: Range(954, 993), items: [969, 986], want_response: true }], wants: [798, 802, 805, 810, 814, 118, 213, 218, 361, 386, 395, 424, 426, 631, 725, 730, 770, 777, 829, 870, 873, 994, 998], provide: [(791, true), (794, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(13, 74), items: [18], want_response: false }, ItemSet { range: Range(74, 89), items: [76, 86], want_response: false }, ItemSet { range: Range(149, 213), items: [156, 166], want_response: false }, ItemSet { range: Range(250, 314), items: [283], want_response: false }, ItemSet { range: Range(314, 345), items: [314, 317, 337], want_response: false }, ItemSet { range: Range(415, 424), items: [], want_response: false }, ItemSet { range: Range(449, 479), items: [451, 457, 462], want_response: false }, ItemSet { range: Range(491, 515), items: [501, 508], want_response: false }, ItemSet { range: Range(515, 534), items: [515, 519], want_response: false }, ItemSet { range: Range(534, 557), items: [547, 550, 555], want_response: false }, ItemSet { range: Range(557, 626), items: [557, 567, 577, 618], want_response: false }, ItemSet { range: Range(655, 697), items: [655, 672, 688, 694], want_response: false }, ItemSet { range: Range(697, 719), items: [697, 702, 703], want_response: false }, ItemSet { range: Range(719, 720), items: [], want_response: false }, ItemSet { range: Range(754, 770), items: [754, 762, 769], want_response: false }, ItemSet { range: Range(883, 910), items: [885, 887, 891, 905], want_response: false }, ItemSet { range: Range(910, 911), items: [], want_response: false }, ItemSet { range: Range(911, 922), items: [911, 917, 918], want_response: false }, ItemSet { range: Range(922, 954), items: [922, 928, 937, 938], want_response: false }, ItemSet { range: Range(954, 993), items: [954, 961, 978], want_response: false }, ItemSet { range: Range(121, 149), items: [148], want_response: true }, ItemSet { range: Range(224, 250), items: [224, 243], want_response: true }, ItemSet { range: Range(400, 410), items: [401, 407], want_response: true }, ItemSet { range: Range(410, 415), items: [410], want_response: true }, ItemSet { range: Range(479, 491), items: [479], want_response: true }], wants: [97, 107, 223, 345, 346, 368, 384, 393, 435, 626, 636, 645, 648, 720, 723, 727, 771, 775, 790, 826, 881, 882, 993, 996, 13, 49, 74, 149, 189, 250, 290, 415, 418, 449, 491, 530, 534, 546, 558, 624, 663, 698, 705, 719, 883, 886, 910, 931, 933, 969, 986], provide: [(798, true), (802, true), (805, true), (810, true), (814, true), (118, true), (213, true), (218, true), (361, true), (386, true), (395, true), (424, true), (426, true), (631, true), (725, true), (730, true), (770, true), (777, true), (829, true), (870, true), (873, true), (994, true), (998, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(121, 149), items: [121, 125, 145], want_response: false }, ItemSet { range: Range(224, 250), items: [234, 244, 246], want_response: false }, ItemSet { range: Range(400, 410), items: [400, 402, 406], want_response: false }, ItemSet { range: Range(410, 415), items: [], want_response: false }, ItemSet { range: Range(479, 491), items: [480, 484, 490], want_response: false }], wants: [18, 76, 156, 166, 283, 314, 317, 337, 451, 457, 462, 508, 515, 547, 550, 555, 557, 567, 577, 618, 655, 672, 688, 694, 697, 702, 703, 754, 762, 769, 885, 887, 891, 905, 911, 917, 918, 922, 928, 937, 938, 954, 961, 978, 148, 224, 243, 401, 407, 410, 479], provide: [(97, true), (107, true), (223, true), (345, true), (346, true), (368, true), (384, true), (393, true), (435, true), (626, true), (636, true), (645, true), (648, true), (720, true), (723, true), (727, true), (771, true), (775, true), (790, true), (826, true), (881, true), (882, true), (993, true), (996, true), (13, true), (49, true), (74, true), (149, true), (189, true), (250, true), (290, true), (415, true), (418, true), (449, true), (491, true), (530, true), (534, true), (546, true), (558, true), (624, true), (663, true), (698, true), (705, true), (719, true), (883, true), (886, true), (910, true), (931, true), (933, true), (969, true), (986, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [121, 125, 145, 234, 244, 246, 400, 402, 406, 480, 484, 490], provide: [(18, true), (76, true), (156, true), (166, true), (283, true), (314, true), (317, true), (337, true), (451, true), (457, true), (462, true), (508, true), (515, true), (547, true), (550, true), (555, true), (557, true), (567, true), (577, true), (618, true), (655, true), (672, true), (688, true), (694, true), (697, true), (702, true), (703, true), (754, true), (762, true), (769, true), (885, true), (887, true), (891, true), (905, true), (911, true), (917, true), (918, true), (922, true), (928, true), (937, true), (938, true), (954, true), (961, true), (978, true), (148, true), (224, true), (243, true), (401, true), (407, true), (410, true), (479, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(121, true), (125, true), (145, true), (234, true), (244, true), (246, true), (400, true), (402, true), (406, true), (480, true), (484, true), (490, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {13, 49, 74, 86, 89, 97, 107, 121, 125, 145, 149, 189, 223, 234, 244, 246, 250, 290, 345, 346, 368, 384, 393, 400, 402, 406, 415, 418, 435, 449, 480, 484, 490, 491, 501, 519, 530, 534, 546, 558, 624, 626, 636, 645, 648, 652, 663, 698, 705, 719, 720, 723, 727, 733, 771, 775, 790, 791, 794, 826, 881, 882, 883, 886, 910, 931, 933, 969, 986, 993, 996, 999} + [2, 9, 798, 802, 805, 810, 814, 118, 213, 218, 361, 386, 395, 424, 426, 631, 725, 730, 770, 777, 829, 870, 873, 994, 998, 18, 76, 156, 166, 283, 314, 317, 337, 451, 457, 462, 508, 515, 547, 550, 555, 557, 567, 577, 618, 655, 672, 688, 694, 697, 702, 703, 754, 762, 769, 885, 887, 891, 905, 911, 917, 918, 922, 928, 937, 938, 954, 961, 978, 148, 224, 243, 401, 407, 410, 479]
[INFO] [stdout] b all: {2, 9, 18, 76, 86, 89, 118, 148, 156, 166, 213, 218, 224, 243, 283, 314, 317, 337, 361, 386, 395, 401, 407, 410, 424, 426, 451, 457, 462, 479, 501, 508, 515, 519, 547, 550, 555, 557, 567, 577, 618, 631, 652, 655, 672, 688, 694, 697, 702, 703, 725, 730, 733, 754, 762, 769, 770, 777, 798, 802, 805, 810, 814, 829, 870, 873, 885, 887, 891, 905, 911, 917, 918, 922, 928, 937, 938, 954, 961, 978, 994, 998, 999} + [791, 794, 97, 107, 223, 345, 346, 368, 384, 393, 435, 626, 636, 645, 648, 720, 723, 727, 771, 775, 790, 826, 881, 882, 993, 996, 13, 49, 74, 149, 189, 250, 290, 415, 418, 449, 491, 530, 534, 546, 558, 624, 663, 698, 705, 719, 883, 886, 910, 931, 933, 969, 986, 121, 125, 145, 234, 244, 246, 400, 402, 406, 480, 484, 490]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [2, 9, 13, 18, 49, 74, 76, 86, 89, 97, 107, 118, 121, 125, 145, 148, 149, 156, 166, 189, 213, 218, 223, 224, 234, 243, 244, 246, 250, 283, 290, 314, 317, 337, 345, 346, 361, 368, 384, 386, 393, 395, 400, 401, 402, 406, 407, 410, 415, 418, 424, 426, 435, 449, 451, 457, 462, 479, 480, 484, 490, 491, 501, 508, 515, 519, 530, 534, 546, 547, 550, 555, 557, 558, 567, 577, 618, 624, 626, 631, 636, 645, 648, 652, 655, 663, 672, 688, 694, 697, 698, 702, 703, 705, 719, 720, 723, 725, 727, 730, 733, 754, 762, 769, 770, 771, 775, 777, 790, 791, 794, 798, 802, 805, 810, 814, 826, 829, 870, 873, 881, 882, 883, 885, 886, 887, 891, 905, 910, 911, 917, 918, 922, 928, 931, 933, 937, 938, 954, 961, 969, 978, 986, 993, 994, 996, 998, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [2, 9, 13, 18, 49, 74, 76, 86, 89, 97, 107, 118, 121, 125, 145, 148, 149, 156, 166, 189, 213, 218, 223, 224, 234, 243, 244, 246, 250, 283, 290, 314, 317, 337, 345, 346, 361, 368, 384, 386, 393, 395, 400, 401, 402, 406, 407, 410, 415, 418, 424, 426, 435, 449, 451, 457, 462, 479, 480, 484, 490, 491, 501, 508, 515, 519, 530, 534, 546, 547, 550, 555, 557, 558, 567, 577, 618, 624, 626, 631, 636, 645, 648, 652, 655, 663, 672, 688, 694, 697, 698, 702, 703, 705, 719, 720, 723, 725, 727, 730, 733, 754, 762, 769, 770, 771, 775, 777, 790, 791, 794, 798, 802, 805, 810, 814, 826, 829, 870, 873, 881, 882, 883, 885, 886, 887, 891, 905, 910, 911, 917, 918, 922, 928, 931, 933, 937, 938, 954, 961, 969, 978, 986, 993, 994, 996, 998, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [2, 9, 13, 18, 49, 74, 76, 86, 89, 97, 107, 118, 121, 125, 145, 148, 149, 156, 166, 189, 213, 218, 223, 224, 234, 243, 244, 246, 250, 283, 290, 314, 317, 337, 345, 346, 361, 368, 384, 386, 393, 395, 400, 401, 402, 406, 407, 410, 415, 418, 424, 426, 435, 449, 451, 457, 462, 479, 480, 484, 490, 491, 501, 508, 515, 519, 530, 534, 546, 547, 550, 555, 557, 558, 567, 577, 618, 624, 626, 631, 636, 645, 648, 652, 655, 663, 672, 688, 694, 697, 698, 702, 703, 705, 719, 720, 723, 725, 727, 730, 733, 754, 762, 769, 770, 771, 775, 777, 790, 791, 794, 798, 802, 805, 810, 814, 826, 829, 870, 873, 881, 882, 883, 885, 886, 887, 891, 905, 910, 911, 917, 918, 922, 928, 931, 933, 937, 938, 954, 961, 969, 978, 986, 993, 994, 996, 998, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {23, 110, 231, 422, 566, 790, 947}
[INFO] [stdout] b items: {5, 53, 73, 120, 164, 218, 223, 234, 248, 267, 280, 313, 338, 371, 383, 385, 386, 392, 410, 414, 415, 459, 464, 481, 482, 502, 509, 525, 559, 587, 588, 609, 652, 667, 688, 698, 773, 781, 834, 841, 842, 865, 903, 941, 949, 955, 959, 975, 978}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(23, 948), fp: EncodedCountingMonoid(7, SumMonoid(3089)) }], item_sets: [ItemSet { range: Range(948, 23), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(23, 481), fp: EncodedCountingMonoid(22, SumMonoid(6610)) }, Fingerprint { range: Range(481, 948), fp: EncodedCountingMonoid(21, SumMonoid(14327)) }], item_sets: [ItemSet { range: Range(948, 23), items: [949, 955, 959, 975, 978, 5], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(23, 231), items: [23, 110], want_response: true }, ItemSet { range: Range(231, 481), items: [231, 422], want_response: true }, ItemSet { range: Range(481, 947), items: [566, 790], want_response: true }, ItemSet { range: Range(947, 948), items: [947], want_response: true }], wants: [949, 955, 959, 975, 978, 5], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(23, 231), items: [53, 73, 120, 164, 218, 223], want_response: false }, ItemSet { range: Range(231, 481), items: [234, 248, 267, 280, 313, 338, 371, 383, 385, 386, 392, 410, 414, 415, 459, 464], want_response: false }, ItemSet { range: Range(481, 947), items: [481, 482, 502, 509, 525, 559, 587, 588, 609, 652, 667, 688, 698, 773, 781, 834, 841, 842, 865, 903, 941], want_response: false }, ItemSet { range: Range(947, 948), items: [], want_response: false }], wants: [23, 110, 231, 422, 566, 790, 947], provide: [(949, true), (955, true), (959, true), (975, true), (978, true), (5, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [53, 73, 120, 164, 218, 223, 234, 248, 267, 280, 313, 338, 371, 383, 385, 386, 392, 410, 414, 415, 459, 464, 481, 482, 502, 509, 525, 559, 587, 588, 609, 652, 667, 688, 698, 773, 781, 834, 841, 842, 865, 903, 941], provide: [(23, true), (110, true), (231, true), (422, true), (566, true), (790, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(53, true), (73, true), (120, true), (164, true), (218, true), (223, true), (234, true), (248, true), (267, true), (280, true), (313, true), (338, true), (371, true), (383, true), (385, true), (386, true), (392, true), (410, true), (414, true), (415, true), (459, true), (464, true), (481, true), (482, true), (502, true), (509, true), (525, true), (559, true), (587, true), (588, true), (609, true), (652, true), (667, true), (688, true), (698, true), (773, true), (781, true), (834, true), (841, true), (842, true), (865, true), (903, true), (941, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {23, 110, 231, 422, 566, 790, 947} + [949, 955, 959, 975, 978, 5, 53, 73, 120, 164, 218, 223, 234, 248, 267, 280, 313, 338, 371, 383, 385, 386, 392, 410, 414, 415, 459, 464, 481, 482, 502, 509, 525, 559, 587, 588, 609, 652, 667, 688, 698, 773, 781, 834, 841, 842, 865, 903, 941]
[INFO] [stdout] b all: {5, 53, 73, 120, 164, 218, 223, 234, 248, 267, 280, 313, 338, 371, 383, 385, 386, 392, 410, 414, 415, 459, 464, 481, 482, 502, 509, 525, 559, 587, 588, 609, 652, 667, 688, 698, 773, 781, 834, 841, 842, 865, 903, 941, 949, 955, 959, 975, 978} + [23, 110, 231, 422, 566, 790, 947]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 23, 53, 73, 110, 120, 164, 218, 223, 231, 234, 248, 267, 280, 313, 338, 371, 383, 385, 386, 392, 410, 414, 415, 422, 459, 464, 481, 482, 502, 509, 525, 559, 566, 587, 588, 609, 652, 667, 688, 698, 773, 781, 790, 834, 841, 842, 865, 903, 941, 947, 949, 955, 959, 975, 978]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 23, 53, 73, 110, 120, 164, 218, 223, 231, 234, 248, 267, 280, 313, 338, 371, 383, 385, 386, 392, 410, 414, 415, 422, 459, 464, 481, 482, 502, 509, 525, 559, 566, 587, 588, 609, 652, 667, 688, 698, 773, 781, 790, 834, 841, 842, 865, 903, 941, 947, 949, 955, 959, 975, 978], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 23, 53, 73, 110, 120, 164, 218, 223, 231, 234, 248, 267, 280, 313, 338, 371, 383, 385, 386, 392, 410, 414, 415, 422, 459, 464, 481, 482, 502, 509, 525, 559, 566, 587, 588, 609, 652, 667, 688, 698, 773, 781, 790, 834, 841, 842, 865, 903, 941, 947, 949, 955, 959, 975, 978], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {32, 43, 48, 71, 93, 119, 153, 160, 171, 225, 230, 281, 313, 336, 409, 438, 490, 552, 580, 624, 675, 676, 705, 711, 742, 767, 788, 821, 824, 833, 834, 840, 910, 954, 967}
[INFO] [stdout] b items: {155, 439, 556, 697, 920, 995}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(32, 968), fp: EncodedCountingMonoid(35, SumMonoid(17415)) }], item_sets: [ItemSet { range: Range(968, 32), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(32, 697), fp: EncodedCountingMonoid(3, SumMonoid(1150)) }], item_sets: [ItemSet { range: Range(968, 32), items: [995], want_response: false }, ItemSet { range: Range(697, 968), items: [697, 920], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(32, 281), fp: EncodedCountingMonoid(11, SumMonoid(1345)) }, Fingerprint { range: Range(281, 697), fp: EncodedCountingMonoid(11, SumMonoid(5374)) }], item_sets: [ItemSet { range: Range(697, 968), items: [705, 711, 742, 767, 788, 821, 824, 833, 834, 840, 910, 954, 967], want_response: false }], wants: [995, 697, 920], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(32, 281), items: [155], want_response: true }, ItemSet { range: Range(281, 697), items: [439, 556], want_response: true }], wants: [705, 711, 742, 767, 788, 821, 824, 833, 834, 840, 910, 954, 967], provide: [(995, true), (697, true), (920, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(32, 281), items: [32, 43, 48, 71, 93, 119, 153, 160, 171, 225, 230], want_response: false }, ItemSet { range: Range(281, 697), items: [281, 313, 336, 409, 438, 490, 552, 580, 624, 675, 676], want_response: false }], wants: [155, 439, 556], provide: [(705, true), (711, true), (742, true), (767, true), (788, true), (821, true), (824, true), (833, true), (834, true), (840, true), (910, true), (954, true), (967, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [32, 43, 48, 71, 93, 119, 153, 160, 171, 225, 230, 281, 313, 336, 409, 438, 490, 552, 580, 624, 675, 676], provide: [(155, true), (439, true), (556, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(32, true), (43, true), (48, true), (71, true), (93, true), (119, true), (153, true), (160, true), (171, true), (225, true), (230, true), (281, true), (313, true), (336, true), (409, true), (438, true), (490, true), (552, true), (580, true), (624, true), (675, true), (676, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {32, 43, 48, 71, 93, 119, 153, 160, 171, 225, 230, 281, 313, 336, 409, 438, 490, 552, 580, 624, 675, 676, 705, 711, 742, 767, 788, 821, 824, 833, 834, 840, 910, 954, 967} + [995, 697, 920, 155, 439, 556]
[INFO] [stdout] b all: {155, 439, 556, 697, 920, 995} + [705, 711, 742, 767, 788, 821, 824, 833, 834, 840, 910, 954, 967, 32, 43, 48, 71, 93, 119, 153, 160, 171, 225, 230, 281, 313, 336, 409, 438, 490, 552, 580, 624, 675, 676]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [32, 43, 48, 71, 93, 119, 153, 155, 160, 171, 225, 230, 281, 313, 336, 409, 438, 439, 490, 552, 556, 580, 624, 675, 676, 697, 705, 711, 742, 767, 788, 821, 824, 833, 834, 840, 910, 920, 954, 967, 995]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [32, 43, 48, 71, 93, 119, 153, 155, 160, 171, 225, 230, 281, 313, 336, 409, 438, 439, 490, 552, 556, 580, 624, 675, 676, 697, 705, 711, 742, 767, 788, 821, 824, 833, 834, 840, 910, 920, 954, 967, 995], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [32, 43, 48, 71, 93, 119, 153, 155, 160, 171, 225, 230, 281, 313, 336, 409, 438, 439, 490, 552, 556, 580, 624, 675, 676, 697, 705, 711, 742, 767, 788, 821, 824, 833, 834, 840, 910, 920, 954, 967, 995], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {7, 14, 18, 20, 67, 119, 128, 132, 138, 139, 145, 161, 167, 191, 226, 237, 260, 261, 270, 276, 306, 316, 323, 327, 342, 364, 370, 371, 372, 377, 380, 381, 397, 430, 431, 452, 473, 480, 485, 509, 521, 528, 532, 541, 566, 583, 592, 610, 612, 621, 628, 640, 645, 654, 672, 676, 694, 698, 699, 727, 744, 750, 753, 757, 766, 783, 827, 833, 835, 846, 858, 875, 876, 886, 901, 911, 914, 915, 921, 927, 930, 936, 947, 950, 958, 964, 978, 983}
[INFO] [stdout] b items: {8, 15, 19, 26, 27, 31, 82, 112, 120, 122, 135, 181, 184, 190, 207, 223, 247, 284, 292, 304, 307, 309, 311, 316, 343, 361, 366, 370, 374, 397, 411, 427, 449, 489, 572, 593, 637, 661, 671, 678, 691, 695, 703, 722, 736, 752, 755, 779, 807, 810, 822, 829, 844, 861, 867, 899, 928, 930, 945, 961, 964, 979, 990, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 984), fp: EncodedCountingMonoid(88, SumMonoid(47825)) }], item_sets: [ItemSet { range: Range(984, 7), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 427), fp: EncodedCountingMonoid(31, SumMonoid(6674)) }, Fingerprint { range: Range(427, 984), fp: EncodedCountingMonoid(31, SumMonoid(23456)) }], item_sets: [ItemSet { range: Range(984, 7), items: [990, 993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 261), fp: EncodedCountingMonoid(17, SumMonoid(2169)) }, Fingerprint { range: Range(261, 427), fp: EncodedCountingMonoid(16, SumMonoid(5433)) }, Fingerprint { range: Range(427, 750), fp: EncodedCountingMonoid(28, SumMonoid(16443)) }, Fingerprint { range: Range(750, 984), fp: EncodedCountingMonoid(27, SumMonoid(23780)) }], item_sets: [], wants: [990, 993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 122), fp: EncodedCountingMonoid(9, SumMonoid(440)) }, Fingerprint { range: Range(122, 261), fp: EncodedCountingMonoid(8, SumMonoid(1489)) }, Fingerprint { range: Range(261, 343), fp: EncodedCountingMonoid(7, SumMonoid(2123)) }, Fingerprint { range: Range(343, 427), fp: EncodedCountingMonoid(7, SumMonoid(2622)) }, Fingerprint { range: Range(427, 671), fp: EncodedCountingMonoid(7, SumMonoid(3828)) }, Fingerprint { range: Range(671, 750), fp: EncodedCountingMonoid(7, SumMonoid(4896)) }, Fingerprint { range: Range(750, 867), fp: EncodedCountingMonoid(9, SumMonoid(7259)) }, Fingerprint { range: Range(867, 984), fp: EncodedCountingMonoid(8, SumMonoid(7473)) }], item_sets: [], wants: [], provide: [(990, true), (993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 20), fp: EncodedCountingMonoid(3, SumMonoid(39)) }, Fingerprint { range: Range(20, 122), fp: EncodedCountingMonoid(3, SumMonoid(206)) }, Fingerprint { range: Range(122, 167), fp: EncodedCountingMonoid(6, SumMonoid(843)) }, Fingerprint { range: Range(167, 261), fp: EncodedCountingMonoid(5, SumMonoid(1081)) }, Fingerprint { range: Range(261, 316), fp: EncodedCountingMonoid(4, SumMonoid(1113)) }, Fingerprint { range: Range(316, 343), fp: EncodedCountingMonoid(4, SumMonoid(1308)) }, Fingerprint { range: Range(343, 377), fp: EncodedCountingMonoid(4, SumMonoid(1477)) }, Fingerprint { range: Range(377, 427), fp: EncodedCountingMonoid(4, SumMonoid(1535)) }, Fingerprint { range: Range(427, 566), fp: EncodedCountingMonoid(11, SumMonoid(5382)) }, Fingerprint { range: Range(566, 671), fp: EncodedCountingMonoid(10, SumMonoid(6151)) }, Fingerprint { range: Range(671, 699), fp: EncodedCountingMonoid(4, SumMonoid(2740)) }, Fingerprint { range: Range(699, 750), fp: EncodedCountingMonoid(3, SumMonoid(2170)) }, Fingerprint { range: Range(750, 827), fp: EncodedCountingMonoid(5, SumMonoid(3809)) }, Fingerprint { range: Range(827, 867), fp: EncodedCountingMonoid(5, SumMonoid(4199)) }, Fingerprint { range: Range(867, 930), fp: EncodedCountingMonoid(9, SumMonoid(8126)) }, Fingerprint { range: Range(930, 984), fp: EncodedCountingMonoid(8, SumMonoid(7646)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(20, 82), fp: EncodedCountingMonoid(3, SumMonoid(84)) }, Fingerprint { range: Range(82, 122), fp: EncodedCountingMonoid(3, SumMonoid(314)) }, Fingerprint { range: Range(167, 207), fp: EncodedCountingMonoid(3, SumMonoid(555)) }, Fingerprint { range: Range(207, 261), fp: EncodedCountingMonoid(3, SumMonoid(677)) }, Fingerprint { range: Range(261, 307), fp: EncodedCountingMonoid(3, SumMonoid(880)) }, Fingerprint { range: Range(307, 316), fp: EncodedCountingMonoid(3, SumMonoid(927)) }, Fingerprint { range: Range(343, 370), fp: EncodedCountingMonoid(3, SumMonoid(1070)) }, Fingerprint { range: Range(750, 807), fp: EncodedCountingMonoid(3, SumMonoid(2286)) }, Fingerprint { range: Range(807, 827), fp: EncodedCountingMonoid(3, SumMonoid(2439)) }, Fingerprint { range: Range(930, 964), fp: EncodedCountingMonoid(3, SumMonoid(2836)) }], item_sets: [ItemSet { range: Range(7, 19), items: [8, 15], want_response: true }, ItemSet { range: Range(19, 20), items: [19], want_response: true }, ItemSet { range: Range(122, 167), items: [122, 135], want_response: true }, ItemSet { range: Range(316, 343), items: [316], want_response: true }, ItemSet { range: Range(370, 377), items: [370, 374], want_response: true }, ItemSet { range: Range(377, 427), items: [397, 411], want_response: true }, ItemSet { range: Range(427, 489), items: [427, 449], want_response: true }, ItemSet { range: Range(489, 566), items: [489], want_response: true }, ItemSet { range: Range(566, 637), items: [572, 593], want_response: true }, ItemSet { range: Range(637, 671), items: [637, 661], want_response: true }, ItemSet { range: Range(671, 691), items: [671, 678], want_response: true }, ItemSet { range: Range(691, 699), items: [691, 695], want_response: true }, ItemSet { range: Range(699, 736), items: [703, 722], want_response: true }, ItemSet { range: Range(736, 750), items: [736], want_response: true }, ItemSet { range: Range(827, 861), items: [829, 844], want_response: true }, ItemSet { range: Range(861, 867), items: [861], want_response: true }, ItemSet { range: Range(867, 928), items: [867, 899], want_response: true }, ItemSet { range: Range(928, 930), items: [928], want_response: true }, ItemSet { range: Range(964, 984), items: [964, 979], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(750, 766), fp: EncodedCountingMonoid(3, SumMonoid(2260)) }, Fingerprint { range: Range(930, 950), fp: EncodedCountingMonoid(3, SumMonoid(2813)) }], item_sets: [ItemSet { range: Range(7, 19), items: [7, 14, 18], want_response: false }, ItemSet { range: Range(19, 20), items: [], want_response: false }, ItemSet { range: Range(122, 167), items: [128, 132, 138, 139, 145, 161], want_response: false }, ItemSet { range: Range(316, 343), items: [316, 323, 327, 342], want_response: false }, ItemSet { range: Range(370, 377), items: [370, 371, 372], want_response: false }, ItemSet { range: Range(377, 427), items: [377, 380, 381, 397], want_response: false }, ItemSet { range: Range(427, 489), items: [430, 431, 452, 473, 480, 485], want_response: false }, ItemSet { range: Range(489, 566), items: [509, 521, 528, 532, 541], want_response: false }, ItemSet { range: Range(566, 637), items: [566, 583, 592, 610, 612, 621, 628], want_response: false }, ItemSet { range: Range(637, 671), items: [640, 645, 654], want_response: false }, ItemSet { range: Range(671, 691), items: [672, 676], want_response: false }, ItemSet { range: Range(691, 699), items: [694, 698], want_response: false }, ItemSet { range: Range(699, 736), items: [699, 727], want_response: false }, ItemSet { range: Range(736, 750), items: [744], want_response: false }, ItemSet { range: Range(827, 861), items: [827, 833, 835, 846, 858], want_response: false }, ItemSet { range: Range(861, 867), items: [], want_response: false }, ItemSet { range: Range(867, 928), items: [875, 876, 886, 901, 911, 914, 915, 921, 927], want_response: false }, ItemSet { range: Range(928, 930), items: [], want_response: false }, ItemSet { range: Range(964, 984), items: [964, 978, 983], want_response: false }, ItemSet { range: Range(20, 82), items: [20, 67], want_response: true }, ItemSet { range: Range(82, 122), items: [119], want_response: true }, ItemSet { range: Range(167, 207), items: [167, 191], want_response: true }, ItemSet { range: Range(207, 260), items: [226, 237], want_response: true }, ItemSet { range: Range(260, 261), items: [260], want_response: true }, ItemSet { range: Range(261, 276), items: [261, 270], want_response: true }, ItemSet { range: Range(276, 307), items: [276, 306], want_response: true }, ItemSet { range: Range(307, 316), items: [], want_response: true }, ItemSet { range: Range(343, 370), items: [364], want_response: true }, ItemSet { range: Range(766, 807), items: [766, 783], want_response: true }, ItemSet { range: Range(807, 827), items: [], want_response: true }, ItemSet { range: Range(950, 964), items: [950, 958], want_response: true }], wants: [8, 15, 19, 122, 135, 374, 411, 427, 449, 489, 572, 593, 637, 661, 671, 678, 691, 695, 703, 722, 736, 829, 844, 861, 867, 899, 928, 979], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(20, 82), items: [26, 27, 31], want_response: false }, ItemSet { range: Range(82, 122), items: [82, 112, 120], want_response: false }, ItemSet { range: Range(167, 207), items: [181, 184, 190], want_response: false }, ItemSet { range: Range(207, 260), items: [207, 223, 247], want_response: false }, ItemSet { range: Range(260, 261), items: [], want_response: false }, ItemSet { range: Range(261, 276), items: [], want_response: false }, ItemSet { range: Range(276, 307), items: [284, 292, 304], want_response: false }, ItemSet { range: Range(307, 316), items: [307, 309, 311], want_response: false }, ItemSet { range: Range(343, 370), items: [343, 361, 366], want_response: false }, ItemSet { range: Range(766, 807), items: [779], want_response: false }, ItemSet { range: Range(807, 827), items: [807, 810, 822], want_response: false }, ItemSet { range: Range(950, 964), items: [961], want_response: false }, ItemSet { range: Range(750, 766), items: [752, 755], want_response: true }, ItemSet { range: Range(930, 950), items: [930, 945], want_response: true }], wants: [7, 14, 18, 128, 132, 138, 139, 145, 161, 323, 327, 342, 371, 372, 377, 380, 381, 430, 431, 452, 473, 480, 485, 509, 521, 528, 532, 541, 566, 583, 592, 610, 612, 621, 628, 640, 645, 654, 672, 676, 694, 698, 699, 727, 744, 827, 833, 835, 846, 858, 875, 876, 886, 901, 911, 914, 915, 921, 927, 978, 983, 20, 67, 119, 167, 191, 226, 237, 260, 261, 270, 276, 306, 364, 766, 783, 950, 958], provide: [(8, true), (15, true), (19, true), (122, true), (135, true), (374, true), (411, true), (427, true), (449, true), (489, true), (572, true), (593, true), (637, true), (661, true), (671, true), (678, true), (691, true), (695, true), (703, true), (722, true), (736, true), (829, true), (844, true), (861, true), (867, true), (899, true), (928, true), (979, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(750, 766), items: [750, 753, 757], want_response: false }, ItemSet { range: Range(930, 950), items: [930, 936, 947], want_response: false }], wants: [26, 27, 31, 82, 112, 120, 181, 184, 190, 207, 223, 247, 284, 292, 304, 307, 309, 311, 343, 361, 366, 779, 807, 810, 822, 961, 752, 755, 945], provide: [(7, true), (14, true), (18, true), (128, true), (132, true), (138, true), (139, true), (145, true), (161, true), (323, true), (327, true), (342, true), (371, true), (372, true), (377, true), (380, true), (381, true), (430, true), (431, true), (452, true), (473, true), (480, true), (485, true), (509, true), (521, true), (528, true), (532, true), (541, true), (566, true), (583, true), (592, true), (610, true), (612, true), (621, true), (628, true), (640, true), (645, true), (654, true), (672, true), (676, true), (694, true), (698, true), (699, true), (727, true), (744, true), (827, true), (833, true), (835, true), (846, true), (858, true), (875, true), (876, true), (886, true), (901, true), (911, true), (914, true), (915, true), (921, true), (927, true), (978, true), (983, true), (20, true), (67, true), (119, true), (167, true), (191, true), (226, true), (237, true), (260, true), (261, true), (270, true), (276, true), (306, true), (364, true), (766, true), (783, true), (950, true), (958, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [750, 753, 757, 936, 947], provide: [(26, true), (27, true), (31, true), (82, true), (112, true), (120, true), (181, true), (184, true), (190, true), (207, true), (223, true), (247, true), (284, true), (292, true), (304, true), (307, true), (309, true), (311, true), (343, true), (361, true), (366, true), (779, true), (807, true), (810, true), (822, true), (961, true), (752, true), (755, true), (945, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(750, true), (753, true), (757, true), (936, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {7, 14, 18, 20, 67, 119, 128, 132, 138, 139, 145, 161, 167, 191, 226, 237, 260, 261, 270, 276, 306, 316, 323, 327, 342, 364, 370, 371, 372, 377, 380, 381, 397, 430, 431, 452, 473, 480, 485, 509, 521, 528, 532, 541, 566, 583, 592, 610, 612, 621, 628, 640, 645, 654, 672, 676, 694, 698, 699, 727, 744, 750, 753, 757, 766, 783, 827, 833, 835, 846, 858, 875, 876, 886, 901, 911, 914, 915, 921, 927, 930, 936, 947, 950, 958, 964, 978, 983} + [990, 993, 8, 15, 19, 122, 135, 374, 411, 427, 449, 489, 572, 593, 637, 661, 671, 678, 691, 695, 703, 722, 736, 829, 844, 861, 867, 899, 928, 979, 26, 27, 31, 82, 112, 120, 181, 184, 190, 207, 223, 247, 284, 292, 304, 307, 309, 311, 343, 361, 366, 779, 807, 810, 822, 961, 752, 755, 945]
[INFO] [stdout] b all: {8, 15, 19, 26, 27, 31, 82, 112, 120, 122, 135, 181, 184, 190, 207, 223, 247, 284, 292, 304, 307, 309, 311, 316, 343, 361, 366, 370, 374, 397, 411, 427, 449, 489, 572, 593, 637, 661, 671, 678, 691, 695, 703, 722, 736, 752, 755, 779, 807, 810, 822, 829, 844, 861, 867, 899, 928, 930, 945, 961, 964, 979, 990, 993} + [7, 14, 18, 128, 132, 138, 139, 145, 161, 323, 327, 342, 371, 372, 377, 380, 381, 430, 431, 452, 473, 480, 485, 509, 521, 528, 532, 541, 566, 583, 592, 610, 612, 621, 628, 640, 645, 654, 672, 676, 694, 698, 699, 727, 744, 827, 833, 835, 846, 858, 875, 876, 886, 901, 911, 914, 915, 921, 927, 978, 983, 20, 67, 119, 167, 191, 226, 237, 260, 261, 270, 276, 306, 364, 766, 783, 950, 958, 750, 753, 757, 936, 947]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [7, 8, 14, 15, 18, 19, 20, 26, 27, 31, 67, 82, 112, 119, 120, 122, 128, 132, 135, 138, 139, 145, 161, 167, 181, 184, 190, 191, 207, 223, 226, 237, 247, 260, 261, 270, 276, 284, 292, 304, 306, 307, 309, 311, 316, 323, 327, 342, 343, 361, 364, 366, 370, 371, 372, 374, 377, 380, 381, 397, 411, 427, 430, 431, 449, 452, 473, 480, 485, 489, 509, 521, 528, 532, 541, 566, 572, 583, 592, 593, 610, 612, 621, 628, 637, 640, 645, 654, 661, 671, 672, 676, 678, 691, 694, 695, 698, 699, 703, 722, 727, 736, 744, 750, 752, 753, 755, 757, 766, 779, 783, 807, 810, 822, 827, 829, 833, 835, 844, 846, 858, 861, 867, 875, 876, 886, 899, 901, 911, 914, 915, 921, 927, 928, 930, 936, 945, 947, 950, 958, 961, 964, 978, 979, 983, 990, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [7, 8, 14, 15, 18, 19, 20, 26, 27, 31, 67, 82, 112, 119, 120, 122, 128, 132, 135, 138, 139, 145, 161, 167, 181, 184, 190, 191, 207, 223, 226, 237, 247, 260, 261, 270, 276, 284, 292, 304, 306, 307, 309, 311, 316, 323, 327, 342, 343, 361, 364, 366, 370, 371, 372, 374, 377, 380, 381, 397, 411, 427, 430, 431, 449, 452, 473, 480, 485, 489, 509, 521, 528, 532, 541, 566, 572, 583, 592, 593, 610, 612, 621, 628, 637, 640, 645, 654, 661, 671, 672, 676, 678, 691, 694, 695, 698, 699, 703, 722, 727, 736, 744, 750, 752, 753, 755, 757, 766, 779, 783, 807, 810, 822, 827, 829, 833, 835, 844, 846, 858, 861, 867, 875, 876, 886, 899, 901, 911, 914, 915, 921, 927, 928, 930, 936, 945, 947, 950, 958, 961, 964, 978, 979, 983, 990, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [7, 8, 14, 15, 18, 19, 20, 26, 27, 31, 67, 82, 112, 119, 120, 122, 128, 132, 135, 138, 139, 145, 161, 167, 181, 184, 190, 191, 207, 223, 226, 237, 247, 260, 261, 270, 276, 284, 292, 304, 306, 307, 309, 311, 316, 323, 327, 342, 343, 361, 364, 366, 370, 371, 372, 374, 377, 380, 381, 397, 411, 427, 430, 431, 449, 452, 473, 480, 485, 489, 509, 521, 528, 532, 541, 566, 572, 583, 592, 593, 610, 612, 621, 628, 637, 640, 645, 654, 661, 671, 672, 676, 678, 691, 694, 695, 698, 699, 703, 722, 727, 736, 744, 750, 752, 753, 755, 757, 766, 779, 783, 807, 810, 822, 827, 829, 833, 835, 844, 846, 858, 861, 867, 875, 876, 886, 899, 901, 911, 914, 915, 921, 927, 928, 930, 936, 945, 947, 950, 958, 961, 964, 978, 979, 983, 990, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {139, 165, 199, 268, 333, 416, 431, 570, 657, 665, 666, 668, 788, 802, 879, 893, 998}
[INFO] [stdout] b items: {12, 49, 81, 83, 115, 132, 168, 169, 195, 221, 294, 295, 341, 342, 357, 363, 371, 376, 393, 399, 434, 474, 475, 492, 559, 602, 616, 674, 676, 707, 722, 726, 756, 766, 872, 874, 925, 977, 985, 990, 997}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(139, 999), fp: EncodedCountingMonoid(17, SumMonoid(9537)) }], item_sets: [ItemSet { range: Range(999, 139), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(139, 559), fp: EncodedCountingMonoid(18, SumMonoid(6159)) }, Fingerprint { range: Range(559, 999), fp: EncodedCountingMonoid(17, SumMonoid(13424)) }], item_sets: [ItemSet { range: Range(999, 139), items: [12, 49, 81, 83, 115, 132], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(139, 333), fp: EncodedCountingMonoid(4, SumMonoid(771)) }, Fingerprint { range: Range(333, 559), fp: EncodedCountingMonoid(3, SumMonoid(1180)) }, Fingerprint { range: Range(559, 788), fp: EncodedCountingMonoid(5, SumMonoid(3226)) }, Fingerprint { range: Range(788, 999), fp: EncodedCountingMonoid(5, SumMonoid(4360)) }], item_sets: [], wants: [12, 49, 81, 83, 115, 132], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(139, 221), fp: EncodedCountingMonoid(3, SumMonoid(532)) }, Fingerprint { range: Range(221, 333), fp: EncodedCountingMonoid(3, SumMonoid(810)) }, Fingerprint { range: Range(333, 393), fp: EncodedCountingMonoid(6, SumMonoid(2150)) }, Fingerprint { range: Range(393, 559), fp: EncodedCountingMonoid(6, SumMonoid(2667)) }, Fingerprint { range: Range(559, 707), fp: EncodedCountingMonoid(5, SumMonoid(3127)) }, Fingerprint { range: Range(707, 788), fp: EncodedCountingMonoid(5, SumMonoid(3677)) }, Fingerprint { range: Range(788, 985), fp: EncodedCountingMonoid(4, SumMonoid(3648)) }, Fingerprint { range: Range(985, 999), fp: EncodedCountingMonoid(3, SumMonoid(2972)) }], item_sets: [], wants: [], provide: [(12, true), (49, true), (81, true), (83, true), (115, true), (132, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(559, 666), fp: EncodedCountingMonoid(3, SumMonoid(1892)) }], item_sets: [ItemSet { range: Range(139, 199), items: [139, 165], want_response: true }, ItemSet { range: Range(199, 221), items: [199], want_response: true }, ItemSet { range: Range(221, 333), items: [268], want_response: true }, ItemSet { range: Range(333, 393), items: [333], want_response: true }, ItemSet { range: Range(393, 559), items: [416, 431], want_response: true }, ItemSet { range: Range(666, 707), items: [666, 668], want_response: true }, ItemSet { range: Range(707, 788), items: [], want_response: true }, ItemSet { range: Range(788, 879), items: [788, 802], want_response: true }, ItemSet { range: Range(879, 985), items: [879, 893], want_response: true }, ItemSet { range: Range(985, 999), items: [998], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(139, 199), items: [168, 169, 195], want_response: false }, ItemSet { range: Range(199, 221), items: [], want_response: false }, ItemSet { range: Range(221, 333), items: [221, 294, 295], want_response: false }, ItemSet { range: Range(333, 393), items: [341, 342, 357, 363, 371, 376], want_response: false }, ItemSet { range: Range(393, 559), items: [393, 399, 434, 474, 475, 492], want_response: false }, ItemSet { range: Range(666, 707), items: [674, 676], want_response: false }, ItemSet { range: Range(707, 788), items: [707, 722, 726, 756, 766], want_response: false }, ItemSet { range: Range(788, 879), items: [872, 874], want_response: false }, ItemSet { range: Range(879, 985), items: [925, 977], want_response: false }, ItemSet { range: Range(985, 999), items: [985, 990, 997], want_response: false }, ItemSet { range: Range(559, 616), items: [559, 602], want_response: true }, ItemSet { range: Range(616, 666), items: [616], want_response: true }], wants: [139, 165, 199, 268, 333, 416, 431, 666, 668, 788, 802, 879, 893, 998], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(559, 616), items: [570], want_response: false }, ItemSet { range: Range(616, 666), items: [657, 665], want_response: false }], wants: [168, 169, 195, 221, 294, 295, 341, 342, 357, 363, 371, 376, 393, 399, 434, 474, 475, 492, 674, 676, 707, 722, 726, 756, 766, 872, 874, 925, 977, 985, 990, 997, 559, 602, 616], provide: [(139, true), (165, true), (199, true), (268, true), (333, true), (416, true), (431, true), (666, true), (668, true), (788, true), (802, true), (879, true), (893, true), (998, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [570, 657, 665], provide: [(168, true), (169, true), (195, true), (221, true), (294, true), (295, true), (341, true), (342, true), (357, true), (363, true), (371, true), (376, true), (393, true), (399, true), (434, true), (474, true), (475, true), (492, true), (674, true), (676, true), (707, true), (722, true), (726, true), (756, true), (766, true), (872, true), (874, true), (925, true), (977, true), (985, true), (990, true), (997, true), (559, true), (602, true), (616, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(570, true), (657, true), (665, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {139, 165, 199, 268, 333, 416, 431, 570, 657, 665, 666, 668, 788, 802, 879, 893, 998} + [12, 49, 81, 83, 115, 132, 168, 169, 195, 221, 294, 295, 341, 342, 357, 363, 371, 376, 393, 399, 434, 474, 475, 492, 674, 676, 707, 722, 726, 756, 766, 872, 874, 925, 977, 985, 990, 997, 559, 602, 616]
[INFO] [stdout] b all: {12, 49, 81, 83, 115, 132, 168, 169, 195, 221, 294, 295, 341, 342, 357, 363, 371, 376, 393, 399, 434, 474, 475, 492, 559, 602, 616, 674, 676, 707, 722, 726, 756, 766, 872, 874, 925, 977, 985, 990, 997} + [139, 165, 199, 268, 333, 416, 431, 666, 668, 788, 802, 879, 893, 998, 570, 657, 665]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [12, 49, 81, 83, 115, 132, 139, 165, 168, 169, 195, 199, 221, 268, 294, 295, 333, 341, 342, 357, 363, 371, 376, 393, 399, 416, 431, 434, 474, 475, 492, 559, 570, 602, 616, 657, 665, 666, 668, 674, 676, 707, 722, 726, 756, 766, 788, 802, 872, 874, 879, 893, 925, 977, 985, 990, 997, 998]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [12, 49, 81, 83, 115, 132, 139, 165, 168, 169, 195, 199, 221, 268, 294, 295, 333, 341, 342, 357, 363, 371, 376, 393, 399, 416, 431, 434, 474, 475, 492, 559, 570, 602, 616, 657, 665, 666, 668, 674, 676, 707, 722, 726, 756, 766, 788, 802, 872, 874, 879, 893, 925, 977, 985, 990, 997, 998], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [12, 49, 81, 83, 115, 132, 139, 165, 168, 169, 195, 199, 221, 268, 294, 295, 333, 341, 342, 357, 363, 371, 376, 393, 399, 416, 431, 434, 474, 475, 492, 559, 570, 602, 616, 657, 665, 666, 668, 674, 676, 707, 722, 726, 756, 766, 788, 802, 872, 874, 879, 893, 925, 977, 985, 990, 997, 998], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {56, 75, 187, 223, 586, 798, 860, 922}
[INFO] [stdout] b items: {2, 70, 234, 368, 633, 638, 703, 727, 763, 831, 874, 975}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(56, 923), fp: EncodedCountingMonoid(8, SumMonoid(3707)) }], item_sets: [ItemSet { range: Range(923, 56), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(56, 703), fp: EncodedCountingMonoid(5, SumMonoid(1943)) }, Fingerprint { range: Range(703, 923), fp: EncodedCountingMonoid(5, SumMonoid(3898)) }], item_sets: [ItemSet { range: Range(923, 56), items: [975, 2], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(56, 223), fp: EncodedCountingMonoid(3, SumMonoid(318)) }], item_sets: [ItemSet { range: Range(223, 703), items: [223, 586], want_response: true }, ItemSet { range: Range(703, 922), items: [798, 860], want_response: true }, ItemSet { range: Range(922, 923), items: [922], want_response: true }], wants: [975, 2], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(223, 703), items: [234, 368, 633, 638], want_response: false }, ItemSet { range: Range(703, 922), items: [703, 727, 763, 831, 874], want_response: false }, ItemSet { range: Range(922, 923), items: [], want_response: false }, ItemSet { range: Range(56, 223), items: [70], want_response: true }], wants: [223, 586, 798, 860, 922], provide: [(975, true), (2, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(56, 223), items: [56, 75, 187], want_response: false }], wants: [234, 368, 633, 638, 703, 727, 763, 831, 874, 70], provide: [(223, true), (586, true), (798, true), (860, true), (922, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [56, 75, 187], provide: [(234, true), (368, true), (633, true), (638, true), (703, true), (727, true), (763, true), (831, true), (874, true), (70, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(56, true), (75, true), (187, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {56, 75, 187, 223, 586, 798, 860, 922} + [975, 2, 234, 368, 633, 638, 703, 727, 763, 831, 874, 70]
[INFO] [stdout] b all: {2, 70, 234, 368, 633, 638, 703, 727, 763, 831, 874, 975} + [223, 586, 798, 860, 922, 56, 75, 187]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [2, 56, 70, 75, 187, 223, 234, 368, 586, 633, 638, 703, 727, 763, 798, 831, 860, 874, 922, 975]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [2, 56, 70, 75, 187, 223, 234, 368, 586, 633, 638, 703, 727, 763, 798, 831, 860, 874, 922, 975], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [2, 56, 70, 75, 187, 223, 234, 368, 586, 633, 638, 703, 727, 763, 798, 831, 860, 874, 922, 975], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {14, 15, 73, 123, 131, 147, 172, 179, 193, 196, 214, 218, 231, 248, 277, 281, 295, 305, 321, 331, 345, 364, 433, 453, 455, 493, 494, 498, 505, 507, 510, 536, 544, 557, 560, 587, 601, 603, 615, 624, 642, 644, 655, 699, 704, 712, 730, 731, 737, 753, 790, 803, 836, 851, 862, 871, 895, 919, 949, 982}
[INFO] [stdout] b items: {27, 33, 37, 38, 78, 89, 105, 127, 130, 132, 140, 164, 175, 203, 204, 211, 223, 225, 234, 241, 267, 268, 270, 275, 305, 307, 329, 332, 333, 338, 343, 390, 431, 435, 458, 463, 468, 469, 475, 485, 501, 511, 513, 525, 530, 547, 558, 577, 589, 606, 645, 647, 649, 660, 664, 670, 691, 699, 776, 796, 798, 808, 810, 819, 829, 866, 873, 874, 880, 888, 903, 904, 912, 919, 948}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(14, 983), fp: EncodedCountingMonoid(60, SumMonoid(30013)) }], item_sets: [ItemSet { range: Range(983, 14), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(14, 475), fp: EncodedCountingMonoid(38, SumMonoid(9297)) }, Fingerprint { range: Range(475, 983), fp: EncodedCountingMonoid(37, SumMonoid(26345)) }], item_sets: [ItemSet { range: Range(983, 14), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(14, 248), fp: EncodedCountingMonoid(13, SumMonoid(1906)) }, Fingerprint { range: Range(248, 475), fp: EncodedCountingMonoid(12, SumMonoid(4108)) }, Fingerprint { range: Range(475, 699), fp: EncodedCountingMonoid(18, SumMonoid(10175)) }, Fingerprint { range: Range(699, 983), fp: EncodedCountingMonoid(17, SumMonoid(13824)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(14, 140), fp: EncodedCountingMonoid(10, SumMonoid(796)) }, Fingerprint { range: Range(140, 248), fp: EncodedCountingMonoid(10, SumMonoid(2020)) }, Fingerprint { range: Range(248, 338), fp: EncodedCountingMonoid(9, SumMonoid(2686)) }, Fingerprint { range: Range(338, 475), fp: EncodedCountingMonoid(9, SumMonoid(3795)) }, Fingerprint { range: Range(475, 589), fp: EncodedCountingMonoid(10, SumMonoid(5222)) }, Fingerprint { range: Range(589, 699), fp: EncodedCountingMonoid(9, SumMonoid(5821)) }, Fingerprint { range: Range(699, 873), fp: EncodedCountingMonoid(9, SumMonoid(7201)) }, Fingerprint { range: Range(873, 983), fp: EncodedCountingMonoid(9, SumMonoid(8101)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(14, 123), fp: EncodedCountingMonoid(3, SumMonoid(102)) }, Fingerprint { range: Range(140, 196), fp: EncodedCountingMonoid(4, SumMonoid(691)) }, Fingerprint { range: Range(196, 248), fp: EncodedCountingMonoid(4, SumMonoid(859)) }, Fingerprint { range: Range(248, 305), fp: EncodedCountingMonoid(4, SumMonoid(1101)) }, Fingerprint { range: Range(305, 338), fp: EncodedCountingMonoid(3, SumMonoid(957)) }, Fingerprint { range: Range(338, 453), fp: EncodedCountingMonoid(3, SumMonoid(1142)) }, Fingerprint { range: Range(475, 536), fp: EncodedCountingMonoid(6, SumMonoid(3007)) }, Fingerprint { range: Range(536, 589), fp: EncodedCountingMonoid(5, SumMonoid(2784)) }, Fingerprint { range: Range(589, 642), fp: EncodedCountingMonoid(4, SumMonoid(2443)) }, Fingerprint { range: Range(642, 699), fp: EncodedCountingMonoid(3, SumMonoid(1941)) }, Fingerprint { range: Range(699, 790), fp: EncodedCountingMonoid(7, SumMonoid(5066)) }, Fingerprint { range: Range(790, 873), fp: EncodedCountingMonoid(6, SumMonoid(5013)) }], item_sets: [ItemSet { range: Range(123, 140), items: [123, 131], want_response: true }, ItemSet { range: Range(453, 475), items: [453, 455], want_response: true }, ItemSet { range: Range(873, 949), items: [895, 919], want_response: true }, ItemSet { range: Range(949, 983), items: [949, 982], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(14, 78), fp: EncodedCountingMonoid(4, SumMonoid(135)) }, Fingerprint { range: Range(78, 123), fp: EncodedCountingMonoid(3, SumMonoid(272)) }, Fingerprint { range: Range(196, 225), fp: EncodedCountingMonoid(4, SumMonoid(841)) }, Fingerprint { range: Range(225, 248), fp: EncodedCountingMonoid(3, SumMonoid(700)) }, Fingerprint { range: Range(305, 332), fp: EncodedCountingMonoid(3, SumMonoid(941)) }, Fingerprint { range: Range(338, 431), fp: EncodedCountingMonoid(3, SumMonoid(1071)) }, Fingerprint { range: Range(475, 513), fp: EncodedCountingMonoid(4, SumMonoid(1972)) }, Fingerprint { range: Range(513, 536), fp: EncodedCountingMonoid(3, SumMonoid(1568)) }, Fingerprint { range: Range(642, 664), fp: EncodedCountingMonoid(4, SumMonoid(2601)) }, Fingerprint { range: Range(664, 699), fp: EncodedCountingMonoid(3, SumMonoid(2025)) }, Fingerprint { range: Range(790, 819), fp: EncodedCountingMonoid(4, SumMonoid(3212)) }, Fingerprint { range: Range(819, 873), fp: EncodedCountingMonoid(3, SumMonoid(2514)) }], item_sets: [ItemSet { range: Range(123, 140), items: [127, 130, 132], want_response: false }, ItemSet { range: Range(453, 475), items: [458, 463, 468, 469], want_response: false }, ItemSet { range: Range(873, 949), items: [873, 874, 880, 888, 903, 904, 912, 919, 948], want_response: false }, ItemSet { range: Range(949, 983), items: [], want_response: false }, ItemSet { range: Range(140, 175), items: [140, 164], want_response: true }, ItemSet { range: Range(175, 196), items: [175], want_response: true }, ItemSet { range: Range(248, 270), items: [267, 268], want_response: true }, ItemSet { range: Range(270, 305), items: [270, 275], want_response: true }, ItemSet { range: Range(332, 338), items: [332, 333], want_response: true }, ItemSet { range: Range(431, 453), items: [431, 435], want_response: true }, ItemSet { range: Range(536, 577), items: [547, 558], want_response: true }, ItemSet { range: Range(577, 589), items: [577], want_response: true }, ItemSet { range: Range(589, 642), items: [589, 606], want_response: true }, ItemSet { range: Range(699, 790), items: [699, 776], want_response: true }], wants: [123, 131, 453, 455, 895, 949, 982], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(475, 505), fp: EncodedCountingMonoid(3, SumMonoid(1485)) }, Fingerprint { range: Range(505, 513), fp: EncodedCountingMonoid(3, SumMonoid(1522)) }], item_sets: [ItemSet { range: Range(140, 175), items: [147, 172], want_response: false }, ItemSet { range: Range(175, 196), items: [179, 193], want_response: false }, ItemSet { range: Range(248, 270), items: [248], want_response: false }, ItemSet { range: Range(270, 305), items: [277, 281, 295], want_response: false }, ItemSet { range: Range(332, 338), items: [], want_response: false }, ItemSet { range: Range(431, 453), items: [433], want_response: false }, ItemSet { range: Range(536, 577), items: [536, 544, 557, 560], want_response: false }, ItemSet { range: Range(577, 589), items: [587], want_response: false }, ItemSet { range: Range(589, 642), items: [601, 603, 615, 624], want_response: false }, ItemSet { range: Range(699, 790), items: [699, 704, 712, 730, 731, 737, 753], want_response: false }, ItemSet { range: Range(14, 73), items: [14, 15], want_response: true }, ItemSet { range: Range(73, 78), items: [73], want_response: true }, ItemSet { range: Range(78, 123), items: [], want_response: true }, ItemSet { range: Range(196, 218), items: [196, 214], want_response: true }, ItemSet { range: Range(218, 225), items: [218], want_response: true }, ItemSet { range: Range(225, 248), items: [231], want_response: true }, ItemSet { range: Range(305, 331), items: [305, 321], want_response: true }, ItemSet { range: Range(331, 332), items: [331], want_response: true }, ItemSet { range: Range(338, 431), items: [345, 364], want_response: true }, ItemSet { range: Range(513, 536), items: [], want_response: true }, ItemSet { range: Range(642, 655), items: [642, 644], want_response: true }, ItemSet { range: Range(655, 664), items: [655], want_response: true }, ItemSet { range: Range(664, 699), items: [], want_response: true }, ItemSet { range: Range(790, 819), items: [790, 803], want_response: true }, ItemSet { range: Range(819, 862), items: [836, 851], want_response: true }, ItemSet { range: Range(862, 873), items: [862, 871], want_response: true }], wants: [127, 130, 132, 458, 463, 468, 469, 873, 874, 880, 888, 903, 904, 912, 948, 140, 164, 175, 267, 268, 270, 275, 332, 333, 431, 435, 547, 558, 577, 589, 606, 776], provide: [(123, true), (131, true), (453, true), (455, true), (895, true), (949, true), (982, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(14, 73), items: [27, 33, 37, 38], want_response: false }, ItemSet { range: Range(73, 78), items: [], want_response: false }, ItemSet { range: Range(78, 123), items: [78, 89, 105], want_response: false }, ItemSet { range: Range(196, 218), items: [203, 204, 211], want_response: false }, ItemSet { range: Range(218, 225), items: [223], want_response: false }, ItemSet { range: Range(225, 248), items: [225, 234, 241], want_response: false }, ItemSet { range: Range(305, 331), items: [305, 307, 329], want_response: false }, ItemSet { range: Range(331, 332), items: [], want_response: false }, ItemSet { range: Range(338, 431), items: [338, 343, 390], want_response: false }, ItemSet { range: Range(513, 536), items: [513, 525, 530], want_response: false }, ItemSet { range: Range(642, 655), items: [645, 647, 649], want_response: false }, ItemSet { range: Range(655, 664), items: [660], want_response: false }, ItemSet { range: Range(664, 699), items: [664, 670, 691], want_response: false }, ItemSet { range: Range(790, 819), items: [796, 798, 808, 810], want_response: false }, ItemSet { range: Range(819, 862), items: [819, 829], want_response: false }, ItemSet { range: Range(862, 873), items: [866], want_response: false }, ItemSet { range: Range(475, 501), items: [475, 485], want_response: true }, ItemSet { range: Range(501, 505), items: [501], want_response: true }, ItemSet { range: Range(505, 513), items: [511], want_response: true }], wants: [147, 172, 179, 193, 248, 277, 281, 295, 433, 536, 544, 557, 560, 587, 601, 603, 615, 624, 704, 712, 730, 731, 737, 753, 14, 15, 73, 196, 214, 218, 231, 321, 331, 345, 364, 642, 644, 655, 790, 803, 836, 851, 862, 871], provide: [(127, true), (130, true), (132, true), (458, true), (463, true), (468, true), (469, true), (873, true), (874, true), (880, true), (888, true), (903, true), (904, true), (912, true), (948, true), (140, true), (164, true), (175, true), (267, true), (268, true), (270, true), (275, true), (332, true), (333, true), (431, true), (435, true), (547, true), (558, true), (577, true), (589, true), (606, true), (776, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(475, 501), items: [493, 494, 498], want_response: false }, ItemSet { range: Range(501, 505), items: [], want_response: false }, ItemSet { range: Range(505, 513), items: [505, 507, 510], want_response: false }], wants: [27, 33, 37, 38, 78, 89, 105, 203, 204, 211, 223, 225, 234, 241, 307, 329, 338, 343, 390, 513, 525, 530, 645, 647, 649, 660, 664, 670, 691, 796, 798, 808, 810, 819, 829, 866, 475, 485, 501, 511], provide: [(147, true), (172, true), (179, true), (193, true), (248, true), (277, true), (281, true), (295, true), (433, true), (536, true), (544, true), (557, true), (560, true), (587, true), (601, true), (603, true), (615, true), (624, true), (704, true), (712, true), (730, true), (731, true), (737, true), (753, true), (14, true), (15, true), (73, true), (196, true), (214, true), (218, true), (231, true), (321, true), (331, true), (345, true), (364, true), (642, true), (644, true), (655, true), (790, true), (803, true), (836, true), (851, true), (862, true), (871, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [493, 494, 498, 505, 507, 510], provide: [(27, true), (33, true), (37, true), (38, true), (78, true), (89, true), (105, true), (203, true), (204, true), (211, true), (223, true), (225, true), (234, true), (241, true), (307, true), (329, true), (338, true), (343, true), (390, true), (513, true), (525, true), (530, true), (645, true), (647, true), (649, true), (660, true), (664, true), (670, true), (691, true), (796, true), (798, true), (808, true), (810, true), (819, true), (829, true), (866, true), (475, true), (485, true), (501, true), (511, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(493, true), (494, true), (498, true), (505, true), (507, true), (510, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {14, 15, 73, 123, 131, 147, 172, 179, 193, 196, 214, 218, 231, 248, 277, 281, 295, 305, 321, 331, 345, 364, 433, 453, 455, 493, 494, 498, 505, 507, 510, 536, 544, 557, 560, 587, 601, 603, 615, 624, 642, 644, 655, 699, 704, 712, 730, 731, 737, 753, 790, 803, 836, 851, 862, 871, 895, 919, 949, 982} + [127, 130, 132, 458, 463, 468, 469, 873, 874, 880, 888, 903, 904, 912, 948, 140, 164, 175, 267, 268, 270, 275, 332, 333, 431, 435, 547, 558, 577, 589, 606, 776, 27, 33, 37, 38, 78, 89, 105, 203, 204, 211, 223, 225, 234, 241, 307, 329, 338, 343, 390, 513, 525, 530, 645, 647, 649, 660, 664, 670, 691, 796, 798, 808, 810, 819, 829, 866, 475, 485, 501, 511]
[INFO] [stdout] b all: {27, 33, 37, 38, 78, 89, 105, 127, 130, 132, 140, 164, 175, 203, 204, 211, 223, 225, 234, 241, 267, 268, 270, 275, 305, 307, 329, 332, 333, 338, 343, 390, 431, 435, 458, 463, 468, 469, 475, 485, 501, 511, 513, 525, 530, 547, 558, 577, 589, 606, 645, 647, 649, 660, 664, 670, 691, 699, 776, 796, 798, 808, 810, 819, 829, 866, 873, 874, 880, 888, 903, 904, 912, 919, 948} + [123, 131, 453, 455, 895, 949, 982, 147, 172, 179, 193, 248, 277, 281, 295, 433, 536, 544, 557, 560, 587, 601, 603, 615, 624, 704, 712, 730, 731, 737, 753, 14, 15, 73, 196, 214, 218, 231, 321, 331, 345, 364, 642, 644, 655, 790, 803, 836, 851, 862, 871, 493, 494, 498, 505, 507, 510]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [14, 15, 27, 33, 37, 38, 73, 78, 89, 105, 123, 127, 130, 131, 132, 140, 147, 164, 172, 175, 179, 193, 196, 203, 204, 211, 214, 218, 223, 225, 231, 234, 241, 248, 267, 268, 270, 275, 277, 281, 295, 305, 307, 321, 329, 331, 332, 333, 338, 343, 345, 364, 390, 431, 433, 435, 453, 455, 458, 463, 468, 469, 475, 485, 493, 494, 498, 501, 505, 507, 510, 511, 513, 525, 530, 536, 544, 547, 557, 558, 560, 577, 587, 589, 601, 603, 606, 615, 624, 642, 644, 645, 647, 649, 655, 660, 664, 670, 691, 699, 704, 712, 730, 731, 737, 753, 776, 790, 796, 798, 803, 808, 810, 819, 829, 836, 851, 862, 866, 871, 873, 874, 880, 888, 895, 903, 904, 912, 919, 948, 949, 982]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [14, 15, 27, 33, 37, 38, 73, 78, 89, 105, 123, 127, 130, 131, 132, 140, 147, 164, 172, 175, 179, 193, 196, 203, 204, 211, 214, 218, 223, 225, 231, 234, 241, 248, 267, 268, 270, 275, 277, 281, 295, 305, 307, 321, 329, 331, 332, 333, 338, 343, 345, 364, 390, 431, 433, 435, 453, 455, 458, 463, 468, 469, 475, 485, 493, 494, 498, 501, 505, 507, 510, 511, 513, 525, 530, 536, 544, 547, 557, 558, 560, 577, 587, 589, 601, 603, 606, 615, 624, 642, 644, 645, 647, 649, 655, 660, 664, 670, 691, 699, 704, 712, 730, 731, 737, 753, 776, 790, 796, 798, 803, 808, 810, 819, 829, 836, 851, 862, 866, 871, 873, 874, 880, 888, 895, 903, 904, 912, 919, 948, 949, 982], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [14, 15, 27, 33, 37, 38, 73, 78, 89, 105, 123, 127, 130, 131, 132, 140, 147, 164, 172, 175, 179, 193, 196, 203, 204, 211, 214, 218, 223, 225, 231, 234, 241, 248, 267, 268, 270, 275, 277, 281, 295, 305, 307, 321, 329, 331, 332, 333, 338, 343, 345, 364, 390, 431, 433, 435, 453, 455, 458, 463, 468, 469, 475, 485, 493, 494, 498, 501, 505, 507, 510, 511, 513, 525, 530, 536, 544, 547, 557, 558, 560, 577, 587, 589, 601, 603, 606, 615, 624, 642, 644, 645, 647, 649, 655, 660, 664, 670, 691, 699, 704, 712, 730, 731, 737, 753, 776, 790, 796, 798, 803, 808, 810, 819, 829, 836, 851, 862, 866, 871, 873, 874, 880, 888, 895, 903, 904, 912, 919, 948, 949, 982], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {3, 4, 8, 37, 41, 48, 54, 56, 72, 78, 99, 100, 103, 108, 111, 115, 121, 171, 198, 227, 243, 250, 255, 262, 265, 280, 285, 288, 303, 308, 312, 327, 344, 351, 353, 358, 366, 369, 375, 408, 414, 432, 450, 451, 453, 463, 494, 499, 520, 533, 548, 551, 564, 566, 572, 620, 623, 632, 635, 660, 671, 677, 680, 685, 692, 693, 716, 734, 760, 763, 792, 793, 824, 835, 840, 851, 863, 868, 880, 883, 886, 919, 929, 931, 937, 939, 950, 963, 966, 968, 999}
[INFO] [stdout] b items: {3, 12, 20, 58, 77, 85, 91, 92, 120, 151, 157, 192, 213, 216, 302, 314, 361, 362, 368, 381, 382, 390, 396, 423, 431, 449, 457, 468, 514, 516, 517, 520, 531, 542, 548, 552, 556, 573, 584, 595, 614, 619, 664, 689, 691, 702, 710, 715, 716, 728, 735, 749, 760, 799, 813, 833, 847, 850, 902, 917, 920, 936, 937, 966, 974, 995}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 1000), fp: EncodedCountingMonoid(91, SumMonoid(44623)) }], item_sets: [ItemSet { range: Range(1000, 3), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 542), fp: EncodedCountingMonoid(33, SumMonoid(9569)) }, Fingerprint { range: Range(542, 1000), fp: EncodedCountingMonoid(33, SumMonoid(24731)) }], item_sets: [ItemSet { range: Range(1000, 3), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 280), fp: EncodedCountingMonoid(25, SumMonoid(3029)) }, Fingerprint { range: Range(280, 542), fp: EncodedCountingMonoid(25, SumMonoid(9736)) }, Fingerprint { range: Range(542, 793), fp: EncodedCountingMonoid(21, SumMonoid(13834)) }, Fingerprint { range: Range(793, 1000), fp: EncodedCountingMonoid(20, SumMonoid(18024)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(3, 92), fp: EncodedCountingMonoid(7, SumMonoid(346)) }, Fingerprint { range: Range(92, 280), fp: EncodedCountingMonoid(7, SumMonoid(1141)) }, Fingerprint { range: Range(280, 431), fp: EncodedCountingMonoid(10, SumMonoid(3679)) }, Fingerprint { range: Range(431, 542), fp: EncodedCountingMonoid(9, SumMonoid(4403)) }, Fingerprint { range: Range(542, 689), fp: EncodedCountingMonoid(10, SumMonoid(5847)) }, Fingerprint { range: Range(689, 793), fp: EncodedCountingMonoid(10, SumMonoid(7195)) }, Fingerprint { range: Range(793, 920), fp: EncodedCountingMonoid(7, SumMonoid(5961)) }, Fingerprint { range: Range(920, 1000), fp: EncodedCountingMonoid(6, SumMonoid(5728)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(3, 48), fp: EncodedCountingMonoid(5, SumMonoid(93)) }, Fingerprint { range: Range(48, 92), fp: EncodedCountingMonoid(5, SumMonoid(308)) }, Fingerprint { range: Range(92, 198), fp: EncodedCountingMonoid(8, SumMonoid(928)) }, Fingerprint { range: Range(198, 280), fp: EncodedCountingMonoid(7, SumMonoid(1700)) }, Fingerprint { range: Range(280, 351), fp: EncodedCountingMonoid(8, SumMonoid(2447)) }, Fingerprint { range: Range(351, 431), fp: EncodedCountingMonoid(8, SumMonoid(2994)) }, Fingerprint { range: Range(431, 494), fp: EncodedCountingMonoid(5, SumMonoid(2249)) }, Fingerprint { range: Range(494, 542), fp: EncodedCountingMonoid(4, SumMonoid(2046)) }, Fingerprint { range: Range(542, 632), fp: EncodedCountingMonoid(7, SumMonoid(4044)) }, Fingerprint { range: Range(632, 689), fp: EncodedCountingMonoid(7, SumMonoid(4640)) }, Fingerprint { range: Range(689, 760), fp: EncodedCountingMonoid(4, SumMonoid(2835)) }, Fingerprint { range: Range(760, 793), fp: EncodedCountingMonoid(3, SumMonoid(2315)) }, Fingerprint { range: Range(793, 868), fp: EncodedCountingMonoid(6, SumMonoid(5006)) }, Fingerprint { range: Range(868, 920), fp: EncodedCountingMonoid(5, SumMonoid(4436)) }, Fingerprint { range: Range(920, 963), fp: EncodedCountingMonoid(5, SumMonoid(4686)) }, Fingerprint { range: Range(963, 1000), fp: EncodedCountingMonoid(4, SumMonoid(3896)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(92, 157), fp: EncodedCountingMonoid(3, SumMonoid(363)) }, Fingerprint { range: Range(351, 382), fp: EncodedCountingMonoid(4, SumMonoid(1472)) }, Fingerprint { range: Range(382, 431), fp: EncodedCountingMonoid(4, SumMonoid(1591)) }, Fingerprint { range: Range(494, 520), fp: EncodedCountingMonoid(3, SumMonoid(1547)) }, Fingerprint { range: Range(542, 584), fp: EncodedCountingMonoid(5, SumMonoid(2771)) }, Fingerprint { range: Range(584, 632), fp: EncodedCountingMonoid(4, SumMonoid(2412)) }, Fingerprint { range: Range(689, 716), fp: EncodedCountingMonoid(5, SumMonoid(3507)) }, Fingerprint { range: Range(716, 760), fp: EncodedCountingMonoid(4, SumMonoid(2928)) }, Fingerprint { range: Range(793, 847), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(3, 20), items: [3, 12], want_response: true }, ItemSet { range: Range(20, 48), items: [20], want_response: true }, ItemSet { range: Range(48, 85), items: [58, 77], want_response: true }, ItemSet { range: Range(85, 92), items: [85, 91], want_response: true }, ItemSet { range: Range(157, 198), items: [157, 192], want_response: true }, ItemSet { range: Range(198, 280), items: [213, 216], want_response: true }, ItemSet { range: Range(280, 351), items: [302, 314], want_response: true }, ItemSet { range: Range(431, 457), items: [431, 449], want_response: true }, ItemSet { range: Range(457, 494), items: [457, 468], want_response: true }, ItemSet { range: Range(520, 542), items: [520, 531], want_response: true }, ItemSet { range: Range(632, 689), items: [664], want_response: true }, ItemSet { range: Range(760, 793), items: [760], want_response: true }, ItemSet { range: Range(847, 868), items: [847, 850], want_response: true }, ItemSet { range: Range(868, 920), items: [902, 917], want_response: true }, ItemSet { range: Range(920, 937), items: [920, 936], want_response: true }, ItemSet { range: Range(937, 963), items: [937], want_response: true }, ItemSet { range: Range(963, 995), items: [966, 974], want_response: true }, ItemSet { range: Range(995, 1000), items: [995], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(92, 111), fp: EncodedCountingMonoid(4, SumMonoid(410)) }, Fingerprint { range: Range(111, 157), fp: EncodedCountingMonoid(3, SumMonoid(347)) }, Fingerprint { range: Range(351, 366), fp: EncodedCountingMonoid(3, SumMonoid(1062)) }, Fingerprint { range: Range(366, 382), fp: EncodedCountingMonoid(3, SumMonoid(1110)) }, Fingerprint { range: Range(542, 566), fp: EncodedCountingMonoid(3, SumMonoid(1663)) }], item_sets: [ItemSet { range: Range(3, 20), items: [3, 4, 8], want_response: false }, ItemSet { range: Range(20, 48), items: [37, 41], want_response: false }, ItemSet { range: Range(48, 85), items: [48, 54, 56, 72, 78], want_response: false }, ItemSet { range: Range(85, 92), items: [], want_response: false }, ItemSet { range: Range(157, 198), items: [171], want_response: false }, ItemSet { range: Range(198, 280), items: [198, 227, 243, 250, 255, 262, 265], want_response: false }, ItemSet { range: Range(280, 351), items: [280, 285, 288, 303, 308, 312, 327, 344], want_response: false }, ItemSet { range: Range(431, 457), items: [432, 450, 451, 453], want_response: false }, ItemSet { range: Range(457, 494), items: [463], want_response: false }, ItemSet { range: Range(520, 542), items: [520, 533], want_response: false }, ItemSet { range: Range(632, 689), items: [632, 635, 660, 671, 677, 680, 685], want_response: false }, ItemSet { range: Range(760, 793), items: [760, 763, 792], want_response: false }, ItemSet { range: Range(847, 868), items: [851, 863], want_response: false }, ItemSet { range: Range(868, 920), items: [868, 880, 883, 886, 919], want_response: false }, ItemSet { range: Range(920, 937), items: [929, 931], want_response: false }, ItemSet { range: Range(937, 963), items: [937, 939, 950], want_response: false }, ItemSet { range: Range(963, 995), items: [963, 966, 968], want_response: false }, ItemSet { range: Range(995, 1000), items: [999], want_response: false }, ItemSet { range: Range(382, 431), items: [408, 414], want_response: true }, ItemSet { range: Range(494, 520), items: [494, 499], want_response: true }, ItemSet { range: Range(566, 584), items: [566, 572], want_response: true }, ItemSet { range: Range(584, 632), items: [620, 623], want_response: true }, ItemSet { range: Range(689, 716), items: [692, 693], want_response: true }, ItemSet { range: Range(716, 760), items: [716, 734], want_response: true }, ItemSet { range: Range(793, 835), items: [793, 824], want_response: true }, ItemSet { range: Range(835, 847), items: [835, 840], want_response: true }], wants: [12, 20, 58, 77, 85, 91, 157, 192, 213, 216, 302, 314, 431, 449, 457, 468, 531, 664, 847, 850, 902, 917, 920, 936, 974, 995], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(382, 431), items: [382, 390, 396, 423], want_response: false }, ItemSet { range: Range(494, 520), items: [514, 516, 517], want_response: false }, ItemSet { range: Range(566, 584), items: [573], want_response: false }, ItemSet { range: Range(584, 632), items: [584, 595, 614, 619], want_response: false }, ItemSet { range: Range(689, 716), items: [689, 691, 702, 710, 715], want_response: false }, ItemSet { range: Range(716, 760), items: [716, 728, 735, 749], want_response: false }, ItemSet { range: Range(793, 835), items: [799, 813, 833], want_response: false }, ItemSet { range: Range(835, 847), items: [], want_response: false }, ItemSet { range: Range(92, 111), items: [92], want_response: true }, ItemSet { range: Range(111, 157), items: [120, 151], want_response: true }, ItemSet { range: Range(351, 366), items: [361, 362], want_response: true }, ItemSet { range: Range(366, 382), items: [368, 381], want_response: true }, ItemSet { range: Range(542, 552), items: [542, 548], want_response: true }, ItemSet { range: Range(552, 566), items: [552, 556], want_response: true }], wants: [4, 8, 37, 41, 48, 54, 56, 72, 78, 171, 198, 227, 243, 250, 255, 262, 265, 280, 285, 288, 303, 308, 312, 327, 344, 432, 450, 451, 453, 463, 533, 632, 635, 660, 671, 677, 680, 685, 763, 792, 851, 863, 868, 880, 883, 886, 919, 929, 931, 939, 950, 963, 968, 999, 408, 414, 494, 499, 566, 572, 620, 623, 692, 693, 734, 793, 824, 835, 840], provide: [(12, true), (20, true), (58, true), (77, true), (85, true), (91, true), (157, true), (192, true), (213, true), (216, true), (302, true), (314, true), (431, true), (449, true), (457, true), (468, true), (531, true), (664, true), (847, true), (850, true), (902, true), (917, true), (920, true), (936, true), (974, true), (995, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(92, 111), items: [99, 100, 103, 108], want_response: false }, ItemSet { range: Range(111, 157), items: [111, 115, 121], want_response: false }, ItemSet { range: Range(351, 366), items: [351, 353, 358], want_response: false }, ItemSet { range: Range(366, 382), items: [366, 369, 375], want_response: false }, ItemSet { range: Range(542, 552), items: [548, 551], want_response: false }, ItemSet { range: Range(552, 566), items: [564], want_response: false }], wants: [382, 390, 396, 423, 514, 516, 517, 573, 584, 595, 614, 619, 689, 691, 702, 710, 715, 728, 735, 749, 799, 813, 833, 92, 120, 151, 361, 362, 368, 381, 542, 552, 556], provide: [(4, true), (8, true), (37, true), (41, true), (48, true), (54, true), (56, true), (72, true), (78, true), (171, true), (198, true), (227, true), (243, true), (250, true), (255, true), (262, true), (265, true), (280, true), (285, true), (288, true), (303, true), (308, true), (312, true), (327, true), (344, true), (432, true), (450, true), (451, true), (453, true), (463, true), (533, true), (632, true), (635, true), (660, true), (671, true), (677, true), (680, true), (685, true), (763, true), (792, true), (851, true), (863, true), (868, true), (880, true), (883, true), (886, true), (919, true), (929, true), (931, true), (939, true), (950, true), (963, true), (968, true), (999, true), (408, true), (414, true), (494, true), (499, true), (566, true), (572, true), (620, true), (623, true), (692, true), (693, true), (734, true), (793, true), (824, true), (835, true), (840, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [99, 100, 103, 108, 111, 115, 121, 351, 353, 358, 366, 369, 375, 551, 564], provide: [(382, true), (390, true), (396, true), (423, true), (514, true), (516, true), (517, true), (573, true), (584, true), (595, true), (614, true), (619, true), (689, true), (691, true), (702, true), (710, true), (715, true), (728, true), (735, true), (749, true), (799, true), (813, true), (833, true), (92, true), (120, true), (151, true), (361, true), (362, true), (368, true), (381, true), (542, true), (552, true), (556, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(99, true), (100, true), (103, true), (108, true), (111, true), (115, true), (121, true), (351, true), (353, true), (358, true), (366, true), (369, true), (375, true), (551, true), (564, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {3, 4, 8, 37, 41, 48, 54, 56, 72, 78, 99, 100, 103, 108, 111, 115, 121, 171, 198, 227, 243, 250, 255, 262, 265, 280, 285, 288, 303, 308, 312, 327, 344, 351, 353, 358, 366, 369, 375, 408, 414, 432, 450, 451, 453, 463, 494, 499, 520, 533, 548, 551, 564, 566, 572, 620, 623, 632, 635, 660, 671, 677, 680, 685, 692, 693, 716, 734, 760, 763, 792, 793, 824, 835, 840, 851, 863, 868, 880, 883, 886, 919, 929, 931, 937, 939, 950, 963, 966, 968, 999} + [12, 20, 58, 77, 85, 91, 157, 192, 213, 216, 302, 314, 431, 449, 457, 468, 531, 664, 847, 850, 902, 917, 920, 936, 974, 995, 382, 390, 396, 423, 514, 516, 517, 573, 584, 595, 614, 619, 689, 691, 702, 710, 715, 728, 735, 749, 799, 813, 833, 92, 120, 151, 361, 362, 368, 381, 542, 552, 556]
[INFO] [stdout] b all: {3, 12, 20, 58, 77, 85, 91, 92, 120, 151, 157, 192, 213, 216, 302, 314, 361, 362, 368, 381, 382, 390, 396, 423, 431, 449, 457, 468, 514, 516, 517, 520, 531, 542, 548, 552, 556, 573, 584, 595, 614, 619, 664, 689, 691, 702, 710, 715, 716, 728, 735, 749, 760, 799, 813, 833, 847, 850, 902, 917, 920, 936, 937, 966, 974, 995} + [4, 8, 37, 41, 48, 54, 56, 72, 78, 171, 198, 227, 243, 250, 255, 262, 265, 280, 285, 288, 303, 308, 312, 327, 344, 432, 450, 451, 453, 463, 533, 632, 635, 660, 671, 677, 680, 685, 763, 792, 851, 863, 868, 880, 883, 886, 919, 929, 931, 939, 950, 963, 968, 999, 408, 414, 494, 499, 566, 572, 620, 623, 692, 693, 734, 793, 824, 835, 840, 99, 100, 103, 108, 111, 115, 121, 351, 353, 358, 366, 369, 375, 551, 564]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [3, 4, 8, 12, 20, 37, 41, 48, 54, 56, 58, 72, 77, 78, 85, 91, 92, 99, 100, 103, 108, 111, 115, 120, 121, 151, 157, 171, 192, 198, 213, 216, 227, 243, 250, 255, 262, 265, 280, 285, 288, 302, 303, 308, 312, 314, 327, 344, 351, 353, 358, 361, 362, 366, 368, 369, 375, 381, 382, 390, 396, 408, 414, 423, 431, 432, 449, 450, 451, 453, 457, 463, 468, 494, 499, 514, 516, 517, 520, 531, 533, 542, 548, 551, 552, 556, 564, 566, 572, 573, 584, 595, 614, 619, 620, 623, 632, 635, 660, 664, 671, 677, 680, 685, 689, 691, 692, 693, 702, 710, 715, 716, 728, 734, 735, 749, 760, 763, 792, 793, 799, 813, 824, 833, 835, 840, 847, 850, 851, 863, 868, 880, 883, 886, 902, 917, 919, 920, 929, 931, 936, 937, 939, 950, 963, 966, 968, 974, 995, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [3, 4, 8, 12, 20, 37, 41, 48, 54, 56, 58, 72, 77, 78, 85, 91, 92, 99, 100, 103, 108, 111, 115, 120, 121, 151, 157, 171, 192, 198, 213, 216, 227, 243, 250, 255, 262, 265, 280, 285, 288, 302, 303, 308, 312, 314, 327, 344, 351, 353, 358, 361, 362, 366, 368, 369, 375, 381, 382, 390, 396, 408, 414, 423, 431, 432, 449, 450, 451, 453, 457, 463, 468, 494, 499, 514, 516, 517, 520, 531, 533, 542, 548, 551, 552, 556, 564, 566, 572, 573, 584, 595, 614, 619, 620, 623, 632, 635, 660, 664, 671, 677, 680, 685, 689, 691, 692, 693, 702, 710, 715, 716, 728, 734, 735, 749, 760, 763, 792, 793, 799, 813, 824, 833, 835, 840, 847, 850, 851, 863, 868, 880, 883, 886, 902, 917, 919, 920, 929, 931, 936, 937, 939, 950, 963, 966, 968, 974, 995, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [3, 4, 8, 12, 20, 37, 41, 48, 54, 56, 58, 72, 77, 78, 85, 91, 92, 99, 100, 103, 108, 111, 115, 120, 121, 151, 157, 171, 192, 198, 213, 216, 227, 243, 250, 255, 262, 265, 280, 285, 288, 302, 303, 308, 312, 314, 327, 344, 351, 353, 358, 361, 362, 366, 368, 369, 375, 381, 382, 390, 396, 408, 414, 423, 431, 432, 449, 450, 451, 453, 457, 463, 468, 494, 499, 514, 516, 517, 520, 531, 533, 542, 548, 551, 552, 556, 564, 566, 572, 573, 584, 595, 614, 619, 620, 623, 632, 635, 660, 664, 671, 677, 680, 685, 689, 691, 692, 693, 702, 710, 715, 716, 728, 734, 735, 749, 760, 763, 792, 793, 799, 813, 824, 833, 835, 840, 847, 850, 851, 863, 868, 880, 883, 886, 902, 917, 919, 920, 929, 931, 936, 937, 939, 950, 963, 966, 968, 974, 995, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {17, 25, 41, 42, 56, 58, 60, 75, 76, 90, 116, 124, 126, 133, 138, 147, 162, 163, 185, 191, 221, 224, 236, 245, 246, 269, 278, 295, 303, 313, 317, 329, 338, 359, 425, 440, 448, 459, 464, 472, 474, 475, 489, 504, 516, 522, 523, 535, 536, 537, 547, 550, 566, 576, 585, 597, 615, 635, 637, 646, 664, 681, 699, 701, 718, 738, 755, 756, 757, 766, 785, 813, 830, 832, 847, 848, 854, 878, 882, 893, 897, 905, 914, 917, 940, 943, 952, 972, 983, 987}
[INFO] [stdout] b items: {21, 90, 100, 104, 107, 117, 118, 125, 152, 155, 158, 167, 174, 196, 199, 203, 205, 209, 232, 247, 259, 301, 303, 305, 352, 355, 362, 398, 402, 416, 421, 424, 428, 459, 462, 482, 487, 524, 540, 580, 587, 593, 597, 604, 607, 610, 623, 638, 641, 658, 660, 667, 672, 680, 693, 711, 714, 716, 719, 743, 764, 783, 794, 813, 814, 817, 819, 839, 856, 860, 864, 899, 900, 903, 912, 914, 938, 960, 962, 980, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 988), fp: EncodedCountingMonoid(90, SumMonoid(44878)) }], item_sets: [ItemSet { range: Range(988, 17), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 587), fp: EncodedCountingMonoid(40, SumMonoid(11339)) }, Fingerprint { range: Range(587, 988), fp: EncodedCountingMonoid(40, SumMonoid(30524)) }], item_sets: [ItemSet { range: Range(988, 17), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 303), fp: EncodedCountingMonoid(28, SumMonoid(4039)) }, Fingerprint { range: Range(303, 587), fp: EncodedCountingMonoid(27, SumMonoid(12602)) }, Fingerprint { range: Range(587, 832), fp: EncodedCountingMonoid(18, SumMonoid(12793)) }, Fingerprint { range: Range(832, 988), fp: EncodedCountingMonoid(17, SumMonoid(15444)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(17, 167), fp: EncodedCountingMonoid(11, SumMonoid(1247)) }, Fingerprint { range: Range(167, 303), fp: EncodedCountingMonoid(11, SumMonoid(2392)) }, Fingerprint { range: Range(303, 424), fp: EncodedCountingMonoid(9, SumMonoid(3314)) }, Fingerprint { range: Range(424, 587), fp: EncodedCountingMonoid(9, SumMonoid(4386)) }, Fingerprint { range: Range(587, 693), fp: EncodedCountingMonoid(14, SumMonoid(8837)) }, Fingerprint { range: Range(693, 832), fp: EncodedCountingMonoid(13, SumMonoid(9900)) }, Fingerprint { range: Range(832, 912), fp: EncodedCountingMonoid(7, SumMonoid(6121)) }, Fingerprint { range: Range(912, 988), fp: EncodedCountingMonoid(6, SumMonoid(5666)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(17, 90), fp: EncodedCountingMonoid(9, SumMonoid(450)) }, Fingerprint { range: Range(90, 167), fp: EncodedCountingMonoid(9, SumMonoid(1199)) }, Fingerprint { range: Range(167, 245), fp: EncodedCountingMonoid(5, SumMonoid(1057)) }, Fingerprint { range: Range(245, 303), fp: EncodedCountingMonoid(5, SumMonoid(1333)) }, Fingerprint { range: Range(303, 329), fp: EncodedCountingMonoid(3, SumMonoid(933)) }, Fingerprint { range: Range(329, 424), fp: EncodedCountingMonoid(3, SumMonoid(1026)) }, Fingerprint { range: Range(424, 522), fp: EncodedCountingMonoid(11, SumMonoid(5166)) }, Fingerprint { range: Range(522, 587), fp: EncodedCountingMonoid(10, SumMonoid(5477)) }, Fingerprint { range: Range(587, 646), fp: EncodedCountingMonoid(4, SumMonoid(2484)) }, Fingerprint { range: Range(646, 693), fp: EncodedCountingMonoid(3, SumMonoid(1991)) }, Fingerprint { range: Range(693, 757), fp: EncodedCountingMonoid(6, SumMonoid(4367)) }, Fingerprint { range: Range(757, 832), fp: EncodedCountingMonoid(5, SumMonoid(3951)) }, Fingerprint { range: Range(832, 882), fp: EncodedCountingMonoid(5, SumMonoid(4259)) }, Fingerprint { range: Range(882, 912), fp: EncodedCountingMonoid(4, SumMonoid(3577)) }, Fingerprint { range: Range(912, 952), fp: EncodedCountingMonoid(4, SumMonoid(3714)) }, Fingerprint { range: Range(952, 988), fp: EncodedCountingMonoid(4, SumMonoid(3894)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(90, 118), fp: EncodedCountingMonoid(5, SumMonoid(518)) }, Fingerprint { range: Range(118, 167), fp: EncodedCountingMonoid(5, SumMonoid(708)) }, Fingerprint { range: Range(167, 203), fp: EncodedCountingMonoid(4, SumMonoid(736)) }, Fingerprint { range: Range(203, 245), fp: EncodedCountingMonoid(4, SumMonoid(849)) }, Fingerprint { range: Range(329, 402), fp: EncodedCountingMonoid(4, SumMonoid(1467)) }, Fingerprint { range: Range(402, 424), fp: EncodedCountingMonoid(3, SumMonoid(1239)) }, Fingerprint { range: Range(424, 462), fp: EncodedCountingMonoid(3, SumMonoid(1311)) }, Fingerprint { range: Range(462, 522), fp: EncodedCountingMonoid(3, SumMonoid(1431)) }, Fingerprint { range: Range(587, 610), fp: EncodedCountingMonoid(5, SumMonoid(2988)) }, Fingerprint { range: Range(610, 646), fp: EncodedCountingMonoid(4, SumMonoid(2512)) }, Fingerprint { range: Range(646, 672), fp: EncodedCountingMonoid(3, SumMonoid(1985)) }, Fingerprint { range: Range(693, 716), fp: EncodedCountingMonoid(3, SumMonoid(2118)) }, Fingerprint { range: Range(716, 757), fp: EncodedCountingMonoid(3, SumMonoid(2178)) }, Fingerprint { range: Range(757, 814), fp: EncodedCountingMonoid(4, SumMonoid(3154)) }, Fingerprint { range: Range(814, 832), fp: EncodedCountingMonoid(3, SumMonoid(2450)) }], item_sets: [ItemSet { range: Range(17, 90), items: [21], want_response: true }, ItemSet { range: Range(245, 301), items: [247, 259], want_response: true }, ItemSet { range: Range(301, 303), items: [301], want_response: true }, ItemSet { range: Range(303, 329), items: [303, 305], want_response: true }, ItemSet { range: Range(522, 580), items: [524, 540], want_response: true }, ItemSet { range: Range(580, 587), items: [580], want_response: true }, ItemSet { range: Range(672, 693), items: [672, 680], want_response: true }, ItemSet { range: Range(832, 860), items: [839, 856], want_response: true }, ItemSet { range: Range(860, 882), items: [860, 864], want_response: true }, ItemSet { range: Range(882, 903), items: [899, 900], want_response: true }, ItemSet { range: Range(903, 912), items: [903], want_response: true }, ItemSet { range: Range(912, 938), items: [912, 914], want_response: true }, ItemSet { range: Range(938, 952), items: [938], want_response: true }, ItemSet { range: Range(952, 980), items: [960, 962], want_response: true }, ItemSet { range: Range(980, 988), items: [980], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(118, 147), fp: EncodedCountingMonoid(4, SumMonoid(521)) }, Fingerprint { range: Range(147, 167), fp: EncodedCountingMonoid(3, SumMonoid(472)) }, Fingerprint { range: Range(462, 489), fp: EncodedCountingMonoid(4, SumMonoid(1885)) }, Fingerprint { range: Range(489, 522), fp: EncodedCountingMonoid(3, SumMonoid(1509)) }], item_sets: [ItemSet { range: Range(17, 90), items: [17, 25, 41, 42, 56, 58, 60, 75, 76], want_response: false }, ItemSet { range: Range(245, 301), items: [245, 246, 269, 278, 295], want_response: false }, ItemSet { range: Range(301, 303), items: [], want_response: false }, ItemSet { range: Range(303, 329), items: [303, 313, 317], want_response: false }, ItemSet { range: Range(522, 580), items: [522, 523, 535, 536, 537, 547, 550, 566, 576], want_response: false }, ItemSet { range: Range(580, 587), items: [585], want_response: false }, ItemSet { range: Range(672, 693), items: [681], want_response: false }, ItemSet { range: Range(832, 860), items: [832, 847, 848, 854], want_response: false }, ItemSet { range: Range(860, 882), items: [878], want_response: false }, ItemSet { range: Range(882, 903), items: [882, 893, 897], want_response: false }, ItemSet { range: Range(903, 912), items: [905], want_response: false }, ItemSet { range: Range(912, 938), items: [914, 917], want_response: false }, ItemSet { range: Range(938, 952), items: [940, 943], want_response: false }, ItemSet { range: Range(952, 980), items: [952, 972], want_response: false }, ItemSet { range: Range(980, 988), items: [983, 987], want_response: false }, ItemSet { range: Range(90, 118), items: [90, 116], want_response: true }, ItemSet { range: Range(167, 203), items: [185, 191], want_response: true }, ItemSet { range: Range(203, 236), items: [221, 224], want_response: true }, ItemSet { range: Range(236, 245), items: [236], want_response: true }, ItemSet { range: Range(329, 359), items: [329, 338], want_response: true }, ItemSet { range: Range(359, 402), items: [359], want_response: true }, ItemSet { range: Range(402, 424), items: [], want_response: true }, ItemSet { range: Range(424, 448), items: [425, 440], want_response: true }, ItemSet { range: Range(448, 462), items: [448, 459], want_response: true }, ItemSet { range: Range(587, 610), items: [597], want_response: true }, ItemSet { range: Range(610, 637), items: [615, 635], want_response: true }, ItemSet { range: Range(637, 646), items: [637], want_response: true }, ItemSet { range: Range(646, 672), items: [646, 664], want_response: true }, ItemSet { range: Range(693, 716), items: [699, 701], want_response: true }, ItemSet { range: Range(716, 755), items: [718, 738], want_response: true }, ItemSet { range: Range(755, 757), items: [755, 756], want_response: true }, ItemSet { range: Range(757, 785), items: [757, 766], want_response: true }, ItemSet { range: Range(785, 814), items: [785, 813], want_response: true }, ItemSet { range: Range(814, 832), items: [830], want_response: true }], wants: [21, 247, 259, 301, 305, 524, 540, 580, 672, 680, 839, 856, 860, 864, 899, 900, 903, 912, 938, 960, 962, 980], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(90, 118), items: [90, 100, 104, 107, 117], want_response: false }, ItemSet { range: Range(167, 203), items: [167, 174, 196, 199], want_response: false }, ItemSet { range: Range(203, 236), items: [203, 205, 209, 232], want_response: false }, ItemSet { range: Range(236, 245), items: [], want_response: false }, ItemSet { range: Range(329, 359), items: [352, 355], want_response: false }, ItemSet { range: Range(359, 402), items: [362, 398], want_response: false }, ItemSet { range: Range(402, 424), items: [402, 416, 421], want_response: false }, ItemSet { range: Range(424, 448), items: [424, 428], want_response: false }, ItemSet { range: Range(448, 462), items: [459], want_response: false }, ItemSet { range: Range(587, 610), items: [587, 593, 597, 604, 607], want_response: false }, ItemSet { range: Range(610, 637), items: [610, 623], want_response: false }, ItemSet { range: Range(637, 646), items: [638, 641], want_response: false }, ItemSet { range: Range(646, 672), items: [658, 660, 667], want_response: false }, ItemSet { range: Range(693, 716), items: [693, 711, 714], want_response: false }, ItemSet { range: Range(716, 755), items: [716, 719, 743], want_response: false }, ItemSet { range: Range(755, 757), items: [], want_response: false }, ItemSet { range: Range(757, 785), items: [764, 783], want_response: false }, ItemSet { range: Range(785, 814), items: [794, 813], want_response: false }, ItemSet { range: Range(814, 832), items: [814, 817, 819], want_response: false }, ItemSet { range: Range(118, 147), items: [118, 125], want_response: true }, ItemSet { range: Range(147, 158), items: [152, 155], want_response: true }, ItemSet { range: Range(158, 167), items: [158], want_response: true }, ItemSet { range: Range(462, 487), items: [462, 482], want_response: true }, ItemSet { range: Range(487, 489), items: [487], want_response: true }, ItemSet { range: Range(489, 522), items: [], want_response: true }], wants: [17, 25, 41, 42, 56, 58, 60, 75, 76, 245, 246, 269, 278, 295, 313, 317, 522, 523, 535, 536, 537, 547, 550, 566, 576, 585, 681, 832, 847, 848, 854, 878, 882, 893, 897, 905, 917, 940, 943, 952, 972, 983, 987, 116, 185, 191, 221, 224, 236, 329, 338, 359, 425, 440, 448, 615, 635, 637, 646, 664, 699, 701, 718, 738, 755, 756, 757, 766, 785, 830], provide: [(21, true), (247, true), (259, true), (301, true), (305, true), (524, true), (540, true), (580, true), (672, true), (680, true), (839, true), (856, true), (860, true), (864, true), (899, true), (900, true), (903, true), (912, true), (938, true), (960, true), (962, true), (980, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(118, 147), items: [124, 126, 133, 138], want_response: false }, ItemSet { range: Range(147, 158), items: [147], want_response: false }, ItemSet { range: Range(158, 167), items: [162, 163], want_response: false }, ItemSet { range: Range(462, 487), items: [464, 472, 474, 475], want_response: false }, ItemSet { range: Range(487, 489), items: [], want_response: false }, ItemSet { range: Range(489, 522), items: [489, 504, 516], want_response: false }], wants: [100, 104, 107, 117, 167, 174, 196, 199, 203, 205, 209, 232, 352, 355, 362, 398, 402, 416, 421, 424, 428, 587, 593, 604, 607, 610, 623, 638, 641, 658, 660, 667, 693, 711, 714, 716, 719, 743, 764, 783, 794, 814, 817, 819, 118, 125, 152, 155, 158, 462, 482, 487], provide: [(17, true), (25, true), (41, true), (42, true), (56, true), (58, true), (60, true), (75, true), (76, true), (245, true), (246, true), (269, true), (278, true), (295, true), (313, true), (317, true), (522, true), (523, true), (535, true), (536, true), (537, true), (547, true), (550, true), (566, true), (576, true), (585, true), (681, true), (832, true), (847, true), (848, true), (854, true), (878, true), (882, true), (893, true), (897, true), (905, true), (917, true), (940, true), (943, true), (952, true), (972, true), (983, true), (987, true), (116, true), (185, true), (191, true), (221, true), (224, true), (236, true), (329, true), (338, true), (359, true), (425, true), (440, true), (448, true), (615, true), (635, true), (637, true), (646, true), (664, true), (699, true), (701, true), (718, true), (738, true), (755, true), (756, true), (757, true), (766, true), (785, true), (830, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [124, 126, 133, 138, 147, 162, 163, 464, 472, 474, 475, 489, 504, 516], provide: [(100, true), (104, true), (107, true), (117, true), (167, true), (174, true), (196, true), (199, true), (203, true), (205, true), (209, true), (232, true), (352, true), (355, true), (362, true), (398, true), (402, true), (416, true), (421, true), (424, true), (428, true), (587, true), (593, true), (604, true), (607, true), (610, true), (623, true), (638, true), (641, true), (658, true), (660, true), (667, true), (693, true), (711, true), (714, true), (716, true), (719, true), (743, true), (764, true), (783, true), (794, true), (814, true), (817, true), (819, true), (118, true), (125, true), (152, true), (155, true), (158, true), (462, true), (482, true), (487, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(124, true), (126, true), (133, true), (138, true), (147, true), (162, true), (163, true), (464, true), (472, true), (474, true), (475, true), (489, true), (504, true), (516, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {17, 25, 41, 42, 56, 58, 60, 75, 76, 90, 116, 124, 126, 133, 138, 147, 162, 163, 185, 191, 221, 224, 236, 245, 246, 269, 278, 295, 303, 313, 317, 329, 338, 359, 425, 440, 448, 459, 464, 472, 474, 475, 489, 504, 516, 522, 523, 535, 536, 537, 547, 550, 566, 576, 585, 597, 615, 635, 637, 646, 664, 681, 699, 701, 718, 738, 755, 756, 757, 766, 785, 813, 830, 832, 847, 848, 854, 878, 882, 893, 897, 905, 914, 917, 940, 943, 952, 972, 983, 987} + [993, 21, 247, 259, 301, 305, 524, 540, 580, 672, 680, 839, 856, 860, 864, 899, 900, 903, 912, 938, 960, 962, 980, 100, 104, 107, 117, 167, 174, 196, 199, 203, 205, 209, 232, 352, 355, 362, 398, 402, 416, 421, 424, 428, 587, 593, 604, 607, 610, 623, 638, 641, 658, 660, 667, 693, 711, 714, 716, 719, 743, 764, 783, 794, 814, 817, 819, 118, 125, 152, 155, 158, 462, 482, 487]
[INFO] [stdout] b all: {21, 90, 100, 104, 107, 117, 118, 125, 152, 155, 158, 167, 174, 196, 199, 203, 205, 209, 232, 247, 259, 301, 303, 305, 352, 355, 362, 398, 402, 416, 421, 424, 428, 459, 462, 482, 487, 524, 540, 580, 587, 593, 597, 604, 607, 610, 623, 638, 641, 658, 660, 667, 672, 680, 693, 711, 714, 716, 719, 743, 764, 783, 794, 813, 814, 817, 819, 839, 856, 860, 864, 899, 900, 903, 912, 914, 938, 960, 962, 980, 993} + [17, 25, 41, 42, 56, 58, 60, 75, 76, 245, 246, 269, 278, 295, 313, 317, 522, 523, 535, 536, 537, 547, 550, 566, 576, 585, 681, 832, 847, 848, 854, 878, 882, 893, 897, 905, 917, 940, 943, 952, 972, 983, 987, 116, 185, 191, 221, 224, 236, 329, 338, 359, 425, 440, 448, 615, 635, 637, 646, 664, 699, 701, 718, 738, 755, 756, 757, 766, 785, 830, 124, 126, 133, 138, 147, 162, 163, 464, 472, 474, 475, 489, 504, 516]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [17, 21, 25, 41, 42, 56, 58, 60, 75, 76, 90, 100, 104, 107, 116, 117, 118, 124, 125, 126, 133, 138, 147, 152, 155, 158, 162, 163, 167, 174, 185, 191, 196, 199, 203, 205, 209, 221, 224, 232, 236, 245, 246, 247, 259, 269, 278, 295, 301, 303, 305, 313, 317, 329, 338, 352, 355, 359, 362, 398, 402, 416, 421, 424, 425, 428, 440, 448, 459, 462, 464, 472, 474, 475, 482, 487, 489, 504, 516, 522, 523, 524, 535, 536, 537, 540, 547, 550, 566, 576, 580, 585, 587, 593, 597, 604, 607, 610, 615, 623, 635, 637, 638, 641, 646, 658, 660, 664, 667, 672, 680, 681, 693, 699, 701, 711, 714, 716, 718, 719, 738, 743, 755, 756, 757, 764, 766, 783, 785, 794, 813, 814, 817, 819, 830, 832, 839, 847, 848, 854, 856, 860, 864, 878, 882, 893, 897, 899, 900, 903, 905, 912, 914, 917, 938, 940, 943, 952, 960, 962, 972, 980, 983, 987, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [17, 21, 25, 41, 42, 56, 58, 60, 75, 76, 90, 100, 104, 107, 116, 117, 118, 124, 125, 126, 133, 138, 147, 152, 155, 158, 162, 163, 167, 174, 185, 191, 196, 199, 203, 205, 209, 221, 224, 232, 236, 245, 246, 247, 259, 269, 278, 295, 301, 303, 305, 313, 317, 329, 338, 352, 355, 359, 362, 398, 402, 416, 421, 424, 425, 428, 440, 448, 459, 462, 464, 472, 474, 475, 482, 487, 489, 504, 516, 522, 523, 524, 535, 536, 537, 540, 547, 550, 566, 576, 580, 585, 587, 593, 597, 604, 607, 610, 615, 623, 635, 637, 638, 641, 646, 658, 660, 664, 667, 672, 680, 681, 693, 699, 701, 711, 714, 716, 718, 719, 738, 743, 755, 756, 757, 764, 766, 783, 785, 794, 813, 814, 817, 819, 830, 832, 839, 847, 848, 854, 856, 860, 864, 878, 882, 893, 897, 899, 900, 903, 905, 912, 914, 917, 938, 940, 943, 952, 960, 962, 972, 980, 983, 987, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [17, 21, 25, 41, 42, 56, 58, 60, 75, 76, 90, 100, 104, 107, 116, 117, 118, 124, 125, 126, 133, 138, 147, 152, 155, 158, 162, 163, 167, 174, 185, 191, 196, 199, 203, 205, 209, 221, 224, 232, 236, 245, 246, 247, 259, 269, 278, 295, 301, 303, 305, 313, 317, 329, 338, 352, 355, 359, 362, 398, 402, 416, 421, 424, 425, 428, 440, 448, 459, 462, 464, 472, 474, 475, 482, 487, 489, 504, 516, 522, 523, 524, 535, 536, 537, 540, 547, 550, 566, 576, 580, 585, 587, 593, 597, 604, 607, 610, 615, 623, 635, 637, 638, 641, 646, 658, 660, 664, 667, 672, 680, 681, 693, 699, 701, 711, 714, 716, 718, 719, 738, 743, 755, 756, 757, 764, 766, 783, 785, 794, 813, 814, 817, 819, 830, 832, 839, 847, 848, 854, 856, 860, 864, 878, 882, 893, 897, 899, 900, 903, 905, 912, 914, 917, 938, 940, 943, 952, 960, 962, 972, 980, 983, 987, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {30, 79, 111, 429, 454, 534, 709, 816, 939}
[INFO] [stdout] b items: {4, 8, 26, 45, 55, 76, 95, 103, 105, 140, 141, 147, 170, 182, 198, 207, 224, 228, 229, 244, 255, 261, 263, 273, 280, 289, 295, 305, 316, 320, 334, 350, 371, 372, 376, 385, 390, 400, 403, 420, 423, 433, 453, 466, 483, 487, 490, 491, 495, 499, 501, 503, 504, 529, 539, 560, 590, 596, 603, 621, 631, 632, 654, 671, 723, 748, 761, 775, 781, 805, 813, 872, 881, 900, 904, 915, 927, 939, 949, 952, 960, 966, 972, 973, 975, 981, 986, 995, 997}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(30, 940), fp: EncodedCountingMonoid(9, SumMonoid(4101)) }], item_sets: [ItemSet { range: Range(940, 30), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(30, 433), fp: EncodedCountingMonoid(38, SumMonoid(9670)) }, Fingerprint { range: Range(433, 940), fp: EncodedCountingMonoid(37, SumMonoid(24175)) }], item_sets: [ItemSet { range: Range(940, 30), items: [949, 952, 960, 966, 972, 973, 975, 981, 986, 995, 997, 4, 8, 26], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(433, 816), fp: EncodedCountingMonoid(3, SumMonoid(1697)) }], item_sets: [ItemSet { range: Range(30, 111), items: [30, 79], want_response: true }, ItemSet { range: Range(111, 433), items: [111, 429], want_response: true }, ItemSet { range: Range(816, 940), items: [816, 939], want_response: true }], wants: [949, 952, 960, 966, 972, 973, 975, 981, 986, 995, 997, 4, 8, 26], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(433, 590), fp: EncodedCountingMonoid(15, SumMonoid(7433)) }, Fingerprint { range: Range(590, 816), fp: EncodedCountingMonoid(15, SumMonoid(10404)) }], item_sets: [ItemSet { range: Range(30, 111), items: [45, 55, 76, 95, 103, 105], want_response: false }, ItemSet { range: Range(111, 433), items: [140, 141, 147, 170, 182, 198, 207, 224, 228, 229, 244, 255, 261, 263, 273, 280, 289, 295, 305, 316, 320, 334, 350, 371, 372, 376, 385, 390, 400, 403, 420, 423], want_response: false }, ItemSet { range: Range(816, 940), items: [872, 881, 900, 904, 915, 927, 939], want_response: false }], wants: [30, 79, 111, 429, 816], provide: [(949, true), (952, true), (960, true), (966, true), (972, true), (973, true), (975, true), (981, true), (986, true), (995, true), (997, true), (4, true), (8, true), (26, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(433, 590), items: [454, 534], want_response: true }, ItemSet { range: Range(590, 816), items: [709], want_response: true }], wants: [45, 55, 76, 95, 103, 105, 140, 141, 147, 170, 182, 198, 207, 224, 228, 229, 244, 255, 261, 263, 273, 280, 289, 295, 305, 316, 320, 334, 350, 371, 372, 376, 385, 390, 400, 403, 420, 423, 872, 881, 900, 904, 915, 927], provide: [(30, true), (79, true), (111, true), (429, true), (816, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(433, 590), items: [433, 453, 466, 483, 487, 490, 491, 495, 499, 501, 503, 504, 529, 539, 560], want_response: false }, ItemSet { range: Range(590, 816), items: [590, 596, 603, 621, 631, 632, 654, 671, 723, 748, 761, 775, 781, 805, 813], want_response: false }], wants: [454, 534, 709], provide: [(45, true), (55, true), (76, true), (95, true), (103, true), (105, true), (140, true), (141, true), (147, true), (170, true), (182, true), (198, true), (207, true), (224, true), (228, true), (229, true), (244, true), (255, true), (261, true), (263, true), (273, true), (280, true), (289, true), (295, true), (305, true), (316, true), (320, true), (334, true), (350, true), (371, true), (372, true), (376, true), (385, true), (390, true), (400, true), (403, true), (420, true), (423, true), (872, true), (881, true), (900, true), (904, true), (915, true), (927, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [433, 453, 466, 483, 487, 490, 491, 495, 499, 501, 503, 504, 529, 539, 560, 590, 596, 603, 621, 631, 632, 654, 671, 723, 748, 761, 775, 781, 805, 813], provide: [(454, true), (534, true), (709, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(433, true), (453, true), (466, true), (483, true), (487, true), (490, true), (491, true), (495, true), (499, true), (501, true), (503, true), (504, true), (529, true), (539, true), (560, true), (590, true), (596, true), (603, true), (621, true), (631, true), (632, true), (654, true), (671, true), (723, true), (748, true), (761, true), (775, true), (781, true), (805, true), (813, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {30, 79, 111, 429, 454, 534, 709, 816, 939} + [949, 952, 960, 966, 972, 973, 975, 981, 986, 995, 997, 4, 8, 26, 45, 55, 76, 95, 103, 105, 140, 141, 147, 170, 182, 198, 207, 224, 228, 229, 244, 255, 261, 263, 273, 280, 289, 295, 305, 316, 320, 334, 350, 371, 372, 376, 385, 390, 400, 403, 420, 423, 872, 881, 900, 904, 915, 927, 433, 453, 466, 483, 487, 490, 491, 495, 499, 501, 503, 504, 529, 539, 560, 590, 596, 603, 621, 631, 632, 654, 671, 723, 748, 761, 775, 781, 805, 813]
[INFO] [stdout] b all: {4, 8, 26, 45, 55, 76, 95, 103, 105, 140, 141, 147, 170, 182, 198, 207, 224, 228, 229, 244, 255, 261, 263, 273, 280, 289, 295, 305, 316, 320, 334, 350, 371, 372, 376, 385, 390, 400, 403, 420, 423, 433, 453, 466, 483, 487, 490, 491, 495, 499, 501, 503, 504, 529, 539, 560, 590, 596, 603, 621, 631, 632, 654, 671, 723, 748, 761, 775, 781, 805, 813, 872, 881, 900, 904, 915, 927, 939, 949, 952, 960, 966, 972, 973, 975, 981, 986, 995, 997} + [30, 79, 111, 429, 816, 454, 534, 709]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [4, 8, 26, 30, 45, 55, 76, 79, 95, 103, 105, 111, 140, 141, 147, 170, 182, 198, 207, 224, 228, 229, 244, 255, 261, 263, 273, 280, 289, 295, 305, 316, 320, 334, 350, 371, 372, 376, 385, 390, 400, 403, 420, 423, 429, 433, 453, 454, 466, 483, 487, 490, 491, 495, 499, 501, 503, 504, 529, 534, 539, 560, 590, 596, 603, 621, 631, 632, 654, 671, 709, 723, 748, 761, 775, 781, 805, 813, 816, 872, 881, 900, 904, 915, 927, 939, 949, 952, 960, 966, 972, 973, 975, 981, 986, 995, 997]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [4, 8, 26, 30, 45, 55, 76, 79, 95, 103, 105, 111, 140, 141, 147, 170, 182, 198, 207, 224, 228, 229, 244, 255, 261, 263, 273, 280, 289, 295, 305, 316, 320, 334, 350, 371, 372, 376, 385, 390, 400, 403, 420, 423, 429, 433, 453, 454, 466, 483, 487, 490, 491, 495, 499, 501, 503, 504, 529, 534, 539, 560, 590, 596, 603, 621, 631, 632, 654, 671, 709, 723, 748, 761, 775, 781, 805, 813, 816, 872, 881, 900, 904, 915, 927, 939, 949, 952, 960, 966, 972, 973, 975, 981, 986, 995, 997], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [4, 8, 26, 30, 45, 55, 76, 79, 95, 103, 105, 111, 140, 141, 147, 170, 182, 198, 207, 224, 228, 229, 244, 255, 261, 263, 273, 280, 289, 295, 305, 316, 320, 334, 350, 371, 372, 376, 385, 390, 400, 403, 420, 423, 429, 433, 453, 454, 466, 483, 487, 490, 491, 495, 499, 501, 503, 504, 529, 534, 539, 560, 590, 596, 603, 621, 631, 632, 654, 671, 709, 723, 748, 761, 775, 781, 805, 813, 816, 872, 881, 900, 904, 915, 927, 939, 949, 952, 960, 966, 972, 973, 975, 981, 986, 995, 997], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {7, 28, 60, 71, 83, 99, 117, 134, 145, 182, 187, 203, 219, 225, 241, 254, 267, 279, 321, 384, 388, 396, 399, 421, 446, 448, 454, 456, 488, 506, 533, 537, 544, 545, 547, 569, 584, 587, 609, 618, 660, 661, 666, 675, 697, 703, 718, 727, 748, 764, 794, 807, 842, 889, 893, 896, 941, 950, 992, 994}
[INFO] [stdout] b items: {38, 65, 69, 74, 76, 99, 131, 168, 204, 207, 212, 238, 273, 315, 329, 389, 399, 416, 420, 562, 570, 591, 608, 614, 635, 643, 705, 712, 754, 772, 864, 902, 971, 976, 985}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 995), fp: EncodedCountingMonoid(60, SumMonoid(29598)) }], item_sets: [ItemSet { range: Range(995, 7), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 420), fp: EncodedCountingMonoid(18, SumMonoid(3702)) }, Fingerprint { range: Range(420, 995), fp: EncodedCountingMonoid(17, SumMonoid(12284)) }], item_sets: [ItemSet { range: Range(995, 7), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 219), fp: EncodedCountingMonoid(12, SumMonoid(1316)) }, Fingerprint { range: Range(219, 420), fp: EncodedCountingMonoid(11, SumMonoid(3373)) }, Fingerprint { range: Range(420, 666), fp: EncodedCountingMonoid(19, SumMonoid(10213)) }, Fingerprint { range: Range(666, 995), fp: EncodedCountingMonoid(18, SumMonoid(14696)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 131), fp: EncodedCountingMonoid(6, SumMonoid(421)) }, Fingerprint { range: Range(131, 219), fp: EncodedCountingMonoid(5, SumMonoid(922)) }, Fingerprint { range: Range(219, 389), fp: EncodedCountingMonoid(4, SumMonoid(1155)) }, Fingerprint { range: Range(389, 420), fp: EncodedCountingMonoid(3, SumMonoid(1204)) }, Fingerprint { range: Range(420, 608), fp: EncodedCountingMonoid(4, SumMonoid(2143)) }, Fingerprint { range: Range(608, 666), fp: EncodedCountingMonoid(4, SumMonoid(2500)) }, Fingerprint { range: Range(666, 902), fp: EncodedCountingMonoid(5, SumMonoid(3807)) }, Fingerprint { range: Range(902, 995), fp: EncodedCountingMonoid(4, SumMonoid(3834)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 83), fp: EncodedCountingMonoid(4, SumMonoid(166)) }, Fingerprint { range: Range(83, 131), fp: EncodedCountingMonoid(3, SumMonoid(299)) }, Fingerprint { range: Range(131, 187), fp: EncodedCountingMonoid(3, SumMonoid(461)) }, Fingerprint { range: Range(219, 279), fp: EncodedCountingMonoid(5, SumMonoid(1206)) }, Fingerprint { range: Range(279, 389), fp: EncodedCountingMonoid(4, SumMonoid(1372)) }, Fingerprint { range: Range(420, 537), fp: EncodedCountingMonoid(8, SumMonoid(3752)) }, Fingerprint { range: Range(537, 608), fp: EncodedCountingMonoid(7, SumMonoid(3913)) }, Fingerprint { range: Range(666, 764), fp: EncodedCountingMonoid(7, SumMonoid(4934)) }, Fingerprint { range: Range(764, 902), fp: EncodedCountingMonoid(7, SumMonoid(5885)) }], item_sets: [ItemSet { range: Range(187, 219), items: [187, 203], want_response: true }, ItemSet { range: Range(389, 420), items: [396, 399], want_response: true }, ItemSet { range: Range(608, 660), items: [609, 618], want_response: true }, ItemSet { range: Range(660, 666), items: [660, 661], want_response: true }, ItemSet { range: Range(902, 992), items: [941, 950], want_response: true }, ItemSet { range: Range(992, 995), items: [992, 994], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 74), fp: EncodedCountingMonoid(3, SumMonoid(172)) }], item_sets: [ItemSet { range: Range(187, 219), items: [204, 207, 212], want_response: false }, ItemSet { range: Range(389, 420), items: [389, 399, 416], want_response: false }, ItemSet { range: Range(608, 660), items: [608, 614, 635, 643], want_response: false }, ItemSet { range: Range(660, 666), items: [], want_response: false }, ItemSet { range: Range(902, 992), items: [902, 971, 976, 985], want_response: false }, ItemSet { range: Range(992, 995), items: [], want_response: false }, ItemSet { range: Range(74, 83), items: [74, 76], want_response: true }, ItemSet { range: Range(83, 131), items: [99], want_response: true }, ItemSet { range: Range(131, 187), items: [131, 168], want_response: true }, ItemSet { range: Range(219, 279), items: [238, 273], want_response: true }, ItemSet { range: Range(279, 389), items: [315, 329], want_response: true }, ItemSet { range: Range(420, 537), items: [420], want_response: true }, ItemSet { range: Range(537, 591), items: [562, 570], want_response: true }, ItemSet { range: Range(591, 608), items: [591], want_response: true }, ItemSet { range: Range(666, 754), items: [705, 712], want_response: true }, ItemSet { range: Range(754, 764), items: [754], want_response: true }, ItemSet { range: Range(764, 902), items: [772, 864], want_response: true }], wants: [187, 203, 396, 609, 618, 660, 661, 941, 950, 992, 994], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(74, 83), items: [], want_response: false }, ItemSet { range: Range(83, 131), items: [83, 99, 117], want_response: false }, ItemSet { range: Range(131, 187), items: [134, 145, 182], want_response: false }, ItemSet { range: Range(219, 279), items: [219, 225, 241, 254, 267], want_response: false }, ItemSet { range: Range(279, 389), items: [279, 321, 384, 388], want_response: false }, ItemSet { range: Range(420, 537), items: [421, 446, 448, 454, 456, 488, 506, 533], want_response: false }, ItemSet { range: Range(537, 591), items: [537, 544, 545, 547, 569, 584, 587], want_response: false }, ItemSet { range: Range(591, 608), items: [], want_response: false }, ItemSet { range: Range(666, 754), items: [666, 675, 697, 703, 718, 727, 748], want_response: false }, ItemSet { range: Range(754, 764), items: [], want_response: false }, ItemSet { range: Range(764, 902), items: [764, 794, 807, 842, 889, 893, 896], want_response: false }, ItemSet { range: Range(7, 60), items: [7, 28], want_response: true }, ItemSet { range: Range(60, 74), items: [60, 71], want_response: true }], wants: [204, 207, 212, 389, 416, 608, 614, 635, 643, 902, 971, 976, 985, 74, 76, 131, 168, 238, 273, 315, 329, 420, 562, 570, 591, 705, 712, 754, 772, 864], provide: [(187, true), (203, true), (396, true), (609, true), (618, true), (660, true), (661, true), (941, true), (950, true), (992, true), (994, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(7, 60), items: [38], want_response: false }, ItemSet { range: Range(60, 74), items: [65, 69], want_response: false }], wants: [83, 117, 134, 145, 182, 219, 225, 241, 254, 267, 279, 321, 384, 388, 421, 446, 448, 454, 456, 488, 506, 533, 537, 544, 545, 547, 569, 584, 587, 666, 675, 697, 703, 718, 727, 748, 764, 794, 807, 842, 889, 893, 896, 7, 28, 60, 71], provide: [(204, true), (207, true), (212, true), (389, true), (416, true), (608, true), (614, true), (635, true), (643, true), (902, true), (971, true), (976, true), (985, true), (74, true), (76, true), (131, true), (168, true), (238, true), (273, true), (315, true), (329, true), (420, true), (562, true), (570, true), (591, true), (705, true), (712, true), (754, true), (772, true), (864, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [38, 65, 69], provide: [(83, true), (117, true), (134, true), (145, true), (182, true), (219, true), (225, true), (241, true), (254, true), (267, true), (279, true), (321, true), (384, true), (388, true), (421, true), (446, true), (448, true), (454, true), (456, true), (488, true), (506, true), (533, true), (537, true), (544, true), (545, true), (547, true), (569, true), (584, true), (587, true), (666, true), (675, true), (697, true), (703, true), (718, true), (727, true), (748, true), (764, true), (794, true), (807, true), (842, true), (889, true), (893, true), (896, true), (7, true), (28, true), (60, true), (71, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(38, true), (65, true), (69, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {7, 28, 60, 71, 83, 99, 117, 134, 145, 182, 187, 203, 219, 225, 241, 254, 267, 279, 321, 384, 388, 396, 399, 421, 446, 448, 454, 456, 488, 506, 533, 537, 544, 545, 547, 569, 584, 587, 609, 618, 660, 661, 666, 675, 697, 703, 718, 727, 748, 764, 794, 807, 842, 889, 893, 896, 941, 950, 992, 994} + [204, 207, 212, 389, 416, 608, 614, 635, 643, 902, 971, 976, 985, 74, 76, 131, 168, 238, 273, 315, 329, 420, 562, 570, 591, 705, 712, 754, 772, 864, 38, 65, 69]
[INFO] [stdout] b all: {38, 65, 69, 74, 76, 99, 131, 168, 204, 207, 212, 238, 273, 315, 329, 389, 399, 416, 420, 562, 570, 591, 608, 614, 635, 643, 705, 712, 754, 772, 864, 902, 971, 976, 985} + [187, 203, 396, 609, 618, 660, 661, 941, 950, 992, 994, 83, 117, 134, 145, 182, 219, 225, 241, 254, 267, 279, 321, 384, 388, 421, 446, 448, 454, 456, 488, 506, 533, 537, 544, 545, 547, 569, 584, 587, 666, 675, 697, 703, 718, 727, 748, 764, 794, 807, 842, 889, 893, 896, 7, 28, 60, 71]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [7, 28, 38, 60, 65, 69, 71, 74, 76, 83, 99, 117, 131, 134, 145, 168, 182, 187, 203, 204, 207, 212, 219, 225, 238, 241, 254, 267, 273, 279, 315, 321, 329, 384, 388, 389, 396, 399, 416, 420, 421, 446, 448, 454, 456, 488, 506, 533, 537, 544, 545, 547, 562, 569, 570, 584, 587, 591, 608, 609, 614, 618, 635, 643, 660, 661, 666, 675, 697, 703, 705, 712, 718, 727, 748, 754, 764, 772, 794, 807, 842, 864, 889, 893, 896, 902, 941, 950, 971, 976, 985, 992, 994]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [7, 28, 38, 60, 65, 69, 71, 74, 76, 83, 99, 117, 131, 134, 145, 168, 182, 187, 203, 204, 207, 212, 219, 225, 238, 241, 254, 267, 273, 279, 315, 321, 329, 384, 388, 389, 396, 399, 416, 420, 421, 446, 448, 454, 456, 488, 506, 533, 537, 544, 545, 547, 562, 569, 570, 584, 587, 591, 608, 609, 614, 618, 635, 643, 660, 661, 666, 675, 697, 703, 705, 712, 718, 727, 748, 754, 764, 772, 794, 807, 842, 864, 889, 893, 896, 902, 941, 950, 971, 976, 985, 992, 994], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [7, 28, 38, 60, 65, 69, 71, 74, 76, 83, 99, 117, 131, 134, 145, 168, 182, 187, 203, 204, 207, 212, 219, 225, 238, 241, 254, 267, 273, 279, 315, 321, 329, 384, 388, 389, 396, 399, 416, 420, 421, 446, 448, 454, 456, 488, 506, 533, 537, 544, 545, 547, 562, 569, 570, 584, 587, 591, 608, 609, 614, 618, 635, 643, 660, 661, 666, 675, 697, 703, 705, 712, 718, 727, 748, 754, 764, 772, 794, 807, 842, 864, 889, 893, 896, 902, 941, 950, 971, 976, 985, 992, 994], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {11, 77, 81, 88, 100, 108, 135, 145, 256, 263, 281, 319, 365, 372, 398, 400, 441, 482, 486, 489, 498, 541, 553, 575, 589, 593, 641, 662, 670, 701, 723, 733, 773, 775, 832, 906, 939, 962, 965, 993}
[INFO] [stdout] b items: {5, 87, 127, 144, 148, 173, 187, 203, 236, 277, 357, 362, 381, 416, 424, 526, 542, 546, 591, 604, 614, 627, 672, 687, 721, 739, 747, 752, 767, 768, 791, 822, 825, 838, 848, 865, 908, 922, 983, 987, 995}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(11, 994), fp: EncodedCountingMonoid(40, SumMonoid(19921)) }], item_sets: [ItemSet { range: Range(994, 11), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(11, 627), fp: EncodedCountingMonoid(20, SumMonoid(6945)) }, Fingerprint { range: Range(627, 994), fp: EncodedCountingMonoid(19, SumMonoid(15269)) }], item_sets: [ItemSet { range: Range(994, 11), items: [995, 5], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(11, 372), fp: EncodedCountingMonoid(13, SumMonoid(2229)) }, Fingerprint { range: Range(372, 627), fp: EncodedCountingMonoid(13, SumMonoid(6417)) }, Fingerprint { range: Range(627, 775), fp: EncodedCountingMonoid(7, SumMonoid(4903)) }, Fingerprint { range: Range(775, 994), fp: EncodedCountingMonoid(7, SumMonoid(6372)) }], item_sets: [], wants: [995, 5], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(11, 203), fp: EncodedCountingMonoid(6, SumMonoid(866)) }, Fingerprint { range: Range(203, 372), fp: EncodedCountingMonoid(5, SumMonoid(1435)) }, Fingerprint { range: Range(372, 546), fp: EncodedCountingMonoid(5, SumMonoid(2289)) }, Fingerprint { range: Range(546, 627), fp: EncodedCountingMonoid(4, SumMonoid(2355)) }, Fingerprint { range: Range(627, 747), fp: EncodedCountingMonoid(5, SumMonoid(3446)) }, Fingerprint { range: Range(747, 775), fp: EncodedCountingMonoid(4, SumMonoid(3034)) }, Fingerprint { range: Range(775, 865), fp: EncodedCountingMonoid(5, SumMonoid(4124)) }, Fingerprint { range: Range(865, 994), fp: EncodedCountingMonoid(5, SumMonoid(4665)) }], item_sets: [], wants: [], provide: [(995, true), (5, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(11, 100), fp: EncodedCountingMonoid(4, SumMonoid(257)) }, Fingerprint { range: Range(100, 203), fp: EncodedCountingMonoid(4, SumMonoid(488)) }, Fingerprint { range: Range(203, 319), fp: EncodedCountingMonoid(3, SumMonoid(800)) }, Fingerprint { range: Range(372, 486), fp: EncodedCountingMonoid(5, SumMonoid(2093)) }, Fingerprint { range: Range(486, 546), fp: EncodedCountingMonoid(4, SumMonoid(2014)) }, Fingerprint { range: Range(627, 701), fp: EncodedCountingMonoid(3, SumMonoid(1973)) }, Fingerprint { range: Range(701, 747), fp: EncodedCountingMonoid(3, SumMonoid(2157)) }, Fingerprint { range: Range(865, 965), fp: EncodedCountingMonoid(3, SumMonoid(2807)) }], item_sets: [ItemSet { range: Range(319, 372), items: [319, 365], want_response: true }, ItemSet { range: Range(546, 589), items: [553, 575], want_response: true }, ItemSet { range: Range(589, 627), items: [589, 593], want_response: true }, ItemSet { range: Range(747, 775), items: [773], want_response: true }, ItemSet { range: Range(775, 865), items: [775, 832], want_response: true }, ItemSet { range: Range(965, 994), items: [965, 993], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(100, 173), fp: EncodedCountingMonoid(3, SumMonoid(419)) }], item_sets: [ItemSet { range: Range(319, 372), items: [357, 362], want_response: false }, ItemSet { range: Range(546, 589), items: [546], want_response: false }, ItemSet { range: Range(589, 627), items: [591, 604, 614], want_response: false }, ItemSet { range: Range(747, 775), items: [747, 752, 767, 768], want_response: false }, ItemSet { range: Range(775, 865), items: [791, 822, 825, 838, 848], want_response: false }, ItemSet { range: Range(965, 994), items: [983, 987], want_response: false }, ItemSet { range: Range(11, 100), items: [87], want_response: true }, ItemSet { range: Range(173, 203), items: [173, 187], want_response: true }, ItemSet { range: Range(203, 277), items: [203, 236], want_response: true }, ItemSet { range: Range(277, 319), items: [277], want_response: true }, ItemSet { range: Range(372, 424), items: [381, 416], want_response: true }, ItemSet { range: Range(424, 486), items: [424], want_response: true }, ItemSet { range: Range(486, 546), items: [526, 542], want_response: true }, ItemSet { range: Range(627, 687), items: [627, 672], want_response: true }, ItemSet { range: Range(687, 701), items: [687], want_response: true }, ItemSet { range: Range(701, 747), items: [721, 739], want_response: true }, ItemSet { range: Range(865, 922), items: [865, 908], want_response: true }, ItemSet { range: Range(922, 965), items: [922], want_response: true }], wants: [319, 365, 553, 575, 589, 593, 773, 775, 832, 965, 993], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(11, 100), items: [11, 77, 81, 88], want_response: false }, ItemSet { range: Range(173, 203), items: [], want_response: false }, ItemSet { range: Range(203, 277), items: [256, 263], want_response: false }, ItemSet { range: Range(277, 319), items: [281], want_response: false }, ItemSet { range: Range(372, 424), items: [372, 398, 400], want_response: false }, ItemSet { range: Range(424, 486), items: [441, 482], want_response: false }, ItemSet { range: Range(486, 546), items: [486, 489, 498, 541], want_response: false }, ItemSet { range: Range(627, 687), items: [641, 662, 670], want_response: false }, ItemSet { range: Range(687, 701), items: [], want_response: false }, ItemSet { range: Range(701, 747), items: [701, 723, 733], want_response: false }, ItemSet { range: Range(865, 922), items: [906], want_response: false }, ItemSet { range: Range(922, 965), items: [939, 962], want_response: false }, ItemSet { range: Range(100, 135), items: [100, 108], want_response: true }, ItemSet { range: Range(135, 173), items: [135, 145], want_response: true }], wants: [357, 362, 546, 591, 604, 614, 747, 752, 767, 768, 791, 822, 825, 838, 848, 983, 987, 87, 173, 187, 203, 236, 277, 381, 416, 424, 526, 542, 627, 672, 687, 721, 739, 865, 908, 922], provide: [(319, true), (365, true), (553, true), (575, true), (589, true), (593, true), (773, true), (775, true), (832, true), (965, true), (993, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(100, 135), items: [127], want_response: false }, ItemSet { range: Range(135, 173), items: [144, 148], want_response: false }], wants: [11, 77, 81, 88, 256, 263, 281, 372, 398, 400, 441, 482, 486, 489, 498, 541, 641, 662, 670, 701, 723, 733, 906, 939, 962, 100, 108, 135, 145], provide: [(357, true), (362, true), (546, true), (591, true), (604, true), (614, true), (747, true), (752, true), (767, true), (768, true), (791, true), (822, true), (825, true), (838, true), (848, true), (983, true), (987, true), (87, true), (173, true), (187, true), (203, true), (236, true), (277, true), (381, true), (416, true), (424, true), (526, true), (542, true), (627, true), (672, true), (687, true), (721, true), (739, true), (865, true), (908, true), (922, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [127, 144, 148], provide: [(11, true), (77, true), (81, true), (88, true), (256, true), (263, true), (281, true), (372, true), (398, true), (400, true), (441, true), (482, true), (486, true), (489, true), (498, true), (541, true), (641, true), (662, true), (670, true), (701, true), (723, true), (733, true), (906, true), (939, true), (962, true), (100, true), (108, true), (135, true), (145, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(127, true), (144, true), (148, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {11, 77, 81, 88, 100, 108, 135, 145, 256, 263, 281, 319, 365, 372, 398, 400, 441, 482, 486, 489, 498, 541, 553, 575, 589, 593, 641, 662, 670, 701, 723, 733, 773, 775, 832, 906, 939, 962, 965, 993} + [995, 5, 357, 362, 546, 591, 604, 614, 747, 752, 767, 768, 791, 822, 825, 838, 848, 983, 987, 87, 173, 187, 203, 236, 277, 381, 416, 424, 526, 542, 627, 672, 687, 721, 739, 865, 908, 922, 127, 144, 148]
[INFO] [stdout] b all: {5, 87, 127, 144, 148, 173, 187, 203, 236, 277, 357, 362, 381, 416, 424, 526, 542, 546, 591, 604, 614, 627, 672, 687, 721, 739, 747, 752, 767, 768, 791, 822, 825, 838, 848, 865, 908, 922, 983, 987, 995} + [319, 365, 553, 575, 589, 593, 773, 775, 832, 965, 993, 11, 77, 81, 88, 256, 263, 281, 372, 398, 400, 441, 482, 486, 489, 498, 541, 641, 662, 670, 701, 723, 733, 906, 939, 962, 100, 108, 135, 145]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [5, 11, 77, 81, 87, 88, 100, 108, 127, 135, 144, 145, 148, 173, 187, 203, 236, 256, 263, 277, 281, 319, 357, 362, 365, 372, 381, 398, 400, 416, 424, 441, 482, 486, 489, 498, 526, 541, 542, 546, 553, 575, 589, 591, 593, 604, 614, 627, 641, 662, 670, 672, 687, 701, 721, 723, 733, 739, 747, 752, 767, 768, 773, 775, 791, 822, 825, 832, 838, 848, 865, 906, 908, 922, 939, 962, 965, 983, 987, 993, 995]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [5, 11, 77, 81, 87, 88, 100, 108, 127, 135, 144, 145, 148, 173, 187, 203, 236, 256, 263, 277, 281, 319, 357, 362, 365, 372, 381, 398, 400, 416, 424, 441, 482, 486, 489, 498, 526, 541, 542, 546, 553, 575, 589, 591, 593, 604, 614, 627, 641, 662, 670, 672, 687, 701, 721, 723, 733, 739, 747, 752, 767, 768, 773, 775, 791, 822, 825, 832, 838, 848, 865, 906, 908, 922, 939, 962, 965, 983, 987, 993, 995], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [5, 11, 77, 81, 87, 88, 100, 108, 127, 135, 144, 145, 148, 173, 187, 203, 236, 256, 263, 277, 281, 319, 357, 362, 365, 372, 381, 398, 400, 416, 424, 441, 482, 486, 489, 498, 526, 541, 542, 546, 553, 575, 589, 591, 593, 604, 614, 627, 641, 662, 670, 672, 687, 701, 721, 723, 733, 739, 747, 752, 767, 768, 773, 775, 791, 822, 825, 832, 838, 848, 865, 906, 908, 922, 939, 962, 965, 983, 987, 993, 995], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {18, 27, 76, 122, 135, 138, 183, 213, 219, 239, 243, 306, 319, 355, 356, 418, 419, 549, 587, 773, 872, 878, 906, 934, 942, 997}
[INFO] [stdout] b items: {96, 168, 229, 558, 575, 596, 645, 712, 733, 839}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(18, 998), fp: EncodedCountingMonoid(26, SumMonoid(11224)) }], item_sets: [ItemSet { range: Range(998, 18), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(18, 596), fp: EncodedCountingMonoid(5, SumMonoid(1626)) }, Fingerprint { range: Range(596, 998), fp: EncodedCountingMonoid(5, SumMonoid(3525)) }], item_sets: [ItemSet { range: Range(998, 18), items: [], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(18, 243), fp: EncodedCountingMonoid(10, SumMonoid(1370)) }, Fingerprint { range: Range(243, 596), fp: EncodedCountingMonoid(9, SumMonoid(3552)) }, Fingerprint { range: Range(596, 934), fp: EncodedCountingMonoid(4, SumMonoid(3429)) }, Fingerprint { range: Range(934, 998), fp: EncodedCountingMonoid(3, SumMonoid(2873)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(596, 733), fp: EncodedCountingMonoid(3, SumMonoid(1953)) }], item_sets: [ItemSet { range: Range(18, 229), items: [96, 168], want_response: true }, ItemSet { range: Range(229, 243), items: [229], want_response: true }, ItemSet { range: Range(243, 596), items: [558, 575], want_response: true }, ItemSet { range: Range(733, 934), items: [733, 839], want_response: true }, ItemSet { range: Range(934, 998), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(18, 229), items: [18, 27, 76, 122, 135, 138, 183, 213, 219], want_response: false }, ItemSet { range: Range(229, 243), items: [239], want_response: false }, ItemSet { range: Range(243, 596), items: [243, 306, 319, 355, 356, 418, 419, 549, 587], want_response: false }, ItemSet { range: Range(733, 934), items: [773, 872, 878, 906], want_response: false }, ItemSet { range: Range(934, 998), items: [934, 942, 997], want_response: false }, ItemSet { range: Range(596, 733), items: [], want_response: true }], wants: [96, 168, 229, 558, 575, 733, 839], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(596, 733), items: [596, 645, 712], want_response: false }], wants: [18, 27, 76, 122, 135, 138, 183, 213, 219, 239, 243, 306, 319, 355, 356, 418, 419, 549, 587, 773, 872, 878, 906, 934, 942, 997], provide: [(96, true), (168, true), (229, true), (558, true), (575, true), (733, true), (839, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [596, 645, 712], provide: [(18, true), (27, true), (76, true), (122, true), (135, true), (138, true), (183, true), (213, true), (219, true), (239, true), (243, true), (306, true), (319, true), (355, true), (356, true), (418, true), (419, true), (549, true), (587, true), (773, true), (872, true), (878, true), (906, true), (934, true), (942, true), (997, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(596, true), (645, true), (712, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {18, 27, 76, 122, 135, 138, 183, 213, 219, 239, 243, 306, 319, 355, 356, 418, 419, 549, 587, 773, 872, 878, 906, 934, 942, 997} + [96, 168, 229, 558, 575, 733, 839, 596, 645, 712]
[INFO] [stdout] b all: {96, 168, 229, 558, 575, 596, 645, 712, 733, 839} + [18, 27, 76, 122, 135, 138, 183, 213, 219, 239, 243, 306, 319, 355, 356, 418, 419, 549, 587, 773, 872, 878, 906, 934, 942, 997]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [18, 27, 76, 96, 122, 135, 138, 168, 183, 213, 219, 229, 239, 243, 306, 319, 355, 356, 418, 419, 549, 558, 575, 587, 596, 645, 712, 733, 773, 839, 872, 878, 906, 934, 942, 997]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [18, 27, 76, 96, 122, 135, 138, 168, 183, 213, 219, 229, 239, 243, 306, 319, 355, 356, 418, 419, 549, 558, 575, 587, 596, 645, 712, 733, 773, 839, 872, 878, 906, 934, 942, 997], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [18, 27, 76, 96, 122, 135, 138, 168, 183, 213, 219, 229, 239, 243, 306, 319, 355, 356, 418, 419, 549, 558, 575, 587, 596, 645, 712, 733, 773, 839, 872, 878, 906, 934, 942, 997], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {2, 8, 21, 29, 31, 54, 56, 80, 87, 88, 100, 150, 156, 183, 202, 208, 210, 211, 220, 238, 239, 257, 262, 271, 275, 293, 296, 298, 300, 320, 324, 335, 346, 351, 374, 387, 401, 412, 431, 460, 469, 492, 493, 501, 504, 514, 516, 518, 538, 573, 587, 588, 616, 630, 650, 652, 665, 673, 674, 684, 699, 700, 711, 728, 740, 748, 754, 756, 760, 775, 785, 797, 823, 825, 833, 834, 839, 844, 854, 868, 873, 891, 910, 923, 936, 948, 951, 960, 985, 988}
[INFO] [stdout] b items: {26, 27, 114, 129, 144, 166, 168, 173, 177, 209, 215, 224, 238, 257, 262, 264, 318, 352, 376, 398, 417, 430, 435, 446, 469, 471, 474, 503, 507, 544, 561, 565, 584, 586, 595, 596, 601, 635, 652, 707, 715, 732, 768, 769, 811, 819, 845, 846, 872, 875, 881, 907, 913, 924, 926, 987, 993}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 989), fp: EncodedCountingMonoid(90, SumMonoid(45541)) }], item_sets: [ItemSet { range: Range(989, 2), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(2, 507), fp: EncodedCountingMonoid(28, SumMonoid(7882)) }, Fingerprint { range: Range(507, 989), fp: EncodedCountingMonoid(28, SumMonoid(20723)) }], item_sets: [ItemSet { range: Range(989, 2), items: [993], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 271), fp: EncodedCountingMonoid(23, SumMonoid(3092)) }, Fingerprint { range: Range(271, 507), fp: EncodedCountingMonoid(22, SumMonoid(8333)) }, Fingerprint { range: Range(507, 760), fp: EncodedCountingMonoid(23, SumMonoid(14914)) }, Fingerprint { range: Range(760, 989), fp: EncodedCountingMonoid(22, SumMonoid(19202)) }], item_sets: [], wants: [993], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(2, 177), fp: EncodedCountingMonoid(8, SumMonoid(947)) }, Fingerprint { range: Range(177, 271), fp: EncodedCountingMonoid(8, SumMonoid(1846)) }, Fingerprint { range: Range(271, 435), fp: EncodedCountingMonoid(6, SumMonoid(2291)) }, Fingerprint { range: Range(435, 507), fp: EncodedCountingMonoid(6, SumMonoid(2798)) }, Fingerprint { range: Range(507, 596), fp: EncodedCountingMonoid(7, SumMonoid(3942)) }, Fingerprint { range: Range(596, 760), fp: EncodedCountingMonoid(7, SumMonoid(4638)) }, Fingerprint { range: Range(760, 875), fp: EncodedCountingMonoid(7, SumMonoid(5730)) }, Fingerprint { range: Range(875, 989), fp: EncodedCountingMonoid(7, SumMonoid(6413)) }], item_sets: [], wants: [], provide: [(993, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 80), fp: EncodedCountingMonoid(7, SumMonoid(201)) }, Fingerprint { range: Range(80, 177), fp: EncodedCountingMonoid(6, SumMonoid(661)) }, Fingerprint { range: Range(177, 220), fp: EncodedCountingMonoid(5, SumMonoid(1014)) }, Fingerprint { range: Range(220, 271), fp: EncodedCountingMonoid(5, SumMonoid(1216)) }, Fingerprint { range: Range(271, 335), fp: EncodedCountingMonoid(8, SumMonoid(2377)) }, Fingerprint { range: Range(335, 435), fp: EncodedCountingMonoid(8, SumMonoid(3037)) }, Fingerprint { range: Range(435, 493), fp: EncodedCountingMonoid(3, SumMonoid(1421)) }, Fingerprint { range: Range(493, 507), fp: EncodedCountingMonoid(3, SumMonoid(1498)) }, Fingerprint { range: Range(507, 573), fp: EncodedCountingMonoid(4, SumMonoid(2086)) }, Fingerprint { range: Range(573, 596), fp: EncodedCountingMonoid(3, SumMonoid(1748)) }, Fingerprint { range: Range(596, 699), fp: EncodedCountingMonoid(8, SumMonoid(5244)) }, Fingerprint { range: Range(699, 760), fp: EncodedCountingMonoid(8, SumMonoid(5836)) }, Fingerprint { range: Range(760, 834), fp: EncodedCountingMonoid(7, SumMonoid(5598)) }, Fingerprint { range: Range(834, 875), fp: EncodedCountingMonoid(6, SumMonoid(5112)) }, Fingerprint { range: Range(875, 951), fp: EncodedCountingMonoid(5, SumMonoid(4608)) }, Fingerprint { range: Range(951, 989), fp: EncodedCountingMonoid(4, SumMonoid(3884)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(80, 166), fp: EncodedCountingMonoid(3, SumMonoid(387)) }, Fingerprint { range: Range(166, 177), fp: EncodedCountingMonoid(3, SumMonoid(507)) }, Fingerprint { range: Range(220, 262), fp: EncodedCountingMonoid(3, SumMonoid(719)) }, Fingerprint { range: Range(335, 417), fp: EncodedCountingMonoid(3, SumMonoid(1126)) }, Fingerprint { range: Range(435, 471), fp: EncodedCountingMonoid(3, SumMonoid(1350)) }, Fingerprint { range: Range(875, 913), fp: EncodedCountingMonoid(3, SumMonoid(2663)) }, Fingerprint { range: Range(913, 951), fp: EncodedCountingMonoid(3, SumMonoid(2763)) }], item_sets: [ItemSet { range: Range(2, 80), items: [26, 27], want_response: true }, ItemSet { range: Range(177, 215), items: [177, 209], want_response: true }, ItemSet { range: Range(215, 220), items: [215], want_response: true }, ItemSet { range: Range(262, 271), items: [262, 264], want_response: true }, ItemSet { range: Range(271, 335), items: [318], want_response: true }, ItemSet { range: Range(417, 435), items: [417, 430], want_response: true }, ItemSet { range: Range(471, 493), items: [471, 474], want_response: true }, ItemSet { range: Range(493, 507), items: [503], want_response: true }, ItemSet { range: Range(507, 561), items: [507, 544], want_response: true }, ItemSet { range: Range(561, 573), items: [561, 565], want_response: true }, ItemSet { range: Range(573, 595), items: [584, 586], want_response: true }, ItemSet { range: Range(595, 596), items: [595], want_response: true }, ItemSet { range: Range(596, 635), items: [596, 601], want_response: true }, ItemSet { range: Range(635, 699), items: [635, 652], want_response: true }, ItemSet { range: Range(699, 732), items: [707, 715], want_response: true }, ItemSet { range: Range(732, 760), items: [732], want_response: true }, ItemSet { range: Range(760, 811), items: [768, 769], want_response: true }, ItemSet { range: Range(811, 834), items: [811, 819], want_response: true }, ItemSet { range: Range(834, 872), items: [845, 846], want_response: true }, ItemSet { range: Range(872, 875), items: [872], want_response: true }, ItemSet { range: Range(951, 989), items: [987], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(80, 100), fp: EncodedCountingMonoid(3, SumMonoid(255)) }, Fingerprint { range: Range(100, 166), fp: EncodedCountingMonoid(3, SumMonoid(406)) }, Fingerprint { range: Range(335, 387), fp: EncodedCountingMonoid(4, SumMonoid(1406)) }, Fingerprint { range: Range(387, 417), fp: EncodedCountingMonoid(3, SumMonoid(1200)) }], item_sets: [ItemSet { range: Range(2, 80), items: [2, 8, 21, 29, 31, 54, 56], want_response: false }, ItemSet { range: Range(177, 215), items: [183, 202, 208, 210, 211], want_response: false }, ItemSet { range: Range(215, 220), items: [], want_response: false }, ItemSet { range: Range(262, 271), items: [262], want_response: false }, ItemSet { range: Range(271, 335), items: [271, 275, 293, 296, 298, 300, 320, 324], want_response: false }, ItemSet { range: Range(417, 435), items: [431], want_response: false }, ItemSet { range: Range(471, 493), items: [492], want_response: false }, ItemSet { range: Range(493, 507), items: [493, 501, 504], want_response: false }, ItemSet { range: Range(507, 561), items: [514, 516, 518, 538], want_response: false }, ItemSet { range: Range(561, 573), items: [], want_response: false }, ItemSet { range: Range(573, 595), items: [573, 587, 588], want_response: false }, ItemSet { range: Range(595, 596), items: [], want_response: false }, ItemSet { range: Range(596, 635), items: [616, 630], want_response: false }, ItemSet { range: Range(635, 699), items: [650, 652, 665, 673, 674, 684], want_response: false }, ItemSet { range: Range(699, 732), items: [699, 700, 711, 728], want_response: false }, ItemSet { range: Range(732, 760), items: [740, 748, 754, 756], want_response: false }, ItemSet { range: Range(760, 811), items: [760, 775, 785, 797], want_response: false }, ItemSet { range: Range(811, 834), items: [823, 825, 833], want_response: false }, ItemSet { range: Range(834, 872), items: [834, 839, 844, 854, 868], want_response: false }, ItemSet { range: Range(872, 875), items: [873], want_response: false }, ItemSet { range: Range(951, 989), items: [951, 960, 985, 988], want_response: false }, ItemSet { range: Range(166, 177), items: [], want_response: true }, ItemSet { range: Range(220, 239), items: [220, 238], want_response: true }, ItemSet { range: Range(239, 262), items: [239, 257], want_response: true }, ItemSet { range: Range(435, 471), items: [460, 469], want_response: true }, ItemSet { range: Range(875, 913), items: [891, 910], want_response: true }, ItemSet { range: Range(913, 948), items: [923, 936], want_response: true }, ItemSet { range: Range(948, 951), items: [948], want_response: true }], wants: [26, 27, 177, 209, 215, 264, 318, 417, 430, 471, 474, 503, 507, 544, 561, 565, 584, 586, 595, 596, 601, 635, 707, 715, 732, 768, 769, 811, 819, 845, 846, 872, 987], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(166, 177), items: [166, 168, 173], want_response: false }, ItemSet { range: Range(220, 239), items: [224, 238], want_response: false }, ItemSet { range: Range(239, 262), items: [257], want_response: false }, ItemSet { range: Range(435, 471), items: [435, 446, 469], want_response: false }, ItemSet { range: Range(875, 913), items: [875, 881, 907], want_response: false }, ItemSet { range: Range(913, 948), items: [913, 924, 926], want_response: false }, ItemSet { range: Range(948, 951), items: [], want_response: false }, ItemSet { range: Range(80, 100), items: [], want_response: true }, ItemSet { range: Range(100, 144), items: [114, 129], want_response: true }, ItemSet { range: Range(144, 166), items: [144], want_response: true }, ItemSet { range: Range(335, 387), items: [352, 376], want_response: true }, ItemSet { range: Range(387, 417), items: [398], want_response: true }], wants: [2, 8, 21, 29, 31, 54, 56, 183, 202, 208, 210, 211, 271, 275, 293, 296, 298, 300, 320, 324, 431, 492, 493, 501, 504, 514, 516, 518, 538, 573, 587, 588, 616, 630, 650, 665, 673, 674, 684, 699, 700, 711, 728, 740, 748, 754, 756, 760, 775, 785, 797, 823, 825, 833, 834, 839, 844, 854, 868, 873, 951, 960, 985, 988, 220, 239, 460, 891, 910, 923, 936, 948], provide: [(26, true), (27, true), (177, true), (209, true), (215, true), (264, true), (318, true), (417, true), (430, true), (471, true), (474, true), (503, true), (507, true), (544, true), (561, true), (565, true), (584, true), (586, true), (595, true), (596, true), (601, true), (635, true), (707, true), (715, true), (732, true), (768, true), (769, true), (811, true), (819, true), (845, true), (846, true), (872, true), (987, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(80, 100), items: [80, 87, 88], want_response: false }, ItemSet { range: Range(100, 144), items: [100], want_response: false }, ItemSet { range: Range(144, 166), items: [150, 156], want_response: false }, ItemSet { range: Range(335, 387), items: [335, 346, 351, 374], want_response: false }, ItemSet { range: Range(387, 417), items: [387, 401, 412], want_response: false }], wants: [166, 168, 173, 224, 435, 446, 875, 881, 907, 913, 924, 926, 114, 129, 144, 352, 376, 398], provide: [(2, true), (8, true), (21, true), (29, true), (31, true), (54, true), (56, true), (183, true), (202, true), (208, true), (210, true), (211, true), (271, true), (275, true), (293, true), (296, true), (298, true), (300, true), (320, true), (324, true), (431, true), (492, true), (493, true), (501, true), (504, true), (514, true), (516, true), (518, true), (538, true), (573, true), (587, true), (588, true), (616, true), (630, true), (650, true), (665, true), (673, true), (674, true), (684, true), (699, true), (700, true), (711, true), (728, true), (740, true), (748, true), (754, true), (756, true), (760, true), (775, true), (785, true), (797, true), (823, true), (825, true), (833, true), (834, true), (839, true), (844, true), (854, true), (868, true), (873, true), (951, true), (960, true), (985, true), (988, true), (220, true), (239, true), (460, true), (891, true), (910, true), (923, true), (936, true), (948, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [80, 87, 88, 100, 150, 156, 335, 346, 351, 374, 387, 401, 412], provide: [(166, true), (168, true), (173, true), (224, true), (435, true), (446, true), (875, true), (881, true), (907, true), (913, true), (924, true), (926, true), (114, true), (129, true), (144, true), (352, true), (376, true), (398, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(80, true), (87, true), (88, true), (100, true), (150, true), (156, true), (335, true), (346, true), (351, true), (374, true), (387, true), (401, true), (412, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {2, 8, 21, 29, 31, 54, 56, 80, 87, 88, 100, 150, 156, 183, 202, 208, 210, 211, 220, 238, 239, 257, 262, 271, 275, 293, 296, 298, 300, 320, 324, 335, 346, 351, 374, 387, 401, 412, 431, 460, 469, 492, 493, 501, 504, 514, 516, 518, 538, 573, 587, 588, 616, 630, 650, 652, 665, 673, 674, 684, 699, 700, 711, 728, 740, 748, 754, 756, 760, 775, 785, 797, 823, 825, 833, 834, 839, 844, 854, 868, 873, 891, 910, 923, 936, 948, 951, 960, 985, 988} + [993, 26, 27, 177, 209, 215, 264, 318, 417, 430, 471, 474, 503, 507, 544, 561, 565, 584, 586, 595, 596, 601, 635, 707, 715, 732, 768, 769, 811, 819, 845, 846, 872, 987, 166, 168, 173, 224, 435, 446, 875, 881, 907, 913, 924, 926, 114, 129, 144, 352, 376, 398]
[INFO] [stdout] b all: {26, 27, 114, 129, 144, 166, 168, 173, 177, 209, 215, 224, 238, 257, 262, 264, 318, 352, 376, 398, 417, 430, 435, 446, 469, 471, 474, 503, 507, 544, 561, 565, 584, 586, 595, 596, 601, 635, 652, 707, 715, 732, 768, 769, 811, 819, 845, 846, 872, 875, 881, 907, 913, 924, 926, 987, 993} + [2, 8, 21, 29, 31, 54, 56, 183, 202, 208, 210, 211, 271, 275, 293, 296, 298, 300, 320, 324, 431, 492, 493, 501, 504, 514, 516, 518, 538, 573, 587, 588, 616, 630, 650, 665, 673, 674, 684, 699, 700, 711, 728, 740, 748, 754, 756, 760, 775, 785, 797, 823, 825, 833, 834, 839, 844, 854, 868, 873, 951, 960, 985, 988, 220, 239, 460, 891, 910, 923, 936, 948, 80, 87, 88, 100, 150, 156, 335, 346, 351, 374, 387, 401, 412]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [2, 8, 21, 26, 27, 29, 31, 54, 56, 80, 87, 88, 100, 114, 129, 144, 150, 156, 166, 168, 173, 177, 183, 202, 208, 209, 210, 211, 215, 220, 224, 238, 239, 257, 262, 264, 271, 275, 293, 296, 298, 300, 318, 320, 324, 335, 346, 351, 352, 374, 376, 387, 398, 401, 412, 417, 430, 431, 435, 446, 460, 469, 471, 474, 492, 493, 501, 503, 504, 507, 514, 516, 518, 538, 544, 561, 565, 573, 584, 586, 587, 588, 595, 596, 601, 616, 630, 635, 650, 652, 665, 673, 674, 684, 699, 700, 707, 711, 715, 728, 732, 740, 748, 754, 756, 760, 768, 769, 775, 785, 797, 811, 819, 823, 825, 833, 834, 839, 844, 845, 846, 854, 868, 872, 873, 875, 881, 891, 907, 910, 913, 923, 924, 926, 936, 948, 951, 960, 985, 987, 988, 993]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [2, 8, 21, 26, 27, 29, 31, 54, 56, 80, 87, 88, 100, 114, 129, 144, 150, 156, 166, 168, 173, 177, 183, 202, 208, 209, 210, 211, 215, 220, 224, 238, 239, 257, 262, 264, 271, 275, 293, 296, 298, 300, 318, 320, 324, 335, 346, 351, 352, 374, 376, 387, 398, 401, 412, 417, 430, 431, 435, 446, 460, 469, 471, 474, 492, 493, 501, 503, 504, 507, 514, 516, 518, 538, 544, 561, 565, 573, 584, 586, 587, 588, 595, 596, 601, 616, 630, 635, 650, 652, 665, 673, 674, 684, 699, 700, 707, 711, 715, 728, 732, 740, 748, 754, 756, 760, 768, 769, 775, 785, 797, 811, 819, 823, 825, 833, 834, 839, 844, 845, 846, 854, 868, 872, 873, 875, 881, 891, 907, 910, 913, 923, 924, 926, 936, 948, 951, 960, 985, 987, 988, 993], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [2, 8, 21, 26, 27, 29, 31, 54, 56, 80, 87, 88, 100, 114, 129, 144, 150, 156, 166, 168, 173, 177, 183, 202, 208, 209, 210, 211, 215, 220, 224, 238, 239, 257, 262, 264, 271, 275, 293, 296, 298, 300, 318, 320, 324, 335, 346, 351, 352, 374, 376, 387, 398, 401, 412, 417, 430, 431, 435, 446, 460, 469, 471, 474, 492, 493, 501, 503, 504, 507, 514, 516, 518, 538, 544, 561, 565, 573, 584, 586, 587, 588, 595, 596, 601, 616, 630, 635, 650, 652, 665, 673, 674, 684, 699, 700, 707, 711, 715, 728, 732, 740, 748, 754, 756, 760, 768, 769, 775, 785, 797, 811, 819, 823, 825, 833, 834, 839, 844, 845, 846, 854, 868, 872, 873, 875, 881, 891, 907, 910, 913, 923, 924, 926, 936, 948, 951, 960, 985, 987, 988, 993], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {12, 30, 32, 33, 35, 54, 59, 60, 67, 72, 76, 80, 107, 140, 145, 147, 154, 161, 163, 166, 181, 186, 195, 207, 222, 224, 228, 262, 263, 265, 289, 302, 307, 308, 310, 325, 352, 378, 384, 392, 393, 405, 418, 424, 428, 429, 453, 477, 490, 511, 522, 524, 526, 534, 558, 561, 565, 600, 601, 604, 616, 641, 689, 692, 706, 708, 709, 713, 715, 736, 752, 755, 762, 777, 786, 787, 788, 831, 832, 838, 856, 885, 886, 887, 909, 913, 947, 957, 960}
[INFO] [stdout] b items: {18, 25, 35, 37, 46, 51, 73, 111, 137, 145, 150, 159, 165, 181, 187, 202, 210, 228, 242, 275, 281, 284, 298, 306, 357, 363, 386, 387, 417, 442, 468, 488, 506, 520, 524, 532, 543, 550, 595, 597, 627, 629, 642, 644, 649, 671, 697, 708, 718, 719, 728, 750, 759, 761, 763, 780, 782, 786, 804, 810, 817, 850, 876, 897, 908, 909, 924, 935, 951, 965, 975, 996, 997}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 961), fp: EncodedCountingMonoid(89, SumMonoid(40429)) }], item_sets: [ItemSet { range: Range(961, 12), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 532), fp: EncodedCountingMonoid(35, SumMonoid(8704)) }, Fingerprint { range: Range(532, 961), fp: EncodedCountingMonoid(34, SumMonoid(25311)) }], item_sets: [ItemSet { range: Range(961, 12), items: [965, 975, 996, 997], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 262), fp: EncodedCountingMonoid(27, SumMonoid(3236)) }, Fingerprint { range: Range(262, 532), fp: EncodedCountingMonoid(26, SumMonoid(10137)) }, Fingerprint { range: Range(532, 755), fp: EncodedCountingMonoid(18, SumMonoid(11700)) }, Fingerprint { range: Range(755, 961), fp: EncodedCountingMonoid(18, SumMonoid(15356)) }], item_sets: [], wants: [965, 975, 996, 997], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 150), fp: EncodedCountingMonoid(10, SumMonoid(678)) }, Fingerprint { range: Range(150, 262), fp: EncodedCountingMonoid(9, SumMonoid(1724)) }, Fingerprint { range: Range(262, 387), fp: EncodedCountingMonoid(8, SumMonoid(2550)) }, Fingerprint { range: Range(387, 532), fp: EncodedCountingMonoid(8, SumMonoid(3752)) }, Fingerprint { range: Range(532, 649), fp: EncodedCountingMonoid(9, SumMonoid(5359)) }, Fingerprint { range: Range(649, 755), fp: EncodedCountingMonoid(8, SumMonoid(5640)) }, Fingerprint { range: Range(755, 850), fp: EncodedCountingMonoid(9, SumMonoid(7062)) }, Fingerprint { range: Range(850, 961), fp: EncodedCountingMonoid(8, SumMonoid(7250)) }], item_sets: [], wants: [], provide: [(965, true), (975, true), (996, true), (997, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 67), fp: EncodedCountingMonoid(8, SumMonoid(315)) }, Fingerprint { range: Range(67, 150), fp: EncodedCountingMonoid(8, SumMonoid(834)) }, Fingerprint { range: Range(150, 195), fp: EncodedCountingMonoid(6, SumMonoid(1011)) }, Fingerprint { range: Range(195, 262), fp: EncodedCountingMonoid(5, SumMonoid(1076)) }, Fingerprint { range: Range(262, 308), fp: EncodedCountingMonoid(6, SumMonoid(1688)) }, Fingerprint { range: Range(308, 387), fp: EncodedCountingMonoid(6, SumMonoid(2057)) }, Fingerprint { range: Range(387, 453), fp: EncodedCountingMonoid(7, SumMonoid(2889)) }, Fingerprint { range: Range(453, 532), fp: EncodedCountingMonoid(7, SumMonoid(3503)) }, Fingerprint { range: Range(532, 601), fp: EncodedCountingMonoid(5, SumMonoid(2818)) }, Fingerprint { range: Range(601, 649), fp: EncodedCountingMonoid(4, SumMonoid(2462)) }, Fingerprint { range: Range(649, 713), fp: EncodedCountingMonoid(5, SumMonoid(3504)) }, Fingerprint { range: Range(713, 755), fp: EncodedCountingMonoid(4, SumMonoid(2916)) }, Fingerprint { range: Range(755, 788), fp: EncodedCountingMonoid(5, SumMonoid(3867)) }, Fingerprint { range: Range(788, 850), fp: EncodedCountingMonoid(4, SumMonoid(3289)) }, Fingerprint { range: Range(850, 913), fp: EncodedCountingMonoid(5, SumMonoid(4423)) }, Fingerprint { range: Range(913, 961), fp: EncodedCountingMonoid(4, SumMonoid(3777)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(12, 37), fp: EncodedCountingMonoid(3, SumMonoid(78)) }, Fingerprint { range: Range(37, 67), fp: EncodedCountingMonoid(3, SumMonoid(134)) }, Fingerprint { range: Range(150, 181), fp: EncodedCountingMonoid(3, SumMonoid(474)) }, Fingerprint { range: Range(262, 298), fp: EncodedCountingMonoid(3, SumMonoid(840)) }, Fingerprint { range: Range(453, 520), fp: EncodedCountingMonoid(3, SumMonoid(1462)) }, Fingerprint { range: Range(532, 595), fp: EncodedCountingMonoid(3, SumMonoid(1625)) }, Fingerprint { range: Range(755, 780), fp: EncodedCountingMonoid(3, SumMonoid(2283)) }, Fingerprint { range: Range(780, 788), fp: EncodedCountingMonoid(3, SumMonoid(2348)) }, Fingerprint { range: Range(850, 908), fp: EncodedCountingMonoid(3, SumMonoid(2623)) }], item_sets: [ItemSet { range: Range(67, 137), items: [73, 111], want_response: true }, ItemSet { range: Range(137, 150), items: [137, 145], want_response: true }, ItemSet { range: Range(181, 195), items: [181, 187], want_response: true }, ItemSet { range: Range(195, 228), items: [202, 210], want_response: true }, ItemSet { range: Range(228, 262), items: [228, 242], want_response: true }, ItemSet { range: Range(298, 308), items: [298, 306], want_response: true }, ItemSet { range: Range(308, 386), items: [357, 363], want_response: true }, ItemSet { range: Range(386, 387), items: [386], want_response: true }, ItemSet { range: Range(387, 442), items: [387, 417], want_response: true }, ItemSet { range: Range(442, 453), items: [442], want_response: true }, ItemSet { range: Range(520, 532), items: [520, 524], want_response: true }, ItemSet { range: Range(595, 601), items: [595, 597], want_response: true }, ItemSet { range: Range(601, 642), items: [627, 629], want_response: true }, ItemSet { range: Range(642, 649), items: [642, 644], want_response: true }, ItemSet { range: Range(649, 697), items: [649, 671], want_response: true }, ItemSet { range: Range(697, 713), items: [697, 708], want_response: true }, ItemSet { range: Range(713, 728), items: [718, 719], want_response: true }, ItemSet { range: Range(728, 755), items: [728, 750], want_response: true }, ItemSet { range: Range(788, 817), items: [804, 810], want_response: true }, ItemSet { range: Range(817, 850), items: [817], want_response: true }, ItemSet { range: Range(908, 913), items: [908, 909], want_response: true }, ItemSet { range: Range(913, 951), items: [924, 935], want_response: true }, ItemSet { range: Range(951, 961), items: [951], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(12, 33), fp: EncodedCountingMonoid(3, SumMonoid(74)) }], item_sets: [ItemSet { range: Range(67, 137), items: [67, 72, 76, 80, 107], want_response: false }, ItemSet { range: Range(137, 150), items: [140, 145, 147], want_response: false }, ItemSet { range: Range(181, 195), items: [181, 186], want_response: false }, ItemSet { range: Range(195, 228), items: [195, 207, 222, 224], want_response: false }, ItemSet { range: Range(228, 262), items: [228], want_response: false }, ItemSet { range: Range(298, 308), items: [302, 307], want_response: false }, ItemSet { range: Range(308, 386), items: [308, 310, 325, 352, 378, 384], want_response: false }, ItemSet { range: Range(386, 387), items: [], want_response: false }, ItemSet { range: Range(387, 442), items: [392, 393, 405, 418, 424, 428, 429], want_response: false }, ItemSet { range: Range(442, 453), items: [], want_response: false }, ItemSet { range: Range(520, 532), items: [522, 524, 526], want_response: false }, ItemSet { range: Range(595, 601), items: [600], want_response: false }, ItemSet { range: Range(601, 642), items: [601, 604, 616, 641], want_response: false }, ItemSet { range: Range(642, 649), items: [], want_response: false }, ItemSet { range: Range(649, 697), items: [689, 692], want_response: false }, ItemSet { range: Range(697, 713), items: [706, 708, 709], want_response: false }, ItemSet { range: Range(713, 728), items: [713, 715], want_response: false }, ItemSet { range: Range(728, 755), items: [736, 752], want_response: false }, ItemSet { range: Range(788, 817), items: [788], want_response: false }, ItemSet { range: Range(817, 850), items: [831, 832, 838], want_response: false }, ItemSet { range: Range(908, 913), items: [909], want_response: false }, ItemSet { range: Range(913, 951), items: [913, 947], want_response: false }, ItemSet { range: Range(951, 961), items: [957, 960], want_response: false }, ItemSet { range: Range(33, 37), items: [33, 35], want_response: true }, ItemSet { range: Range(37, 60), items: [54, 59], want_response: true }, ItemSet { range: Range(60, 67), items: [60], want_response: true }, ItemSet { range: Range(150, 163), items: [154, 161], want_response: true }, ItemSet { range: Range(163, 181), items: [163, 166], want_response: true }, ItemSet { range: Range(262, 265), items: [262, 263], want_response: true }, ItemSet { range: Range(265, 298), items: [265, 289], want_response: true }, ItemSet { range: Range(453, 490), items: [453, 477], want_response: true }, ItemSet { range: Range(490, 520), items: [490, 511], want_response: true }, ItemSet { range: Range(532, 561), items: [534, 558], want_response: true }, ItemSet { range: Range(561, 595), items: [561, 565], want_response: true }, ItemSet { range: Range(755, 777), items: [755, 762], want_response: true }, ItemSet { range: Range(777, 780), items: [777], want_response: true }, ItemSet { range: Range(780, 788), items: [786, 787], want_response: true }, ItemSet { range: Range(850, 886), items: [856, 885], want_response: true }, ItemSet { range: Range(886, 908), items: [886, 887], want_response: true }], wants: [73, 111, 137, 187, 202, 210, 242, 298, 306, 357, 363, 386, 387, 417, 442, 520, 595, 597, 627, 629, 642, 644, 649, 671, 697, 718, 719, 728, 750, 804, 810, 817, 908, 924, 935, 951], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(33, 37), items: [35], want_response: false }, ItemSet { range: Range(37, 60), items: [37, 46, 51], want_response: false }, ItemSet { range: Range(60, 67), items: [], want_response: false }, ItemSet { range: Range(150, 163), items: [150, 159], want_response: false }, ItemSet { range: Range(163, 181), items: [165], want_response: false }, ItemSet { range: Range(262, 265), items: [], want_response: false }, ItemSet { range: Range(265, 298), items: [275, 281, 284], want_response: false }, ItemSet { range: Range(453, 490), items: [468, 488], want_response: false }, ItemSet { range: Range(490, 520), items: [506], want_response: false }, ItemSet { range: Range(532, 561), items: [532, 543, 550], want_response: false }, ItemSet { range: Range(561, 595), items: [], want_response: false }, ItemSet { range: Range(755, 777), items: [759, 761, 763], want_response: false }, ItemSet { range: Range(777, 780), items: [], want_response: false }, ItemSet { range: Range(780, 788), items: [780, 782, 786], want_response: false }, ItemSet { range: Range(850, 886), items: [850, 876], want_response: false }, ItemSet { range: Range(886, 908), items: [897], want_response: false }, ItemSet { range: Range(12, 33), items: [18, 25], want_response: true }], wants: [67, 72, 76, 80, 107, 140, 147, 186, 195, 207, 222, 224, 302, 307, 308, 310, 325, 352, 378, 384, 392, 393, 405, 418, 424, 428, 429, 522, 526, 600, 601, 604, 616, 641, 689, 692, 706, 709, 713, 715, 736, 752, 788, 831, 832, 838, 913, 947, 957, 960, 33, 54, 59, 60, 154, 161, 163, 166, 262, 263, 265, 289, 453, 477, 490, 511, 534, 558, 561, 565, 755, 762, 777, 787, 856, 885, 886, 887], provide: [(73, true), (111, true), (137, true), (187, true), (202, true), (210, true), (242, true), (298, true), (306, true), (357, true), (363, true), (386, true), (387, true), (417, true), (442, true), (520, true), (595, true), (597, true), (627, true), (629, true), (642, true), (644, true), (649, true), (671, true), (697, true), (718, true), (719, true), (728, true), (750, true), (804, true), (810, true), (817, true), (908, true), (924, true), (935, true), (951, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(12, 33), items: [12, 30, 32], want_response: false }], wants: [37, 46, 51, 150, 159, 165, 275, 281, 284, 468, 488, 506, 532, 543, 550, 759, 761, 763, 780, 782, 850, 876, 897, 18, 25], provide: [(67, true), (72, true), (76, true), (80, true), (107, true), (140, true), (147, true), (186, true), (195, true), (207, true), (222, true), (224, true), (302, true), (307, true), (308, true), (310, true), (325, true), (352, true), (378, true), (384, true), (392, true), (393, true), (405, true), (418, true), (424, true), (428, true), (429, true), (522, true), (526, true), (600, true), (601, true), (604, true), (616, true), (641, true), (689, true), (692, true), (706, true), (709, true), (713, true), (715, true), (736, true), (752, true), (788, true), (831, true), (832, true), (838, true), (913, true), (947, true), (957, true), (960, true), (33, true), (54, true), (59, true), (60, true), (154, true), (161, true), (163, true), (166, true), (262, true), (263, true), (265, true), (289, true), (453, true), (477, true), (490, true), (511, true), (534, true), (558, true), (561, true), (565, true), (755, true), (762, true), (777, true), (787, true), (856, true), (885, true), (886, true), (887, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [12, 30, 32], provide: [(37, true), (46, true), (51, true), (150, true), (159, true), (165, true), (275, true), (281, true), (284, true), (468, true), (488, true), (506, true), (532, true), (543, true), (550, true), (759, true), (761, true), (763, true), (780, true), (782, true), (850, true), (876, true), (897, true), (18, true), (25, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(12, true), (30, true), (32, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {12, 30, 32, 33, 35, 54, 59, 60, 67, 72, 76, 80, 107, 140, 145, 147, 154, 161, 163, 166, 181, 186, 195, 207, 222, 224, 228, 262, 263, 265, 289, 302, 307, 308, 310, 325, 352, 378, 384, 392, 393, 405, 418, 424, 428, 429, 453, 477, 490, 511, 522, 524, 526, 534, 558, 561, 565, 600, 601, 604, 616, 641, 689, 692, 706, 708, 709, 713, 715, 736, 752, 755, 762, 777, 786, 787, 788, 831, 832, 838, 856, 885, 886, 887, 909, 913, 947, 957, 960} + [965, 975, 996, 997, 73, 111, 137, 187, 202, 210, 242, 298, 306, 357, 363, 386, 387, 417, 442, 520, 595, 597, 627, 629, 642, 644, 649, 671, 697, 718, 719, 728, 750, 804, 810, 817, 908, 924, 935, 951, 37, 46, 51, 150, 159, 165, 275, 281, 284, 468, 488, 506, 532, 543, 550, 759, 761, 763, 780, 782, 850, 876, 897, 18, 25]
[INFO] [stdout] b all: {18, 25, 35, 37, 46, 51, 73, 111, 137, 145, 150, 159, 165, 181, 187, 202, 210, 228, 242, 275, 281, 284, 298, 306, 357, 363, 386, 387, 417, 442, 468, 488, 506, 520, 524, 532, 543, 550, 595, 597, 627, 629, 642, 644, 649, 671, 697, 708, 718, 719, 728, 750, 759, 761, 763, 780, 782, 786, 804, 810, 817, 850, 876, 897, 908, 909, 924, 935, 951, 965, 975, 996, 997} + [67, 72, 76, 80, 107, 140, 147, 186, 195, 207, 222, 224, 302, 307, 308, 310, 325, 352, 378, 384, 392, 393, 405, 418, 424, 428, 429, 522, 526, 600, 601, 604, 616, 641, 689, 692, 706, 709, 713, 715, 736, 752, 788, 831, 832, 838, 913, 947, 957, 960, 33, 54, 59, 60, 154, 161, 163, 166, 262, 263, 265, 289, 453, 477, 490, 511, 534, 558, 561, 565, 755, 762, 777, 787, 856, 885, 886, 887, 12, 30, 32]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [12, 18, 25, 30, 32, 33, 35, 37, 46, 51, 54, 59, 60, 67, 72, 73, 76, 80, 107, 111, 137, 140, 145, 147, 150, 154, 159, 161, 163, 165, 166, 181, 186, 187, 195, 202, 207, 210, 222, 224, 228, 242, 262, 263, 265, 275, 281, 284, 289, 298, 302, 306, 307, 308, 310, 325, 352, 357, 363, 378, 384, 386, 387, 392, 393, 405, 417, 418, 424, 428, 429, 442, 453, 468, 477, 488, 490, 506, 511, 520, 522, 524, 526, 532, 534, 543, 550, 558, 561, 565, 595, 597, 600, 601, 604, 616, 627, 629, 641, 642, 644, 649, 671, 689, 692, 697, 706, 708, 709, 713, 715, 718, 719, 728, 736, 750, 752, 755, 759, 761, 762, 763, 777, 780, 782, 786, 787, 788, 804, 810, 817, 831, 832, 838, 850, 856, 876, 885, 886, 887, 897, 908, 909, 913, 924, 935, 947, 951, 957, 960, 965, 975, 996, 997]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [12, 18, 25, 30, 32, 33, 35, 37, 46, 51, 54, 59, 60, 67, 72, 73, 76, 80, 107, 111, 137, 140, 145, 147, 150, 154, 159, 161, 163, 165, 166, 181, 186, 187, 195, 202, 207, 210, 222, 224, 228, 242, 262, 263, 265, 275, 281, 284, 289, 298, 302, 306, 307, 308, 310, 325, 352, 357, 363, 378, 384, 386, 387, 392, 393, 405, 417, 418, 424, 428, 429, 442, 453, 468, 477, 488, 490, 506, 511, 520, 522, 524, 526, 532, 534, 543, 550, 558, 561, 565, 595, 597, 600, 601, 604, 616, 627, 629, 641, 642, 644, 649, 671, 689, 692, 697, 706, 708, 709, 713, 715, 718, 719, 728, 736, 750, 752, 755, 759, 761, 762, 763, 777, 780, 782, 786, 787, 788, 804, 810, 817, 831, 832, 838, 850, 856, 876, 885, 886, 887, 897, 908, 909, 913, 924, 935, 947, 951, 957, 960, 965, 975, 996, 997], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [12, 18, 25, 30, 32, 33, 35, 37, 46, 51, 54, 59, 60, 67, 72, 73, 76, 80, 107, 111, 137, 140, 145, 147, 150, 154, 159, 161, 163, 165, 166, 181, 186, 187, 195, 202, 207, 210, 222, 224, 228, 242, 262, 263, 265, 275, 281, 284, 289, 298, 302, 306, 307, 308, 310, 325, 352, 357, 363, 378, 384, 386, 387, 392, 393, 405, 417, 418, 424, 428, 429, 442, 453, 468, 477, 488, 490, 506, 511, 520, 522, 524, 526, 532, 534, 543, 550, 558, 561, 565, 595, 597, 600, 601, 604, 616, 627, 629, 641, 642, 644, 649, 671, 689, 692, 697, 706, 708, 709, 713, 715, 718, 719, 728, 736, 750, 752, 755, 759, 761, 762, 763, 777, 780, 782, 786, 787, 788, 804, 810, 817, 831, 832, 838, 850, 856, 876, 885, 886, 887, 897, 908, 909, 913, 924, 935, 947, 951, 957, 960, 965, 975, 996, 997], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 60, 77, 108, 116, 120, 123, 127, 139, 145, 196, 213, 237, 254, 294, 303, 307, 314, 319, 321, 325, 327, 328, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 441, 445, 455, 467, 478, 484, 493, 495, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(70, SumMonoid(31447)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 325), fp: EncodedCountingMonoid(22, SumMonoid(3893)) }, Fingerprint { range: Range(325, 514), fp: EncodedCountingMonoid(22, SumMonoid(9053)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(13, SumMonoid(7643)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(13, SumMonoid(10858)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 185), fp: EncodedCountingMonoid(12, SumMonoid(1070)) }, Fingerprint { range: Range(185, 325), fp: EncodedCountingMonoid(12, SumMonoid(2938)) }, Fingerprint { range: Range(325, 439), fp: EncodedCountingMonoid(9, SumMonoid(3298)) }, Fingerprint { range: Range(439, 514), fp: EncodedCountingMonoid(8, SumMonoid(3708)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 116), fp: EncodedCountingMonoid(6, SumMonoid(365)) }, Fingerprint { range: Range(116, 185), fp: EncodedCountingMonoid(6, SumMonoid(770)) }, Fingerprint { range: Range(185, 303), fp: EncodedCountingMonoid(5, SumMonoid(1194)) }, Fingerprint { range: Range(303, 325), fp: EncodedCountingMonoid(5, SumMonoid(1564)) }, Fingerprint { range: Range(325, 376), fp: EncodedCountingMonoid(7, SumMonoid(2396)) }, Fingerprint { range: Range(376, 439), fp: EncodedCountingMonoid(6, SumMonoid(2399)) }, Fingerprint { range: Range(439, 484), fp: EncodedCountingMonoid(5, SumMonoid(2286)) }, Fingerprint { range: Range(484, 514), fp: EncodedCountingMonoid(4, SumMonoid(1972)) }, Fingerprint { range: Range(514, 544), fp: EncodedCountingMonoid(4, SumMonoid(2119)) }, Fingerprint { range: Range(544, 609), fp: EncodedCountingMonoid(4, SumMonoid(2250)) }, Fingerprint { range: Range(609, 671), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(4, SumMonoid(2980)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(671, 705), items: [671, 687], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 116), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(185, 253), fp: EncodedCountingMonoid(6, SumMonoid(1281)) }, Fingerprint { range: Range(253, 303), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(325, 350), fp: EncodedCountingMonoid(3, SumMonoid(996)) }, Fingerprint { range: Range(350, 376), fp: EncodedCountingMonoid(3, SumMonoid(1084)) }, Fingerprint { range: Range(439, 455), fp: EncodedCountingMonoid(3, SumMonoid(1335)) }, Fingerprint { range: Range(455, 484), fp: EncodedCountingMonoid(3, SumMonoid(1393)) }, Fingerprint { range: Range(544, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(671, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(116, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 185), items: [162], want_response: true }, ItemSet { range: Range(303, 325), items: [314], want_response: true }, ItemSet { range: Range(376, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 439), items: [434], want_response: true }, ItemSet { range: Range(484, 514), items: [488, 492], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 544), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [671, 687], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 60), fp: EncodedCountingMonoid(3, SumMonoid(120)) }], item_sets: [ItemSet { range: Range(116, 162), items: [116, 120, 123, 127, 139, 145], want_response: false }, ItemSet { range: Range(162, 185), items: [], want_response: false }, ItemSet { range: Range(303, 325), items: [303, 307, 314, 319, 321], want_response: false }, ItemSet { range: Range(376, 434), items: [376, 379, 384, 389, 433], want_response: false }, ItemSet { range: Range(434, 439), items: [438], want_response: false }, ItemSet { range: Range(484, 514), items: [484, 493, 495, 500], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 544), items: [535, 541], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(60, 88), items: [60, 77], want_response: true }, ItemSet { range: Range(88, 116), items: [108], want_response: true }, ItemSet { range: Range(185, 237), items: [196, 213], want_response: true }, ItemSet { range: Range(237, 253), items: [237], want_response: true }, ItemSet { range: Range(253, 303), items: [254, 294], want_response: true }, ItemSet { range: Range(325, 328), items: [325, 327], want_response: true }, ItemSet { range: Range(328, 350), items: [328, 334], want_response: true }, ItemSet { range: Range(350, 368), items: [353, 361], want_response: true }, ItemSet { range: Range(368, 376), items: [368], want_response: true }, ItemSet { range: Range(439, 455), items: [441, 445], want_response: true }, ItemSet { range: Range(455, 478), items: [455, 467], want_response: true }, ItemSet { range: Range(478, 484), items: [478], want_response: true }, ItemSet { range: Range(544, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 601), items: [562, 592], want_response: true }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969], provide: [(671, true), (687, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(60, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 116), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(185, 237), items: [185, 192, 199, 223], want_response: false }, ItemSet { range: Range(237, 253), items: [239, 243], want_response: false }, ItemSet { range: Range(253, 303), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(325, 328), items: [327], want_response: false }, ItemSet { range: Range(328, 350), items: [329, 340], want_response: false }, ItemSet { range: Range(350, 368), items: [350, 363], want_response: false }, ItemSet { range: Range(368, 376), items: [371], want_response: false }, ItemSet { range: Range(439, 455), items: [439, 446, 450], want_response: false }, ItemSet { range: Range(455, 478), items: [455, 459], want_response: false }, ItemSet { range: Range(478, 484), items: [479], want_response: false }, ItemSet { range: Range(544, 562), items: [], want_response: false }, ItemSet { range: Range(562, 601), items: [562, 585, 592], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(9, 44), items: [18, 42], want_response: true }, ItemSet { range: Range(44, 60), items: [44], want_response: true }], wants: [116, 120, 123, 127, 139, 145, 303, 307, 319, 321, 376, 379, 384, 389, 433, 438, 484, 493, 495, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 60, 77, 108, 196, 213, 237, 254, 294, 325, 328, 334, 353, 361, 368, 441, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898], provide: [(674, true), (683, true), (690, true), (694, true), (700, true), (142, true), (143, true), (162, true), (390, true), (394, true), (434, true), (488, true), (492, true), (514, true), (528, true), (540, true), (601, true), (605, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 44), items: [9], want_response: false }, ItemSet { range: Range(44, 60), items: [55, 56], want_response: false }], wants: [62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 18, 42, 44], provide: [(116, true), (120, true), (123, true), (127, true), (139, true), (145, true), (303, true), (307, true), (319, true), (321, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (484, true), (493, true), (495, true), (500, true), (517, true), (526, true), (541, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (60, true), (77, true), (108, true), (196, true), (213, true), (237, true), (254, true), (294, true), (325, true), (328, true), (334, true), (353, true), (361, true), (368, true), (441, true), (445, true), (467, true), (478, true), (544, true), (552, true), (705, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [9, 55, 56], provide: [(62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (329, true), (340, true), (350, true), (363, true), (371, true), (439, true), (446, true), (450, true), (459, true), (479, true), (585, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (18, true), (42, true), (44, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(9, true), (55, true), (56, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 60, 77, 108, 116, 120, 123, 127, 139, 145, 196, 213, 237, 254, 294, 303, 307, 314, 319, 321, 325, 327, 328, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 441, 445, 455, 467, 478, 484, 493, 495, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 18, 42, 44]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [671, 687, 116, 120, 123, 127, 139, 145, 303, 307, 319, 321, 376, 379, 384, 389, 433, 438, 484, 493, 495, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 60, 77, 108, 196, 213, 237, 254, 294, 325, 328, 334, 353, 361, 368, 441, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898, 9, 55, 56]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 60, 77, 108, 116, 120, 123, 127, 139, 145, 196, 213, 237, 254, 294, 303, 307, 314, 321, 325, 327, 328, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 441, 445, 455, 467, 478, 484, 493, 495, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(69, SumMonoid(31128)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 327), fp: EncodedCountingMonoid(22, SumMonoid(3899)) }, Fingerprint { range: Range(327, 514), fp: EncodedCountingMonoid(21, SumMonoid(8728)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(13, SumMonoid(7643)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(13, SumMonoid(10858)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 185), fp: EncodedCountingMonoid(12, SumMonoid(1070)) }, Fingerprint { range: Range(185, 327), fp: EncodedCountingMonoid(12, SumMonoid(2938)) }, Fingerprint { range: Range(327, 439), fp: EncodedCountingMonoid(9, SumMonoid(3298)) }, Fingerprint { range: Range(439, 514), fp: EncodedCountingMonoid(8, SumMonoid(3708)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 116), fp: EncodedCountingMonoid(6, SumMonoid(365)) }, Fingerprint { range: Range(116, 185), fp: EncodedCountingMonoid(6, SumMonoid(770)) }, Fingerprint { range: Range(185, 303), fp: EncodedCountingMonoid(5, SumMonoid(1194)) }, Fingerprint { range: Range(303, 327), fp: EncodedCountingMonoid(5, SumMonoid(1570)) }, Fingerprint { range: Range(327, 376), fp: EncodedCountingMonoid(6, SumMonoid(2071)) }, Fingerprint { range: Range(376, 439), fp: EncodedCountingMonoid(6, SumMonoid(2399)) }, Fingerprint { range: Range(439, 484), fp: EncodedCountingMonoid(5, SumMonoid(2286)) }, Fingerprint { range: Range(484, 514), fp: EncodedCountingMonoid(4, SumMonoid(1972)) }, Fingerprint { range: Range(514, 544), fp: EncodedCountingMonoid(4, SumMonoid(2119)) }, Fingerprint { range: Range(544, 609), fp: EncodedCountingMonoid(4, SumMonoid(2250)) }, Fingerprint { range: Range(609, 671), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(4, SumMonoid(2980)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(671, 705), items: [671, 687], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 116), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(185, 253), fp: EncodedCountingMonoid(6, SumMonoid(1281)) }, Fingerprint { range: Range(253, 303), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(327, 350), fp: EncodedCountingMonoid(3, SumMonoid(996)) }, Fingerprint { range: Range(350, 376), fp: EncodedCountingMonoid(3, SumMonoid(1084)) }, Fingerprint { range: Range(439, 455), fp: EncodedCountingMonoid(3, SumMonoid(1335)) }, Fingerprint { range: Range(455, 484), fp: EncodedCountingMonoid(3, SumMonoid(1393)) }, Fingerprint { range: Range(544, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(671, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(116, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 185), items: [162], want_response: true }, ItemSet { range: Range(303, 327), items: [314], want_response: true }, ItemSet { range: Range(376, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 439), items: [434], want_response: true }, ItemSet { range: Range(484, 514), items: [488, 492], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 544), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [671, 687], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 60), fp: EncodedCountingMonoid(3, SumMonoid(120)) }], item_sets: [ItemSet { range: Range(116, 162), items: [116, 120, 123, 127, 139, 145], want_response: false }, ItemSet { range: Range(162, 185), items: [], want_response: false }, ItemSet { range: Range(303, 327), items: [303, 307, 314, 321, 325], want_response: false }, ItemSet { range: Range(376, 434), items: [376, 379, 384, 389, 433], want_response: false }, ItemSet { range: Range(434, 439), items: [438], want_response: false }, ItemSet { range: Range(484, 514), items: [484, 493, 495, 500], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 544), items: [535, 541], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(60, 88), items: [60, 77], want_response: true }, ItemSet { range: Range(88, 116), items: [108], want_response: true }, ItemSet { range: Range(185, 237), items: [196, 213], want_response: true }, ItemSet { range: Range(237, 253), items: [237], want_response: true }, ItemSet { range: Range(253, 303), items: [254, 294], want_response: true }, ItemSet { range: Range(327, 334), items: [327, 328], want_response: true }, ItemSet { range: Range(334, 350), items: [334], want_response: true }, ItemSet { range: Range(350, 368), items: [353, 361], want_response: true }, ItemSet { range: Range(368, 376), items: [368], want_response: true }, ItemSet { range: Range(439, 455), items: [441, 445], want_response: true }, ItemSet { range: Range(455, 478), items: [455, 467], want_response: true }, ItemSet { range: Range(478, 484), items: [478], want_response: true }, ItemSet { range: Range(544, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 601), items: [562, 592], want_response: true }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969], provide: [(671, true), (687, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(60, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 116), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(185, 237), items: [185, 192, 199, 223], want_response: false }, ItemSet { range: Range(237, 253), items: [239, 243], want_response: false }, ItemSet { range: Range(253, 303), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(327, 334), items: [327, 329], want_response: false }, ItemSet { range: Range(334, 350), items: [340], want_response: false }, ItemSet { range: Range(350, 368), items: [350, 363], want_response: false }, ItemSet { range: Range(368, 376), items: [371], want_response: false }, ItemSet { range: Range(439, 455), items: [439, 446, 450], want_response: false }, ItemSet { range: Range(455, 478), items: [455, 459], want_response: false }, ItemSet { range: Range(478, 484), items: [479], want_response: false }, ItemSet { range: Range(544, 562), items: [], want_response: false }, ItemSet { range: Range(562, 601), items: [562, 585, 592], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(9, 44), items: [18, 42], want_response: true }, ItemSet { range: Range(44, 60), items: [44], want_response: true }], wants: [116, 120, 123, 127, 139, 145, 303, 307, 321, 325, 376, 379, 384, 389, 433, 438, 484, 493, 495, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 60, 77, 108, 196, 213, 237, 254, 294, 328, 334, 353, 361, 368, 441, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898], provide: [(674, true), (683, true), (690, true), (694, true), (700, true), (142, true), (143, true), (162, true), (390, true), (394, true), (434, true), (488, true), (492, true), (514, true), (528, true), (540, true), (601, true), (605, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 44), items: [9], want_response: false }, ItemSet { range: Range(44, 60), items: [55, 56], want_response: false }], wants: [62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 18, 42, 44], provide: [(116, true), (120, true), (123, true), (127, true), (139, true), (145, true), (303, true), (307, true), (321, true), (325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (484, true), (493, true), (495, true), (500, true), (517, true), (526, true), (541, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (60, true), (77, true), (108, true), (196, true), (213, true), (237, true), (254, true), (294, true), (328, true), (334, true), (353, true), (361, true), (368, true), (441, true), (445, true), (467, true), (478, true), (544, true), (552, true), (705, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [9, 55, 56], provide: [(62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (329, true), (340, true), (350, true), (363, true), (371, true), (439, true), (446, true), (450, true), (459, true), (479, true), (585, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (18, true), (42, true), (44, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(9, true), (55, true), (56, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 60, 77, 108, 116, 120, 123, 127, 139, 145, 196, 213, 237, 254, 294, 303, 307, 314, 321, 325, 327, 328, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 441, 445, 455, 467, 478, 484, 493, 495, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 18, 42, 44]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [671, 687, 116, 120, 123, 127, 139, 145, 303, 307, 321, 325, 376, 379, 384, 389, 433, 438, 484, 493, 495, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 60, 77, 108, 196, 213, 237, 254, 294, 328, 334, 353, 361, 368, 441, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898, 9, 55, 56]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 60, 77, 108, 120, 123, 127, 139, 145, 196, 213, 237, 254, 294, 303, 307, 314, 321, 325, 327, 328, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 441, 445, 455, 467, 478, 484, 493, 495, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(68, SumMonoid(31012)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 327), fp: EncodedCountingMonoid(21, SumMonoid(3783)) }, Fingerprint { range: Range(327, 514), fp: EncodedCountingMonoid(21, SumMonoid(8728)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(13, SumMonoid(7643)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(13, SumMonoid(10858)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 185), fp: EncodedCountingMonoid(12, SumMonoid(1070)) }, Fingerprint { range: Range(185, 327), fp: EncodedCountingMonoid(12, SumMonoid(2938)) }, Fingerprint { range: Range(327, 439), fp: EncodedCountingMonoid(9, SumMonoid(3298)) }, Fingerprint { range: Range(439, 514), fp: EncodedCountingMonoid(8, SumMonoid(3708)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(6, SumMonoid(365)) }, Fingerprint { range: Range(120, 185), fp: EncodedCountingMonoid(5, SumMonoid(654)) }, Fingerprint { range: Range(185, 303), fp: EncodedCountingMonoid(5, SumMonoid(1194)) }, Fingerprint { range: Range(303, 327), fp: EncodedCountingMonoid(5, SumMonoid(1570)) }, Fingerprint { range: Range(327, 376), fp: EncodedCountingMonoid(6, SumMonoid(2071)) }, Fingerprint { range: Range(376, 439), fp: EncodedCountingMonoid(6, SumMonoid(2399)) }, Fingerprint { range: Range(439, 484), fp: EncodedCountingMonoid(5, SumMonoid(2286)) }, Fingerprint { range: Range(484, 514), fp: EncodedCountingMonoid(4, SumMonoid(1972)) }, Fingerprint { range: Range(514, 544), fp: EncodedCountingMonoid(4, SumMonoid(2119)) }, Fingerprint { range: Range(544, 609), fp: EncodedCountingMonoid(4, SumMonoid(2250)) }, Fingerprint { range: Range(609, 671), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(4, SumMonoid(2980)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(671, 705), items: [671, 687], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(185, 253), fp: EncodedCountingMonoid(6, SumMonoid(1281)) }, Fingerprint { range: Range(253, 303), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(327, 350), fp: EncodedCountingMonoid(3, SumMonoid(996)) }, Fingerprint { range: Range(350, 376), fp: EncodedCountingMonoid(3, SumMonoid(1084)) }, Fingerprint { range: Range(439, 455), fp: EncodedCountingMonoid(3, SumMonoid(1335)) }, Fingerprint { range: Range(455, 484), fp: EncodedCountingMonoid(3, SumMonoid(1393)) }, Fingerprint { range: Range(544, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(671, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 185), items: [162], want_response: true }, ItemSet { range: Range(303, 327), items: [314], want_response: true }, ItemSet { range: Range(376, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 439), items: [434], want_response: true }, ItemSet { range: Range(484, 514), items: [488, 492], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 544), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [671, 687], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 60), fp: EncodedCountingMonoid(3, SumMonoid(120)) }], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 139, 145], want_response: false }, ItemSet { range: Range(162, 185), items: [], want_response: false }, ItemSet { range: Range(303, 327), items: [303, 307, 314, 321, 325], want_response: false }, ItemSet { range: Range(376, 434), items: [376, 379, 384, 389, 433], want_response: false }, ItemSet { range: Range(434, 439), items: [438], want_response: false }, ItemSet { range: Range(484, 514), items: [484, 493, 495, 500], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 544), items: [535, 541], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(60, 88), items: [60, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(185, 237), items: [196, 213], want_response: true }, ItemSet { range: Range(237, 253), items: [237], want_response: true }, ItemSet { range: Range(253, 303), items: [254, 294], want_response: true }, ItemSet { range: Range(327, 334), items: [327, 328], want_response: true }, ItemSet { range: Range(334, 350), items: [334], want_response: true }, ItemSet { range: Range(350, 368), items: [353, 361], want_response: true }, ItemSet { range: Range(368, 376), items: [368], want_response: true }, ItemSet { range: Range(439, 455), items: [441, 445], want_response: true }, ItemSet { range: Range(455, 478), items: [455, 467], want_response: true }, ItemSet { range: Range(478, 484), items: [478], want_response: true }, ItemSet { range: Range(544, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 601), items: [562, 592], want_response: true }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969], provide: [(671, true), (687, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(60, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(185, 237), items: [185, 192, 199, 223], want_response: false }, ItemSet { range: Range(237, 253), items: [239, 243], want_response: false }, ItemSet { range: Range(253, 303), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(327, 334), items: [327, 329], want_response: false }, ItemSet { range: Range(334, 350), items: [340], want_response: false }, ItemSet { range: Range(350, 368), items: [350, 363], want_response: false }, ItemSet { range: Range(368, 376), items: [371], want_response: false }, ItemSet { range: Range(439, 455), items: [439, 446, 450], want_response: false }, ItemSet { range: Range(455, 478), items: [455, 459], want_response: false }, ItemSet { range: Range(478, 484), items: [479], want_response: false }, ItemSet { range: Range(544, 562), items: [], want_response: false }, ItemSet { range: Range(562, 601), items: [562, 585, 592], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(9, 44), items: [18, 42], want_response: true }, ItemSet { range: Range(44, 60), items: [44], want_response: true }], wants: [120, 123, 127, 139, 145, 303, 307, 321, 325, 376, 379, 384, 389, 433, 438, 484, 493, 495, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 60, 77, 108, 196, 213, 237, 254, 294, 328, 334, 353, 361, 368, 441, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898], provide: [(674, true), (683, true), (690, true), (694, true), (700, true), (142, true), (143, true), (162, true), (390, true), (394, true), (434, true), (488, true), (492, true), (514, true), (528, true), (540, true), (601, true), (605, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 44), items: [9], want_response: false }, ItemSet { range: Range(44, 60), items: [55, 56], want_response: false }], wants: [62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 18, 42, 44], provide: [(120, true), (123, true), (127, true), (139, true), (145, true), (303, true), (307, true), (321, true), (325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (484, true), (493, true), (495, true), (500, true), (517, true), (526, true), (541, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (60, true), (77, true), (108, true), (196, true), (213, true), (237, true), (254, true), (294, true), (328, true), (334, true), (353, true), (361, true), (368, true), (441, true), (445, true), (467, true), (478, true), (544, true), (552, true), (705, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [9, 55, 56], provide: [(62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (329, true), (340, true), (350, true), (363, true), (371, true), (439, true), (446, true), (450, true), (459, true), (479, true), (585, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (18, true), (42, true), (44, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(9, true), (55, true), (56, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 60, 77, 108, 120, 123, 127, 139, 145, 196, 213, 237, 254, 294, 303, 307, 314, 321, 325, 327, 328, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 441, 445, 455, 467, 478, 484, 493, 495, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 18, 42, 44]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [671, 687, 120, 123, 127, 139, 145, 303, 307, 321, 325, 376, 379, 384, 389, 433, 438, 484, 493, 495, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 60, 77, 108, 196, 213, 237, 254, 294, 328, 334, 353, 361, 368, 441, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898, 9, 55, 56]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 139, 145, 196, 213, 237, 254, 294, 303, 307, 314, 321, 325, 327, 328, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 441, 445, 455, 467, 478, 484, 493, 495, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(67, SumMonoid(30952)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 328), fp: EncodedCountingMonoid(21, SumMonoid(4050)) }, Fingerprint { range: Range(328, 514), fp: EncodedCountingMonoid(20, SumMonoid(8401)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(13, SumMonoid(7643)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(13, SumMonoid(10858)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 192), fp: EncodedCountingMonoid(13, SumMonoid(1255)) }, Fingerprint { range: Range(192, 328), fp: EncodedCountingMonoid(12, SumMonoid(3080)) }, Fingerprint { range: Range(328, 439), fp: EncodedCountingMonoid(8, SumMonoid(2971)) }, Fingerprint { range: Range(439, 514), fp: EncodedCountingMonoid(8, SumMonoid(3708)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 192), fp: EncodedCountingMonoid(5, SumMonoid(654)) }, Fingerprint { range: Range(192, 307), fp: EncodedCountingMonoid(6, SumMonoid(1497)) }, Fingerprint { range: Range(307, 328), fp: EncodedCountingMonoid(5, SumMonoid(1594)) }, Fingerprint { range: Range(328, 379), fp: EncodedCountingMonoid(6, SumMonoid(2120)) }, Fingerprint { range: Range(379, 439), fp: EncodedCountingMonoid(5, SumMonoid(2023)) }, Fingerprint { range: Range(439, 484), fp: EncodedCountingMonoid(5, SumMonoid(2286)) }, Fingerprint { range: Range(484, 514), fp: EncodedCountingMonoid(4, SumMonoid(1972)) }, Fingerprint { range: Range(514, 544), fp: EncodedCountingMonoid(4, SumMonoid(2119)) }, Fingerprint { range: Range(544, 609), fp: EncodedCountingMonoid(4, SumMonoid(2250)) }, Fingerprint { range: Range(609, 671), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(4, SumMonoid(2980)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(671, 705), items: [671, 687], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(192, 253), fp: EncodedCountingMonoid(5, SumMonoid(1096)) }, Fingerprint { range: Range(253, 307), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(328, 363), fp: EncodedCountingMonoid(3, SumMonoid(1019)) }, Fingerprint { range: Range(439, 455), fp: EncodedCountingMonoid(3, SumMonoid(1335)) }, Fingerprint { range: Range(455, 484), fp: EncodedCountingMonoid(3, SumMonoid(1393)) }, Fingerprint { range: Range(544, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(671, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 192), items: [162, 185], want_response: true }, ItemSet { range: Range(307, 328), items: [314, 327], want_response: true }, ItemSet { range: Range(363, 379), items: [363, 371], want_response: true }, ItemSet { range: Range(379, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 439), items: [434], want_response: true }, ItemSet { range: Range(484, 514), items: [488, 492], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 544), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [671, 687], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 139, 145], want_response: false }, ItemSet { range: Range(162, 192), items: [], want_response: false }, ItemSet { range: Range(307, 328), items: [307, 314, 321, 325, 327], want_response: false }, ItemSet { range: Range(363, 379), items: [368, 376], want_response: false }, ItemSet { range: Range(379, 434), items: [379, 384, 389, 433], want_response: false }, ItemSet { range: Range(434, 439), items: [438], want_response: false }, ItemSet { range: Range(484, 514), items: [484, 493, 495, 500], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 544), items: [535, 541], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(192, 237), items: [196, 213], want_response: true }, ItemSet { range: Range(237, 253), items: [237], want_response: true }, ItemSet { range: Range(253, 303), items: [254, 294], want_response: true }, ItemSet { range: Range(303, 307), items: [303], want_response: true }, ItemSet { range: Range(328, 353), items: [328, 334], want_response: true }, ItemSet { range: Range(353, 363), items: [353, 361], want_response: true }, ItemSet { range: Range(439, 455), items: [441, 445], want_response: true }, ItemSet { range: Range(455, 478), items: [455, 467], want_response: true }, ItemSet { range: Range(478, 484), items: [478], want_response: true }, ItemSet { range: Range(544, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 601), items: [562, 592], want_response: true }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [674, 683, 690, 694, 700, 142, 143, 162, 185, 363, 371, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969], provide: [(671, true), (687, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(192, 237), items: [192, 199, 223], want_response: false }, ItemSet { range: Range(237, 253), items: [239, 243], want_response: false }, ItemSet { range: Range(253, 303), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(303, 307), items: [], want_response: false }, ItemSet { range: Range(328, 353), items: [329, 340, 350], want_response: false }, ItemSet { range: Range(353, 363), items: [], want_response: false }, ItemSet { range: Range(439, 455), items: [439, 446, 450], want_response: false }, ItemSet { range: Range(455, 478), items: [455, 459], want_response: false }, ItemSet { range: Range(478, 484), items: [479], want_response: false }, ItemSet { range: Range(544, 562), items: [], want_response: false }, ItemSet { range: Range(562, 601), items: [562, 585, 592], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [120, 123, 127, 139, 145, 307, 321, 325, 368, 376, 379, 384, 389, 433, 438, 484, 493, 495, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 237, 254, 294, 303, 328, 334, 353, 361, 441, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898], provide: [(674, true), (683, true), (690, true), (694, true), (700, true), (142, true), (143, true), (162, true), (185, true), (363, true), (371, true), (390, true), (394, true), (434, true), (488, true), (492, true), (514, true), (528, true), (540, true), (601, true), (605, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 439, 446, 450, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(120, true), (123, true), (127, true), (139, true), (145, true), (307, true), (321, true), (325, true), (368, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (484, true), (493, true), (495, true), (500, true), (517, true), (526, true), (541, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (196, true), (213, true), (237, true), (254, true), (294, true), (303, true), (328, true), (334, true), (353, true), (361, true), (441, true), (445, true), (467, true), (478, true), (544, true), (552, true), (705, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (329, true), (340, true), (350, true), (439, true), (446, true), (450, true), (459, true), (479, true), (585, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 139, 145, 196, 213, 237, 254, 294, 303, 307, 314, 321, 325, 327, 328, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 441, 445, 455, 467, 478, 484, 493, 495, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 674, 683, 690, 694, 700, 142, 143, 162, 185, 363, 371, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 439, 446, 450, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [671, 687, 120, 123, 127, 139, 145, 307, 321, 325, 368, 376, 379, 384, 389, 433, 438, 484, 493, 495, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 237, 254, 294, 303, 328, 334, 353, 361, 441, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 139, 145, 196, 213, 237, 254, 294, 303, 307, 314, 321, 325, 327, 328, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 441, 445, 455, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(66, SumMonoid(30457)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 327), fp: EncodedCountingMonoid(20, SumMonoid(3723)) }, Fingerprint { range: Range(327, 514), fp: EncodedCountingMonoid(20, SumMonoid(8233)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(13, SumMonoid(7643)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(13, SumMonoid(10858)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 185), fp: EncodedCountingMonoid(12, SumMonoid(1070)) }, Fingerprint { range: Range(185, 327), fp: EncodedCountingMonoid(12, SumMonoid(2938)) }, Fingerprint { range: Range(327, 439), fp: EncodedCountingMonoid(9, SumMonoid(3298)) }, Fingerprint { range: Range(439, 514), fp: EncodedCountingMonoid(8, SumMonoid(3708)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 185), fp: EncodedCountingMonoid(5, SumMonoid(654)) }, Fingerprint { range: Range(185, 303), fp: EncodedCountingMonoid(5, SumMonoid(1194)) }, Fingerprint { range: Range(303, 327), fp: EncodedCountingMonoid(5, SumMonoid(1570)) }, Fingerprint { range: Range(327, 376), fp: EncodedCountingMonoid(6, SumMonoid(2071)) }, Fingerprint { range: Range(376, 439), fp: EncodedCountingMonoid(6, SumMonoid(2399)) }, Fingerprint { range: Range(439, 478), fp: EncodedCountingMonoid(4, SumMonoid(1808)) }, Fingerprint { range: Range(478, 514), fp: EncodedCountingMonoid(4, SumMonoid(1955)) }, Fingerprint { range: Range(514, 544), fp: EncodedCountingMonoid(4, SumMonoid(2119)) }, Fingerprint { range: Range(544, 609), fp: EncodedCountingMonoid(4, SumMonoid(2250)) }, Fingerprint { range: Range(609, 671), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(4, SumMonoid(2980)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(671, 705), items: [671, 687], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(185, 253), fp: EncodedCountingMonoid(6, SumMonoid(1281)) }, Fingerprint { range: Range(253, 303), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(327, 350), fp: EncodedCountingMonoid(3, SumMonoid(996)) }, Fingerprint { range: Range(350, 376), fp: EncodedCountingMonoid(3, SumMonoid(1084)) }, Fingerprint { range: Range(439, 455), fp: EncodedCountingMonoid(3, SumMonoid(1335)) }, Fingerprint { range: Range(544, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(671, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 185), items: [162], want_response: true }, ItemSet { range: Range(303, 327), items: [314], want_response: true }, ItemSet { range: Range(376, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 439), items: [434], want_response: true }, ItemSet { range: Range(455, 478), items: [455, 459], want_response: true }, ItemSet { range: Range(478, 492), items: [479, 488], want_response: true }, ItemSet { range: Range(492, 514), items: [492], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 544), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [671, 687], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 139, 145], want_response: false }, ItemSet { range: Range(162, 185), items: [], want_response: false }, ItemSet { range: Range(303, 327), items: [303, 307, 314, 321, 325], want_response: false }, ItemSet { range: Range(376, 434), items: [376, 379, 384, 389, 433], want_response: false }, ItemSet { range: Range(434, 439), items: [438], want_response: false }, ItemSet { range: Range(455, 478), items: [455, 467], want_response: false }, ItemSet { range: Range(478, 492), items: [478, 484], want_response: false }, ItemSet { range: Range(492, 514), items: [493, 500], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 544), items: [535, 541], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(185, 237), items: [196, 213], want_response: true }, ItemSet { range: Range(237, 253), items: [237], want_response: true }, ItemSet { range: Range(253, 303), items: [254, 294], want_response: true }, ItemSet { range: Range(327, 334), items: [327, 328], want_response: true }, ItemSet { range: Range(334, 350), items: [334], want_response: true }, ItemSet { range: Range(350, 368), items: [353, 361], want_response: true }, ItemSet { range: Range(368, 376), items: [368], want_response: true }, ItemSet { range: Range(439, 455), items: [441, 445], want_response: true }, ItemSet { range: Range(544, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 601), items: [562, 592], want_response: true }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 459, 479, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969], provide: [(671, true), (687, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(185, 237), items: [185, 192, 199, 223], want_response: false }, ItemSet { range: Range(237, 253), items: [239, 243], want_response: false }, ItemSet { range: Range(253, 303), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(327, 334), items: [327, 329], want_response: false }, ItemSet { range: Range(334, 350), items: [340], want_response: false }, ItemSet { range: Range(350, 368), items: [350, 363], want_response: false }, ItemSet { range: Range(368, 376), items: [371], want_response: false }, ItemSet { range: Range(439, 455), items: [439, 446, 450], want_response: false }, ItemSet { range: Range(544, 562), items: [], want_response: false }, ItemSet { range: Range(562, 601), items: [562, 585, 592], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [120, 123, 127, 139, 145, 303, 307, 321, 325, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 237, 254, 294, 328, 334, 353, 361, 368, 441, 445, 544, 552, 705, 715, 779, 781, 861, 892, 898], provide: [(674, true), (683, true), (690, true), (694, true), (700, true), (142, true), (143, true), (162, true), (390, true), (394, true), (434, true), (459, true), (479, true), (488, true), (492, true), (514, true), (528, true), (540, true), (601, true), (605, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(120, true), (123, true), (127, true), (139, true), (145, true), (303, true), (307, true), (321, true), (325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (467, true), (478, true), (484, true), (493, true), (500, true), (517, true), (526, true), (541, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (196, true), (213, true), (237, true), (254, true), (294, true), (328, true), (334, true), (353, true), (361, true), (368, true), (441, true), (445, true), (544, true), (552, true), (705, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (329, true), (340, true), (350, true), (363, true), (371, true), (439, true), (446, true), (450, true), (585, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 139, 145, 196, 213, 237, 254, 294, 303, 307, 314, 321, 325, 327, 328, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 441, 445, 455, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 459, 479, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [671, 687, 120, 123, 127, 139, 145, 303, 307, 321, 325, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 237, 254, 294, 328, 334, 353, 361, 368, 441, 445, 544, 552, 705, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 139, 145, 196, 213, 237, 254, 294, 307, 314, 321, 325, 327, 328, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 441, 445, 455, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(65, SumMonoid(30154)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 328), fp: EncodedCountingMonoid(20, SumMonoid(3747)) }, Fingerprint { range: Range(328, 514), fp: EncodedCountingMonoid(19, SumMonoid(7906)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(13, SumMonoid(7643)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(13, SumMonoid(10858)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 192), fp: EncodedCountingMonoid(13, SumMonoid(1255)) }, Fingerprint { range: Range(192, 328), fp: EncodedCountingMonoid(12, SumMonoid(3080)) }, Fingerprint { range: Range(328, 439), fp: EncodedCountingMonoid(8, SumMonoid(2971)) }, Fingerprint { range: Range(439, 514), fp: EncodedCountingMonoid(8, SumMonoid(3708)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 192), fp: EncodedCountingMonoid(5, SumMonoid(654)) }, Fingerprint { range: Range(192, 307), fp: EncodedCountingMonoid(5, SumMonoid(1194)) }, Fingerprint { range: Range(307, 328), fp: EncodedCountingMonoid(5, SumMonoid(1594)) }, Fingerprint { range: Range(328, 379), fp: EncodedCountingMonoid(6, SumMonoid(2120)) }, Fingerprint { range: Range(379, 439), fp: EncodedCountingMonoid(5, SumMonoid(2023)) }, Fingerprint { range: Range(439, 478), fp: EncodedCountingMonoid(4, SumMonoid(1808)) }, Fingerprint { range: Range(478, 514), fp: EncodedCountingMonoid(4, SumMonoid(1955)) }, Fingerprint { range: Range(514, 544), fp: EncodedCountingMonoid(4, SumMonoid(2119)) }, Fingerprint { range: Range(544, 609), fp: EncodedCountingMonoid(4, SumMonoid(2250)) }, Fingerprint { range: Range(609, 671), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(4, SumMonoid(2980)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(671, 705), items: [671, 687], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(192, 253), fp: EncodedCountingMonoid(5, SumMonoid(1096)) }, Fingerprint { range: Range(253, 307), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(328, 363), fp: EncodedCountingMonoid(3, SumMonoid(1019)) }, Fingerprint { range: Range(439, 455), fp: EncodedCountingMonoid(3, SumMonoid(1335)) }, Fingerprint { range: Range(544, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(671, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 192), items: [162, 185], want_response: true }, ItemSet { range: Range(307, 328), items: [314, 327], want_response: true }, ItemSet { range: Range(363, 379), items: [363, 371], want_response: true }, ItemSet { range: Range(379, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 439), items: [434], want_response: true }, ItemSet { range: Range(455, 478), items: [455, 459], want_response: true }, ItemSet { range: Range(478, 492), items: [479, 488], want_response: true }, ItemSet { range: Range(492, 514), items: [492], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 544), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [671, 687], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 139, 145], want_response: false }, ItemSet { range: Range(162, 192), items: [], want_response: false }, ItemSet { range: Range(307, 328), items: [307, 314, 321, 325, 327], want_response: false }, ItemSet { range: Range(363, 379), items: [368, 376], want_response: false }, ItemSet { range: Range(379, 434), items: [379, 384, 389, 433], want_response: false }, ItemSet { range: Range(434, 439), items: [438], want_response: false }, ItemSet { range: Range(455, 478), items: [455, 467], want_response: false }, ItemSet { range: Range(478, 492), items: [478, 484], want_response: false }, ItemSet { range: Range(492, 514), items: [493, 500], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 544), items: [535, 541], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(192, 237), items: [196, 213], want_response: true }, ItemSet { range: Range(237, 253), items: [237], want_response: true }, ItemSet { range: Range(253, 307), items: [254, 294], want_response: true }, ItemSet { range: Range(328, 353), items: [328, 334], want_response: true }, ItemSet { range: Range(353, 363), items: [353, 361], want_response: true }, ItemSet { range: Range(439, 455), items: [441, 445], want_response: true }, ItemSet { range: Range(544, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 601), items: [562, 592], want_response: true }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [674, 683, 690, 694, 700, 142, 143, 162, 185, 363, 371, 390, 394, 434, 459, 479, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969], provide: [(671, true), (687, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(192, 237), items: [192, 199, 223], want_response: false }, ItemSet { range: Range(237, 253), items: [239, 243], want_response: false }, ItemSet { range: Range(253, 307), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(328, 353), items: [329, 340, 350], want_response: false }, ItemSet { range: Range(353, 363), items: [], want_response: false }, ItemSet { range: Range(439, 455), items: [439, 446, 450], want_response: false }, ItemSet { range: Range(544, 562), items: [], want_response: false }, ItemSet { range: Range(562, 601), items: [562, 585, 592], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [120, 123, 127, 139, 145, 307, 321, 325, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 237, 254, 294, 328, 334, 353, 361, 441, 445, 544, 552, 705, 715, 779, 781, 861, 892, 898], provide: [(674, true), (683, true), (690, true), (694, true), (700, true), (142, true), (143, true), (162, true), (185, true), (363, true), (371, true), (390, true), (394, true), (434, true), (459, true), (479, true), (488, true), (492, true), (514, true), (528, true), (540, true), (601, true), (605, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 439, 446, 450, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(120, true), (123, true), (127, true), (139, true), (145, true), (307, true), (321, true), (325, true), (368, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (467, true), (478, true), (484, true), (493, true), (500, true), (517, true), (526, true), (541, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (196, true), (213, true), (237, true), (254, true), (294, true), (328, true), (334, true), (353, true), (361, true), (441, true), (445, true), (544, true), (552, true), (705, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (329, true), (340, true), (350, true), (439, true), (446, true), (450, true), (585, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 139, 145, 196, 213, 237, 254, 294, 307, 314, 321, 325, 327, 328, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 441, 445, 455, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 674, 683, 690, 694, 700, 142, 143, 162, 185, 363, 371, 390, 394, 434, 459, 479, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 439, 446, 450, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [671, 687, 120, 123, 127, 139, 145, 307, 321, 325, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 237, 254, 294, 328, 334, 353, 361, 441, 445, 544, 552, 705, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 139, 145, 196, 213, 237, 254, 294, 307, 314, 321, 325, 327, 328, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 441, 445, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(64, SumMonoid(29699)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 327), fp: EncodedCountingMonoid(19, SumMonoid(3420)) }, Fingerprint { range: Range(327, 514), fp: EncodedCountingMonoid(19, SumMonoid(7778)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(13, SumMonoid(7643)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(13, SumMonoid(10858)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 185), fp: EncodedCountingMonoid(12, SumMonoid(1070)) }, Fingerprint { range: Range(185, 327), fp: EncodedCountingMonoid(12, SumMonoid(2938)) }, Fingerprint { range: Range(327, 439), fp: EncodedCountingMonoid(9, SumMonoid(3298)) }, Fingerprint { range: Range(439, 514), fp: EncodedCountingMonoid(8, SumMonoid(3708)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 185), fp: EncodedCountingMonoid(5, SumMonoid(654)) }, Fingerprint { range: Range(185, 307), fp: EncodedCountingMonoid(5, SumMonoid(1194)) }, Fingerprint { range: Range(307, 327), fp: EncodedCountingMonoid(4, SumMonoid(1267)) }, Fingerprint { range: Range(327, 376), fp: EncodedCountingMonoid(6, SumMonoid(2071)) }, Fingerprint { range: Range(376, 439), fp: EncodedCountingMonoid(6, SumMonoid(2399)) }, Fingerprint { range: Range(439, 484), fp: EncodedCountingMonoid(4, SumMonoid(1831)) }, Fingerprint { range: Range(484, 514), fp: EncodedCountingMonoid(3, SumMonoid(1477)) }, Fingerprint { range: Range(514, 544), fp: EncodedCountingMonoid(4, SumMonoid(2119)) }, Fingerprint { range: Range(544, 609), fp: EncodedCountingMonoid(4, SumMonoid(2250)) }, Fingerprint { range: Range(609, 671), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(4, SumMonoid(2980)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(671, 705), items: [671, 687], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(185, 253), fp: EncodedCountingMonoid(6, SumMonoid(1281)) }, Fingerprint { range: Range(253, 307), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(327, 350), fp: EncodedCountingMonoid(3, SumMonoid(996)) }, Fingerprint { range: Range(350, 376), fp: EncodedCountingMonoid(3, SumMonoid(1084)) }, Fingerprint { range: Range(439, 455), fp: EncodedCountingMonoid(3, SumMonoid(1335)) }, Fingerprint { range: Range(455, 484), fp: EncodedCountingMonoid(3, SumMonoid(1393)) }, Fingerprint { range: Range(544, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(671, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 185), items: [162], want_response: true }, ItemSet { range: Range(307, 327), items: [314], want_response: true }, ItemSet { range: Range(376, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 439), items: [434], want_response: true }, ItemSet { range: Range(484, 514), items: [488, 492], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 544), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [671, 687], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 139, 145], want_response: false }, ItemSet { range: Range(162, 185), items: [], want_response: false }, ItemSet { range: Range(307, 327), items: [307, 314, 321, 325], want_response: false }, ItemSet { range: Range(376, 434), items: [376, 379, 384, 389, 433], want_response: false }, ItemSet { range: Range(434, 439), items: [438], want_response: false }, ItemSet { range: Range(484, 514), items: [484, 493, 500], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 544), items: [535, 541], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(185, 237), items: [196, 213], want_response: true }, ItemSet { range: Range(237, 253), items: [237], want_response: true }, ItemSet { range: Range(253, 307), items: [254, 294], want_response: true }, ItemSet { range: Range(327, 334), items: [327, 328], want_response: true }, ItemSet { range: Range(334, 350), items: [334], want_response: true }, ItemSet { range: Range(350, 368), items: [353, 361], want_response: true }, ItemSet { range: Range(368, 376), items: [368], want_response: true }, ItemSet { range: Range(439, 455), items: [441, 445], want_response: true }, ItemSet { range: Range(455, 484), items: [467, 478], want_response: true }, ItemSet { range: Range(544, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 601), items: [562, 592], want_response: true }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969], provide: [(671, true), (687, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(185, 237), items: [185, 192, 199, 223], want_response: false }, ItemSet { range: Range(237, 253), items: [239, 243], want_response: false }, ItemSet { range: Range(253, 307), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(327, 334), items: [327, 329], want_response: false }, ItemSet { range: Range(334, 350), items: [340], want_response: false }, ItemSet { range: Range(350, 368), items: [350, 363], want_response: false }, ItemSet { range: Range(368, 376), items: [371], want_response: false }, ItemSet { range: Range(439, 455), items: [439, 446, 450], want_response: false }, ItemSet { range: Range(455, 484), items: [455, 459, 479], want_response: false }, ItemSet { range: Range(544, 562), items: [], want_response: false }, ItemSet { range: Range(562, 601), items: [562, 585, 592], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [120, 123, 127, 139, 145, 307, 321, 325, 376, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 237, 254, 294, 328, 334, 353, 361, 368, 441, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898], provide: [(674, true), (683, true), (690, true), (694, true), (700, true), (142, true), (143, true), (162, true), (390, true), (394, true), (434, true), (488, true), (492, true), (514, true), (528, true), (540, true), (601, true), (605, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(120, true), (123, true), (127, true), (139, true), (145, true), (307, true), (321, true), (325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (484, true), (493, true), (500, true), (517, true), (526, true), (541, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (196, true), (213, true), (237, true), (254, true), (294, true), (328, true), (334, true), (353, true), (361, true), (368, true), (441, true), (445, true), (467, true), (478, true), (544, true), (552, true), (705, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (329, true), (340, true), (350, true), (363, true), (371, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (585, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 139, 145, 196, 213, 237, 254, 294, 307, 314, 321, 325, 327, 328, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 441, 445, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [671, 687, 120, 123, 127, 139, 145, 307, 321, 325, 376, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 237, 254, 294, 328, 334, 353, 361, 368, 441, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 145, 196, 213, 237, 254, 294, 307, 314, 321, 325, 327, 328, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 441, 445, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(63, SumMonoid(29560)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 328), fp: EncodedCountingMonoid(19, SumMonoid(3608)) }, Fingerprint { range: Range(328, 514), fp: EncodedCountingMonoid(18, SumMonoid(7451)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(13, SumMonoid(7643)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(13, SumMonoid(10858)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 192), fp: EncodedCountingMonoid(13, SumMonoid(1255)) }, Fingerprint { range: Range(192, 328), fp: EncodedCountingMonoid(12, SumMonoid(3080)) }, Fingerprint { range: Range(328, 439), fp: EncodedCountingMonoid(8, SumMonoid(2971)) }, Fingerprint { range: Range(439, 514), fp: EncodedCountingMonoid(8, SumMonoid(3708)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 192), fp: EncodedCountingMonoid(4, SumMonoid(515)) }, Fingerprint { range: Range(192, 307), fp: EncodedCountingMonoid(5, SumMonoid(1194)) }, Fingerprint { range: Range(307, 328), fp: EncodedCountingMonoid(5, SumMonoid(1594)) }, Fingerprint { range: Range(328, 379), fp: EncodedCountingMonoid(6, SumMonoid(2120)) }, Fingerprint { range: Range(379, 439), fp: EncodedCountingMonoid(5, SumMonoid(2023)) }, Fingerprint { range: Range(439, 484), fp: EncodedCountingMonoid(4, SumMonoid(1831)) }, Fingerprint { range: Range(484, 514), fp: EncodedCountingMonoid(3, SumMonoid(1477)) }, Fingerprint { range: Range(514, 544), fp: EncodedCountingMonoid(4, SumMonoid(2119)) }, Fingerprint { range: Range(544, 609), fp: EncodedCountingMonoid(4, SumMonoid(2250)) }, Fingerprint { range: Range(609, 671), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(4, SumMonoid(2980)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(671, 705), items: [671, 687], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(192, 253), fp: EncodedCountingMonoid(5, SumMonoid(1096)) }, Fingerprint { range: Range(253, 307), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(328, 363), fp: EncodedCountingMonoid(3, SumMonoid(1019)) }, Fingerprint { range: Range(439, 455), fp: EncodedCountingMonoid(3, SumMonoid(1335)) }, Fingerprint { range: Range(455, 484), fp: EncodedCountingMonoid(3, SumMonoid(1393)) }, Fingerprint { range: Range(544, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(671, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 192), items: [162, 185], want_response: true }, ItemSet { range: Range(307, 328), items: [314, 327], want_response: true }, ItemSet { range: Range(363, 379), items: [363, 371], want_response: true }, ItemSet { range: Range(379, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 439), items: [434], want_response: true }, ItemSet { range: Range(484, 514), items: [488, 492], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 544), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [671, 687], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 192), items: [], want_response: false }, ItemSet { range: Range(307, 328), items: [307, 314, 321, 325, 327], want_response: false }, ItemSet { range: Range(363, 379), items: [368, 376], want_response: false }, ItemSet { range: Range(379, 434), items: [379, 384, 389, 433], want_response: false }, ItemSet { range: Range(434, 439), items: [438], want_response: false }, ItemSet { range: Range(484, 514), items: [484, 493, 500], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 544), items: [535, 541], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(192, 237), items: [196, 213], want_response: true }, ItemSet { range: Range(237, 253), items: [237], want_response: true }, ItemSet { range: Range(253, 307), items: [254, 294], want_response: true }, ItemSet { range: Range(328, 353), items: [328, 334], want_response: true }, ItemSet { range: Range(353, 363), items: [353, 361], want_response: true }, ItemSet { range: Range(439, 455), items: [441, 445], want_response: true }, ItemSet { range: Range(455, 484), items: [467, 478], want_response: true }, ItemSet { range: Range(544, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 601), items: [562, 592], want_response: true }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [674, 683, 690, 694, 700, 142, 143, 162, 185, 363, 371, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969], provide: [(671, true), (687, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(192, 237), items: [192, 199, 223], want_response: false }, ItemSet { range: Range(237, 253), items: [239, 243], want_response: false }, ItemSet { range: Range(253, 307), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(328, 353), items: [329, 340, 350], want_response: false }, ItemSet { range: Range(353, 363), items: [], want_response: false }, ItemSet { range: Range(439, 455), items: [439, 446, 450], want_response: false }, ItemSet { range: Range(455, 484), items: [455, 459, 479], want_response: false }, ItemSet { range: Range(544, 562), items: [], want_response: false }, ItemSet { range: Range(562, 601), items: [562, 585, 592], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [120, 123, 127, 145, 307, 321, 325, 368, 376, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 237, 254, 294, 328, 334, 353, 361, 441, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898], provide: [(674, true), (683, true), (690, true), (694, true), (700, true), (142, true), (143, true), (162, true), (185, true), (363, true), (371, true), (390, true), (394, true), (434, true), (488, true), (492, true), (514, true), (528, true), (540, true), (601, true), (605, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 439, 446, 450, 455, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(120, true), (123, true), (127, true), (145, true), (307, true), (321, true), (325, true), (368, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (484, true), (493, true), (500, true), (517, true), (526, true), (541, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (196, true), (213, true), (237, true), (254, true), (294, true), (328, true), (334, true), (353, true), (361, true), (441, true), (445, true), (467, true), (478, true), (544, true), (552, true), (705, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (329, true), (340, true), (350, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (585, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 145, 196, 213, 237, 254, 294, 307, 314, 321, 325, 327, 328, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 441, 445, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 674, 683, 690, 694, 700, 142, 143, 162, 185, 363, 371, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 439, 446, 450, 455, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [671, 687, 120, 123, 127, 145, 307, 321, 325, 368, 376, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 237, 254, 294, 328, 334, 353, 361, 441, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 145, 196, 213, 237, 254, 294, 307, 314, 321, 325, 327, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 441, 445, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(62, SumMonoid(29232)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 327), fp: EncodedCountingMonoid(18, SumMonoid(3281)) }, Fingerprint { range: Range(327, 514), fp: EncodedCountingMonoid(18, SumMonoid(7450)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(13, SumMonoid(7643)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(13, SumMonoid(10858)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 185), fp: EncodedCountingMonoid(12, SumMonoid(1070)) }, Fingerprint { range: Range(185, 327), fp: EncodedCountingMonoid(12, SumMonoid(2938)) }, Fingerprint { range: Range(327, 439), fp: EncodedCountingMonoid(9, SumMonoid(3298)) }, Fingerprint { range: Range(439, 514), fp: EncodedCountingMonoid(8, SumMonoid(3708)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 185), fp: EncodedCountingMonoid(4, SumMonoid(515)) }, Fingerprint { range: Range(185, 307), fp: EncodedCountingMonoid(5, SumMonoid(1194)) }, Fingerprint { range: Range(307, 327), fp: EncodedCountingMonoid(4, SumMonoid(1267)) }, Fingerprint { range: Range(327, 379), fp: EncodedCountingMonoid(6, SumMonoid(2119)) }, Fingerprint { range: Range(379, 439), fp: EncodedCountingMonoid(5, SumMonoid(2023)) }, Fingerprint { range: Range(439, 484), fp: EncodedCountingMonoid(4, SumMonoid(1831)) }, Fingerprint { range: Range(484, 514), fp: EncodedCountingMonoid(3, SumMonoid(1477)) }, Fingerprint { range: Range(514, 544), fp: EncodedCountingMonoid(4, SumMonoid(2119)) }, Fingerprint { range: Range(544, 609), fp: EncodedCountingMonoid(4, SumMonoid(2250)) }, Fingerprint { range: Range(609, 671), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(4, SumMonoid(2980)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(671, 705), items: [671, 687], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(185, 253), fp: EncodedCountingMonoid(6, SumMonoid(1281)) }, Fingerprint { range: Range(253, 307), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(327, 350), fp: EncodedCountingMonoid(3, SumMonoid(996)) }, Fingerprint { range: Range(350, 379), fp: EncodedCountingMonoid(3, SumMonoid(1084)) }, Fingerprint { range: Range(439, 455), fp: EncodedCountingMonoid(3, SumMonoid(1335)) }, Fingerprint { range: Range(455, 484), fp: EncodedCountingMonoid(3, SumMonoid(1393)) }, Fingerprint { range: Range(544, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(671, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 185), items: [162], want_response: true }, ItemSet { range: Range(307, 327), items: [314], want_response: true }, ItemSet { range: Range(379, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 439), items: [434], want_response: true }, ItemSet { range: Range(484, 514), items: [488, 492], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 544), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [671, 687], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 185), items: [], want_response: false }, ItemSet { range: Range(307, 327), items: [307, 314, 321, 325], want_response: false }, ItemSet { range: Range(379, 434), items: [379, 384, 389, 433], want_response: false }, ItemSet { range: Range(434, 439), items: [438], want_response: false }, ItemSet { range: Range(484, 514), items: [484, 493, 500], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 544), items: [535, 541], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(185, 237), items: [196, 213], want_response: true }, ItemSet { range: Range(237, 253), items: [237], want_response: true }, ItemSet { range: Range(253, 307), items: [254, 294], want_response: true }, ItemSet { range: Range(327, 350), items: [327, 334], want_response: true }, ItemSet { range: Range(350, 368), items: [353, 361], want_response: true }, ItemSet { range: Range(368, 379), items: [368, 376], want_response: true }, ItemSet { range: Range(439, 455), items: [441, 445], want_response: true }, ItemSet { range: Range(455, 484), items: [467, 478], want_response: true }, ItemSet { range: Range(544, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 601), items: [562, 592], want_response: true }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969], provide: [(671, true), (687, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(185, 237), items: [185, 192, 199, 223], want_response: false }, ItemSet { range: Range(237, 253), items: [239, 243], want_response: false }, ItemSet { range: Range(253, 307), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(327, 350), items: [327, 329, 340], want_response: false }, ItemSet { range: Range(350, 368), items: [350, 363], want_response: false }, ItemSet { range: Range(368, 379), items: [371], want_response: false }, ItemSet { range: Range(439, 455), items: [439, 446, 450], want_response: false }, ItemSet { range: Range(455, 484), items: [455, 459, 479], want_response: false }, ItemSet { range: Range(544, 562), items: [], want_response: false }, ItemSet { range: Range(562, 601), items: [562, 585, 592], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [120, 123, 127, 145, 307, 321, 325, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 237, 254, 294, 334, 353, 361, 368, 376, 441, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898], provide: [(674, true), (683, true), (690, true), (694, true), (700, true), (142, true), (143, true), (162, true), (390, true), (394, true), (434, true), (488, true), (492, true), (514, true), (528, true), (540, true), (601, true), (605, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(120, true), (123, true), (127, true), (145, true), (307, true), (321, true), (325, true), (379, true), (384, true), (389, true), (433, true), (438, true), (484, true), (493, true), (500, true), (517, true), (526, true), (541, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (196, true), (213, true), (237, true), (254, true), (294, true), (334, true), (353, true), (361, true), (368, true), (376, true), (441, true), (445, true), (467, true), (478, true), (544, true), (552, true), (705, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (329, true), (340, true), (350, true), (363, true), (371, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (585, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 145, 196, 213, 237, 254, 294, 307, 314, 321, 325, 327, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 441, 445, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [671, 687, 120, 123, 127, 145, 307, 321, 325, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 237, 254, 294, 334, 353, 361, 368, 376, 441, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 145, 196, 213, 237, 254, 294, 307, 314, 321, 325, 327, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(61, SumMonoid(28791)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 327), fp: EncodedCountingMonoid(18, SumMonoid(3281)) }, Fingerprint { range: Range(327, 514), fp: EncodedCountingMonoid(17, SumMonoid(7009)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(13, SumMonoid(7643)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(13, SumMonoid(10858)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 185), fp: EncodedCountingMonoid(12, SumMonoid(1070)) }, Fingerprint { range: Range(185, 327), fp: EncodedCountingMonoid(12, SumMonoid(2938)) }, Fingerprint { range: Range(327, 439), fp: EncodedCountingMonoid(9, SumMonoid(3298)) }, Fingerprint { range: Range(439, 514), fp: EncodedCountingMonoid(8, SumMonoid(3708)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 185), fp: EncodedCountingMonoid(4, SumMonoid(515)) }, Fingerprint { range: Range(185, 307), fp: EncodedCountingMonoid(5, SumMonoid(1194)) }, Fingerprint { range: Range(307, 327), fp: EncodedCountingMonoid(4, SumMonoid(1267)) }, Fingerprint { range: Range(327, 379), fp: EncodedCountingMonoid(6, SumMonoid(2119)) }, Fingerprint { range: Range(379, 439), fp: EncodedCountingMonoid(5, SumMonoid(2023)) }, Fingerprint { range: Range(439, 484), fp: EncodedCountingMonoid(3, SumMonoid(1390)) }, Fingerprint { range: Range(484, 514), fp: EncodedCountingMonoid(3, SumMonoid(1477)) }, Fingerprint { range: Range(514, 544), fp: EncodedCountingMonoid(4, SumMonoid(2119)) }, Fingerprint { range: Range(544, 609), fp: EncodedCountingMonoid(4, SumMonoid(2250)) }, Fingerprint { range: Range(609, 671), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(4, SumMonoid(2980)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(671, 705), items: [671, 687], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(185, 253), fp: EncodedCountingMonoid(6, SumMonoid(1281)) }, Fingerprint { range: Range(253, 307), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(327, 350), fp: EncodedCountingMonoid(3, SumMonoid(996)) }, Fingerprint { range: Range(350, 379), fp: EncodedCountingMonoid(3, SumMonoid(1084)) }, Fingerprint { range: Range(439, 455), fp: EncodedCountingMonoid(3, SumMonoid(1335)) }, Fingerprint { range: Range(455, 484), fp: EncodedCountingMonoid(3, SumMonoid(1393)) }, Fingerprint { range: Range(544, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(671, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 185), items: [162], want_response: true }, ItemSet { range: Range(307, 327), items: [314], want_response: true }, ItemSet { range: Range(379, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 439), items: [434], want_response: true }, ItemSet { range: Range(484, 514), items: [488, 492], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 544), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [671, 687], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 185), items: [], want_response: false }, ItemSet { range: Range(307, 327), items: [307, 314, 321, 325], want_response: false }, ItemSet { range: Range(379, 434), items: [379, 384, 389, 433], want_response: false }, ItemSet { range: Range(434, 439), items: [438], want_response: false }, ItemSet { range: Range(484, 514), items: [484, 493, 500], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 544), items: [535, 541], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(185, 237), items: [196, 213], want_response: true }, ItemSet { range: Range(237, 253), items: [237], want_response: true }, ItemSet { range: Range(253, 307), items: [254, 294], want_response: true }, ItemSet { range: Range(327, 350), items: [327, 334], want_response: true }, ItemSet { range: Range(350, 368), items: [353, 361], want_response: true }, ItemSet { range: Range(368, 379), items: [368, 376], want_response: true }, ItemSet { range: Range(439, 455), items: [445], want_response: true }, ItemSet { range: Range(455, 484), items: [467, 478], want_response: true }, ItemSet { range: Range(544, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 601), items: [562, 592], want_response: true }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969], provide: [(671, true), (687, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(185, 237), items: [185, 192, 199, 223], want_response: false }, ItemSet { range: Range(237, 253), items: [239, 243], want_response: false }, ItemSet { range: Range(253, 307), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(327, 350), items: [327, 329, 340], want_response: false }, ItemSet { range: Range(350, 368), items: [350, 363], want_response: false }, ItemSet { range: Range(368, 379), items: [371], want_response: false }, ItemSet { range: Range(439, 455), items: [439, 446, 450], want_response: false }, ItemSet { range: Range(455, 484), items: [455, 459, 479], want_response: false }, ItemSet { range: Range(544, 562), items: [], want_response: false }, ItemSet { range: Range(562, 601), items: [562, 585, 592], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [120, 123, 127, 145, 307, 321, 325, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 237, 254, 294, 334, 353, 361, 368, 376, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898], provide: [(674, true), (683, true), (690, true), (694, true), (700, true), (142, true), (143, true), (162, true), (390, true), (394, true), (434, true), (488, true), (492, true), (514, true), (528, true), (540, true), (601, true), (605, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(120, true), (123, true), (127, true), (145, true), (307, true), (321, true), (325, true), (379, true), (384, true), (389, true), (433, true), (438, true), (484, true), (493, true), (500, true), (517, true), (526, true), (541, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (196, true), (213, true), (237, true), (254, true), (294, true), (334, true), (353, true), (361, true), (368, true), (376, true), (445, true), (467, true), (478, true), (544, true), (552, true), (705, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (329, true), (340, true), (350, true), (363, true), (371, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (585, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 145, 196, 213, 237, 254, 294, 307, 314, 321, 325, 327, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [671, 687, 120, 123, 127, 145, 307, 321, 325, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 237, 254, 294, 334, 353, 361, 368, 376, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 145, 196, 213, 254, 294, 307, 314, 321, 325, 327, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(60, SumMonoid(28554)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 327), fp: EncodedCountingMonoid(17, SumMonoid(3044)) }, Fingerprint { range: Range(327, 514), fp: EncodedCountingMonoid(17, SumMonoid(7009)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(13, SumMonoid(7643)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(13, SumMonoid(10858)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 185), fp: EncodedCountingMonoid(12, SumMonoid(1070)) }, Fingerprint { range: Range(185, 327), fp: EncodedCountingMonoid(12, SumMonoid(2938)) }, Fingerprint { range: Range(327, 439), fp: EncodedCountingMonoid(9, SumMonoid(3298)) }, Fingerprint { range: Range(439, 514), fp: EncodedCountingMonoid(8, SumMonoid(3708)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 185), fp: EncodedCountingMonoid(4, SumMonoid(515)) }, Fingerprint { range: Range(185, 307), fp: EncodedCountingMonoid(4, SumMonoid(957)) }, Fingerprint { range: Range(307, 327), fp: EncodedCountingMonoid(4, SumMonoid(1267)) }, Fingerprint { range: Range(327, 379), fp: EncodedCountingMonoid(6, SumMonoid(2119)) }, Fingerprint { range: Range(379, 439), fp: EncodedCountingMonoid(5, SumMonoid(2023)) }, Fingerprint { range: Range(439, 484), fp: EncodedCountingMonoid(3, SumMonoid(1390)) }, Fingerprint { range: Range(484, 514), fp: EncodedCountingMonoid(3, SumMonoid(1477)) }, Fingerprint { range: Range(514, 544), fp: EncodedCountingMonoid(4, SumMonoid(2119)) }, Fingerprint { range: Range(544, 609), fp: EncodedCountingMonoid(4, SumMonoid(2250)) }, Fingerprint { range: Range(609, 671), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(4, SumMonoid(2980)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(671, 705), items: [671, 687], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(185, 253), fp: EncodedCountingMonoid(6, SumMonoid(1281)) }, Fingerprint { range: Range(253, 307), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(327, 350), fp: EncodedCountingMonoid(3, SumMonoid(996)) }, Fingerprint { range: Range(350, 379), fp: EncodedCountingMonoid(3, SumMonoid(1084)) }, Fingerprint { range: Range(439, 455), fp: EncodedCountingMonoid(3, SumMonoid(1335)) }, Fingerprint { range: Range(455, 484), fp: EncodedCountingMonoid(3, SumMonoid(1393)) }, Fingerprint { range: Range(544, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(671, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 185), items: [162], want_response: true }, ItemSet { range: Range(307, 327), items: [314], want_response: true }, ItemSet { range: Range(379, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 439), items: [434], want_response: true }, ItemSet { range: Range(484, 514), items: [488, 492], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 544), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [671, 687], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 185), items: [], want_response: false }, ItemSet { range: Range(307, 327), items: [307, 314, 321, 325], want_response: false }, ItemSet { range: Range(379, 434), items: [379, 384, 389, 433], want_response: false }, ItemSet { range: Range(434, 439), items: [438], want_response: false }, ItemSet { range: Range(484, 514), items: [484, 493, 500], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 544), items: [535, 541], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(185, 253), items: [196, 213], want_response: true }, ItemSet { range: Range(253, 307), items: [254, 294], want_response: true }, ItemSet { range: Range(327, 350), items: [327, 334], want_response: true }, ItemSet { range: Range(350, 368), items: [353, 361], want_response: true }, ItemSet { range: Range(368, 379), items: [368, 376], want_response: true }, ItemSet { range: Range(439, 455), items: [445], want_response: true }, ItemSet { range: Range(455, 484), items: [467, 478], want_response: true }, ItemSet { range: Range(544, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 601), items: [562, 592], want_response: true }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969], provide: [(671, true), (687, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(185, 253), items: [185, 192, 199, 223, 239, 243], want_response: false }, ItemSet { range: Range(253, 307), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(327, 350), items: [327, 329, 340], want_response: false }, ItemSet { range: Range(350, 368), items: [350, 363], want_response: false }, ItemSet { range: Range(368, 379), items: [371], want_response: false }, ItemSet { range: Range(439, 455), items: [439, 446, 450], want_response: false }, ItemSet { range: Range(455, 484), items: [455, 459, 479], want_response: false }, ItemSet { range: Range(544, 562), items: [], want_response: false }, ItemSet { range: Range(562, 601), items: [562, 585, 592], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [120, 123, 127, 145, 307, 321, 325, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 254, 294, 334, 353, 361, 368, 376, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898], provide: [(674, true), (683, true), (690, true), (694, true), (700, true), (142, true), (143, true), (162, true), (390, true), (394, true), (434, true), (488, true), (492, true), (514, true), (528, true), (540, true), (601, true), (605, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(120, true), (123, true), (127, true), (145, true), (307, true), (321, true), (325, true), (379, true), (384, true), (389, true), (433, true), (438, true), (484, true), (493, true), (500, true), (517, true), (526, true), (541, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (196, true), (213, true), (254, true), (294, true), (334, true), (353, true), (361, true), (368, true), (376, true), (445, true), (467, true), (478, true), (544, true), (552, true), (705, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (329, true), (340, true), (350, true), (363, true), (371, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (585, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 145, 196, 213, 254, 294, 307, 314, 321, 325, 327, 334, 353, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [671, 687, 120, 123, 127, 145, 307, 321, 325, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 254, 294, 334, 353, 361, 368, 376, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 145, 196, 213, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(59, SumMonoid(28201)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 327), fp: EncodedCountingMonoid(17, SumMonoid(3044)) }, Fingerprint { range: Range(327, 514), fp: EncodedCountingMonoid(16, SumMonoid(6656)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(13, SumMonoid(7643)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(13, SumMonoid(10858)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 185), fp: EncodedCountingMonoid(12, SumMonoid(1070)) }, Fingerprint { range: Range(185, 327), fp: EncodedCountingMonoid(12, SumMonoid(2938)) }, Fingerprint { range: Range(327, 439), fp: EncodedCountingMonoid(9, SumMonoid(3298)) }, Fingerprint { range: Range(439, 514), fp: EncodedCountingMonoid(8, SumMonoid(3708)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 185), fp: EncodedCountingMonoid(4, SumMonoid(515)) }, Fingerprint { range: Range(185, 307), fp: EncodedCountingMonoid(4, SumMonoid(957)) }, Fingerprint { range: Range(307, 327), fp: EncodedCountingMonoid(4, SumMonoid(1267)) }, Fingerprint { range: Range(327, 379), fp: EncodedCountingMonoid(5, SumMonoid(1766)) }, Fingerprint { range: Range(379, 439), fp: EncodedCountingMonoid(5, SumMonoid(2023)) }, Fingerprint { range: Range(439, 484), fp: EncodedCountingMonoid(3, SumMonoid(1390)) }, Fingerprint { range: Range(484, 514), fp: EncodedCountingMonoid(3, SumMonoid(1477)) }, Fingerprint { range: Range(514, 544), fp: EncodedCountingMonoid(4, SumMonoid(2119)) }, Fingerprint { range: Range(544, 609), fp: EncodedCountingMonoid(4, SumMonoid(2250)) }, Fingerprint { range: Range(609, 671), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(4, SumMonoid(2980)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(671, 705), items: [671, 687], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(185, 253), fp: EncodedCountingMonoid(6, SumMonoid(1281)) }, Fingerprint { range: Range(253, 307), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(327, 350), fp: EncodedCountingMonoid(3, SumMonoid(996)) }, Fingerprint { range: Range(350, 379), fp: EncodedCountingMonoid(3, SumMonoid(1084)) }, Fingerprint { range: Range(439, 455), fp: EncodedCountingMonoid(3, SumMonoid(1335)) }, Fingerprint { range: Range(455, 484), fp: EncodedCountingMonoid(3, SumMonoid(1393)) }, Fingerprint { range: Range(544, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(671, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 185), items: [162], want_response: true }, ItemSet { range: Range(307, 327), items: [314], want_response: true }, ItemSet { range: Range(379, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 439), items: [434], want_response: true }, ItemSet { range: Range(484, 514), items: [488, 492], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 544), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [671, 687], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 185), items: [], want_response: false }, ItemSet { range: Range(307, 327), items: [307, 314, 321, 325], want_response: false }, ItemSet { range: Range(379, 434), items: [379, 384, 389, 433], want_response: false }, ItemSet { range: Range(434, 439), items: [438], want_response: false }, ItemSet { range: Range(484, 514), items: [484, 493, 500], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 544), items: [535, 541], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(185, 253), items: [196, 213], want_response: true }, ItemSet { range: Range(253, 307), items: [254, 294], want_response: true }, ItemSet { range: Range(327, 350), items: [327, 334], want_response: true }, ItemSet { range: Range(350, 376), items: [361, 368], want_response: true }, ItemSet { range: Range(376, 379), items: [376], want_response: true }, ItemSet { range: Range(439, 455), items: [445], want_response: true }, ItemSet { range: Range(455, 484), items: [467, 478], want_response: true }, ItemSet { range: Range(544, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 601), items: [562, 592], want_response: true }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969], provide: [(671, true), (687, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(185, 253), items: [185, 192, 199, 223, 239, 243], want_response: false }, ItemSet { range: Range(253, 307), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(327, 350), items: [327, 329, 340], want_response: false }, ItemSet { range: Range(350, 376), items: [350, 363, 371], want_response: false }, ItemSet { range: Range(376, 379), items: [], want_response: false }, ItemSet { range: Range(439, 455), items: [439, 446, 450], want_response: false }, ItemSet { range: Range(455, 484), items: [455, 459, 479], want_response: false }, ItemSet { range: Range(544, 562), items: [], want_response: false }, ItemSet { range: Range(562, 601), items: [562, 585, 592], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [120, 123, 127, 145, 307, 321, 325, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 254, 294, 334, 361, 368, 376, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898], provide: [(674, true), (683, true), (690, true), (694, true), (700, true), (142, true), (143, true), (162, true), (390, true), (394, true), (434, true), (488, true), (492, true), (514, true), (528, true), (540, true), (601, true), (605, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(120, true), (123, true), (127, true), (145, true), (307, true), (321, true), (325, true), (379, true), (384, true), (389, true), (433, true), (438, true), (484, true), (493, true), (500, true), (517, true), (526, true), (541, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (196, true), (213, true), (254, true), (294, true), (334, true), (361, true), (368, true), (376, true), (445, true), (467, true), (478, true), (544, true), (552, true), (705, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (329, true), (340, true), (350, true), (363, true), (371, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (585, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 145, 196, 213, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [671, 687, 120, 123, 127, 145, 307, 321, 325, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 254, 294, 334, 361, 368, 376, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 145, 196, 213, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(59, SumMonoid(28201)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 327), fp: EncodedCountingMonoid(17, SumMonoid(3044)) }, Fingerprint { range: Range(327, 514), fp: EncodedCountingMonoid(16, SumMonoid(6656)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(13, SumMonoid(7643)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(13, SumMonoid(10858)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 185), fp: EncodedCountingMonoid(12, SumMonoid(1070)) }, Fingerprint { range: Range(185, 327), fp: EncodedCountingMonoid(12, SumMonoid(2938)) }, Fingerprint { range: Range(327, 439), fp: EncodedCountingMonoid(9, SumMonoid(3298)) }, Fingerprint { range: Range(439, 514), fp: EncodedCountingMonoid(8, SumMonoid(3708)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 185), fp: EncodedCountingMonoid(4, SumMonoid(515)) }, Fingerprint { range: Range(185, 307), fp: EncodedCountingMonoid(4, SumMonoid(957)) }, Fingerprint { range: Range(307, 327), fp: EncodedCountingMonoid(4, SumMonoid(1267)) }, Fingerprint { range: Range(327, 379), fp: EncodedCountingMonoid(5, SumMonoid(1766)) }, Fingerprint { range: Range(379, 439), fp: EncodedCountingMonoid(5, SumMonoid(2023)) }, Fingerprint { range: Range(439, 484), fp: EncodedCountingMonoid(3, SumMonoid(1390)) }, Fingerprint { range: Range(484, 514), fp: EncodedCountingMonoid(3, SumMonoid(1477)) }, Fingerprint { range: Range(514, 544), fp: EncodedCountingMonoid(4, SumMonoid(2119)) }, Fingerprint { range: Range(544, 609), fp: EncodedCountingMonoid(4, SumMonoid(2250)) }, Fingerprint { range: Range(609, 671), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(4, SumMonoid(2980)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(671, 705), items: [671, 687], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(185, 253), fp: EncodedCountingMonoid(6, SumMonoid(1281)) }, Fingerprint { range: Range(253, 307), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(327, 350), fp: EncodedCountingMonoid(3, SumMonoid(996)) }, Fingerprint { range: Range(350, 379), fp: EncodedCountingMonoid(3, SumMonoid(1084)) }, Fingerprint { range: Range(439, 455), fp: EncodedCountingMonoid(3, SumMonoid(1335)) }, Fingerprint { range: Range(455, 484), fp: EncodedCountingMonoid(3, SumMonoid(1393)) }, Fingerprint { range: Range(544, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(671, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 185), items: [162], want_response: true }, ItemSet { range: Range(307, 327), items: [314], want_response: true }, ItemSet { range: Range(379, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 439), items: [434], want_response: true }, ItemSet { range: Range(484, 514), items: [488, 492], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 544), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [671, 687], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 185), items: [], want_response: false }, ItemSet { range: Range(307, 327), items: [307, 314, 321, 325], want_response: false }, ItemSet { range: Range(379, 434), items: [379, 384, 389, 433], want_response: false }, ItemSet { range: Range(434, 439), items: [438], want_response: false }, ItemSet { range: Range(484, 514), items: [484, 493, 500], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 544), items: [535, 541], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(185, 253), items: [196, 213], want_response: true }, ItemSet { range: Range(253, 307), items: [254, 294], want_response: true }, ItemSet { range: Range(327, 350), items: [327, 334], want_response: true }, ItemSet { range: Range(350, 376), items: [361, 368], want_response: true }, ItemSet { range: Range(376, 379), items: [376], want_response: true }, ItemSet { range: Range(439, 455), items: [445], want_response: true }, ItemSet { range: Range(455, 484), items: [467, 478], want_response: true }, ItemSet { range: Range(544, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 601), items: [562, 592], want_response: true }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969], provide: [(671, true), (687, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(185, 253), items: [185, 192, 199, 223, 239, 243], want_response: false }, ItemSet { range: Range(253, 307), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(327, 350), items: [327, 329, 340], want_response: false }, ItemSet { range: Range(350, 376), items: [350, 363, 371], want_response: false }, ItemSet { range: Range(376, 379), items: [], want_response: false }, ItemSet { range: Range(439, 455), items: [439, 446, 450], want_response: false }, ItemSet { range: Range(455, 484), items: [455, 459, 479], want_response: false }, ItemSet { range: Range(544, 562), items: [], want_response: false }, ItemSet { range: Range(562, 601), items: [562, 585, 592], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [120, 123, 127, 145, 307, 321, 325, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 254, 294, 334, 361, 368, 376, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898], provide: [(674, true), (683, true), (690, true), (694, true), (700, true), (142, true), (143, true), (162, true), (390, true), (394, true), (434, true), (488, true), (492, true), (514, true), (528, true), (540, true), (601, true), (605, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(120, true), (123, true), (127, true), (145, true), (307, true), (321, true), (325, true), (379, true), (384, true), (389, true), (433, true), (438, true), (484, true), (493, true), (500, true), (517, true), (526, true), (541, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (196, true), (213, true), (254, true), (294, true), (334, true), (361, true), (368, true), (376, true), (445, true), (467, true), (478, true), (544, true), (552, true), (705, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (329, true), (340, true), (350, true), (363, true), (371, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (585, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 145, 196, 213, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [671, 687, 120, 123, 127, 145, 307, 321, 325, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 254, 294, 334, 361, 368, 376, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 145, 196, 213, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(59, SumMonoid(28201)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 327), fp: EncodedCountingMonoid(17, SumMonoid(3044)) }, Fingerprint { range: Range(327, 514), fp: EncodedCountingMonoid(16, SumMonoid(6656)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(13, SumMonoid(7643)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(13, SumMonoid(10858)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 185), fp: EncodedCountingMonoid(12, SumMonoid(1070)) }, Fingerprint { range: Range(185, 327), fp: EncodedCountingMonoid(12, SumMonoid(2938)) }, Fingerprint { range: Range(327, 439), fp: EncodedCountingMonoid(9, SumMonoid(3298)) }, Fingerprint { range: Range(439, 514), fp: EncodedCountingMonoid(8, SumMonoid(3708)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 185), fp: EncodedCountingMonoid(4, SumMonoid(515)) }, Fingerprint { range: Range(185, 307), fp: EncodedCountingMonoid(4, SumMonoid(957)) }, Fingerprint { range: Range(307, 327), fp: EncodedCountingMonoid(4, SumMonoid(1267)) }, Fingerprint { range: Range(327, 379), fp: EncodedCountingMonoid(5, SumMonoid(1766)) }, Fingerprint { range: Range(379, 439), fp: EncodedCountingMonoid(5, SumMonoid(2023)) }, Fingerprint { range: Range(439, 484), fp: EncodedCountingMonoid(3, SumMonoid(1390)) }, Fingerprint { range: Range(484, 514), fp: EncodedCountingMonoid(3, SumMonoid(1477)) }, Fingerprint { range: Range(514, 544), fp: EncodedCountingMonoid(4, SumMonoid(2119)) }, Fingerprint { range: Range(544, 609), fp: EncodedCountingMonoid(4, SumMonoid(2250)) }, Fingerprint { range: Range(609, 671), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(4, SumMonoid(2980)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(671, 705), items: [671, 687], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(185, 253), fp: EncodedCountingMonoid(6, SumMonoid(1281)) }, Fingerprint { range: Range(253, 307), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(327, 350), fp: EncodedCountingMonoid(3, SumMonoid(996)) }, Fingerprint { range: Range(350, 379), fp: EncodedCountingMonoid(3, SumMonoid(1084)) }, Fingerprint { range: Range(439, 455), fp: EncodedCountingMonoid(3, SumMonoid(1335)) }, Fingerprint { range: Range(455, 484), fp: EncodedCountingMonoid(3, SumMonoid(1393)) }, Fingerprint { range: Range(544, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(671, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 185), items: [162], want_response: true }, ItemSet { range: Range(307, 327), items: [314], want_response: true }, ItemSet { range: Range(379, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 439), items: [434], want_response: true }, ItemSet { range: Range(484, 514), items: [488, 492], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 544), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [671, 687], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 185), items: [], want_response: false }, ItemSet { range: Range(307, 327), items: [307, 314, 321, 325], want_response: false }, ItemSet { range: Range(379, 434), items: [379, 384, 389, 433], want_response: false }, ItemSet { range: Range(434, 439), items: [438], want_response: false }, ItemSet { range: Range(484, 514), items: [484, 493, 500], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 544), items: [535, 541], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(185, 253), items: [196, 213], want_response: true }, ItemSet { range: Range(253, 307), items: [254, 294], want_response: true }, ItemSet { range: Range(327, 350), items: [327, 334], want_response: true }, ItemSet { range: Range(350, 376), items: [361, 368], want_response: true }, ItemSet { range: Range(376, 379), items: [376], want_response: true }, ItemSet { range: Range(439, 455), items: [445], want_response: true }, ItemSet { range: Range(455, 484), items: [467, 478], want_response: true }, ItemSet { range: Range(544, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 601), items: [562, 592], want_response: true }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969], provide: [(671, true), (687, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(185, 253), items: [185, 192, 199, 223, 239, 243], want_response: false }, ItemSet { range: Range(253, 307), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(327, 350), items: [327, 329, 340], want_response: false }, ItemSet { range: Range(350, 376), items: [350, 363, 371], want_response: false }, ItemSet { range: Range(376, 379), items: [], want_response: false }, ItemSet { range: Range(439, 455), items: [439, 446, 450], want_response: false }, ItemSet { range: Range(455, 484), items: [455, 459, 479], want_response: false }, ItemSet { range: Range(544, 562), items: [], want_response: false }, ItemSet { range: Range(562, 601), items: [562, 585, 592], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [120, 123, 127, 145, 307, 321, 325, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 254, 294, 334, 361, 368, 376, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898], provide: [(674, true), (683, true), (690, true), (694, true), (700, true), (142, true), (143, true), (162, true), (390, true), (394, true), (434, true), (488, true), (492, true), (514, true), (528, true), (540, true), (601, true), (605, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(120, true), (123, true), (127, true), (145, true), (307, true), (321, true), (325, true), (379, true), (384, true), (389, true), (433, true), (438, true), (484, true), (493, true), (500, true), (517, true), (526, true), (541, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (196, true), (213, true), (254, true), (294, true), (334, true), (361, true), (368, true), (376, true), (445, true), (467, true), (478, true), (544, true), (552, true), (705, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (329, true), (340, true), (350, true), (363, true), (371, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (585, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 145, 196, 213, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 535, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 674, 683, 690, 694, 700, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 540, 601, 605, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [671, 687, 120, 123, 127, 145, 307, 321, 325, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 254, 294, 334, 361, 368, 376, 445, 467, 478, 544, 552, 705, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 145, 196, 213, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(58, SumMonoid(27666)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 327), fp: EncodedCountingMonoid(17, SumMonoid(3044)) }, Fingerprint { range: Range(327, 514), fp: EncodedCountingMonoid(16, SumMonoid(6656)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(13, SumMonoid(7813)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(12, SumMonoid(10153)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 185), fp: EncodedCountingMonoid(12, SumMonoid(1070)) }, Fingerprint { range: Range(185, 327), fp: EncodedCountingMonoid(12, SumMonoid(2938)) }, Fingerprint { range: Range(327, 439), fp: EncodedCountingMonoid(9, SumMonoid(3298)) }, Fingerprint { range: Range(439, 514), fp: EncodedCountingMonoid(8, SumMonoid(3708)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 185), fp: EncodedCountingMonoid(4, SumMonoid(515)) }, Fingerprint { range: Range(185, 307), fp: EncodedCountingMonoid(4, SumMonoid(957)) }, Fingerprint { range: Range(307, 327), fp: EncodedCountingMonoid(4, SumMonoid(1267)) }, Fingerprint { range: Range(327, 379), fp: EncodedCountingMonoid(5, SumMonoid(1766)) }, Fingerprint { range: Range(379, 439), fp: EncodedCountingMonoid(5, SumMonoid(2023)) }, Fingerprint { range: Range(439, 484), fp: EncodedCountingMonoid(3, SumMonoid(1390)) }, Fingerprint { range: Range(484, 514), fp: EncodedCountingMonoid(3, SumMonoid(1477)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 671), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(671, 715), fp: EncodedCountingMonoid(3, SumMonoid(2063)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(185, 253), fp: EncodedCountingMonoid(6, SumMonoid(1281)) }, Fingerprint { range: Range(253, 307), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(327, 350), fp: EncodedCountingMonoid(3, SumMonoid(996)) }, Fingerprint { range: Range(350, 379), fp: EncodedCountingMonoid(3, SumMonoid(1084)) }, Fingerprint { range: Range(439, 455), fp: EncodedCountingMonoid(3, SumMonoid(1335)) }, Fingerprint { range: Range(455, 484), fp: EncodedCountingMonoid(3, SumMonoid(1393)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(671, 694), fp: EncodedCountingMonoid(3, SumMonoid(2047)) }, Fingerprint { range: Range(694, 715), fp: EncodedCountingMonoid(3, SumMonoid(2106)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 185), items: [162], want_response: true }, ItemSet { range: Range(307, 327), items: [314], want_response: true }, ItemSet { range: Range(379, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 439), items: [434], want_response: true }, ItemSet { range: Range(484, 514), items: [488, 492], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 185), items: [], want_response: false }, ItemSet { range: Range(307, 327), items: [307, 314, 321, 325], want_response: false }, ItemSet { range: Range(379, 434), items: [379, 384, 389, 433], want_response: false }, ItemSet { range: Range(434, 439), items: [438], want_response: false }, ItemSet { range: Range(484, 514), items: [484, 493, 500], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(185, 253), items: [196, 213], want_response: true }, ItemSet { range: Range(253, 307), items: [254, 294], want_response: true }, ItemSet { range: Range(327, 350), items: [327, 334], want_response: true }, ItemSet { range: Range(350, 376), items: [361, 368], want_response: true }, ItemSet { range: Range(376, 379), items: [376], want_response: true }, ItemSet { range: Range(439, 455), items: [445], want_response: true }, ItemSet { range: Range(455, 484), items: [467, 478], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(671, 694), items: [671, 687], want_response: true }, ItemSet { range: Range(694, 715), items: [705], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 535, 540, 601, 605, 836, 837, 969], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(185, 253), items: [185, 192, 199, 223, 239, 243], want_response: false }, ItemSet { range: Range(253, 307), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(327, 350), items: [327, 329, 340], want_response: false }, ItemSet { range: Range(350, 376), items: [350, 363, 371], want_response: false }, ItemSet { range: Range(376, 379), items: [], want_response: false }, ItemSet { range: Range(439, 455), items: [439, 446, 450], want_response: false }, ItemSet { range: Range(455, 484), items: [455, 459, 479], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(671, 694), items: [674, 683, 690], want_response: false }, ItemSet { range: Range(694, 715), items: [694, 700, 712], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [120, 123, 127, 145, 307, 321, 325, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 254, 294, 334, 361, 368, 376, 445, 467, 478, 552, 671, 687, 705, 715, 779, 781, 861, 892, 898], provide: [(142, true), (143, true), (162, true), (390, true), (394, true), (434, true), (488, true), (492, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 585, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(120, true), (123, true), (127, true), (145, true), (307, true), (321, true), (325, true), (379, true), (384, true), (389, true), (433, true), (438, true), (484, true), (493, true), (500, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (196, true), (213, true), (254, true), (294, true), (334, true), (361, true), (368, true), (376, true), (445, true), (467, true), (478, true), (552, true), (671, true), (687, true), (705, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (329, true), (340, true), (350, true), (363, true), (371, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (585, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 145, 196, 213, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 535, 540, 601, 605, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 585, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [120, 123, 127, 145, 307, 321, 325, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 213, 254, 294, 334, 361, 368, 376, 445, 467, 478, 552, 671, 687, 705, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 145, 196, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(57, SumMonoid(27453)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 327), fp: EncodedCountingMonoid(16, SumMonoid(2831)) }, Fingerprint { range: Range(327, 514), fp: EncodedCountingMonoid(16, SumMonoid(6656)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(13, SumMonoid(7813)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(12, SumMonoid(10153)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 185), fp: EncodedCountingMonoid(12, SumMonoid(1070)) }, Fingerprint { range: Range(185, 327), fp: EncodedCountingMonoid(12, SumMonoid(2938)) }, Fingerprint { range: Range(327, 439), fp: EncodedCountingMonoid(9, SumMonoid(3298)) }, Fingerprint { range: Range(439, 514), fp: EncodedCountingMonoid(8, SumMonoid(3708)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 185), fp: EncodedCountingMonoid(4, SumMonoid(515)) }, Fingerprint { range: Range(185, 314), fp: EncodedCountingMonoid(4, SumMonoid(1051)) }, Fingerprint { range: Range(314, 327), fp: EncodedCountingMonoid(3, SumMonoid(960)) }, Fingerprint { range: Range(327, 379), fp: EncodedCountingMonoid(5, SumMonoid(1766)) }, Fingerprint { range: Range(379, 439), fp: EncodedCountingMonoid(5, SumMonoid(2023)) }, Fingerprint { range: Range(439, 484), fp: EncodedCountingMonoid(3, SumMonoid(1390)) }, Fingerprint { range: Range(484, 514), fp: EncodedCountingMonoid(3, SumMonoid(1477)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 671), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(671, 715), fp: EncodedCountingMonoid(3, SumMonoid(2063)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(185, 253), fp: EncodedCountingMonoid(6, SumMonoid(1281)) }, Fingerprint { range: Range(253, 314), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(327, 350), fp: EncodedCountingMonoid(3, SumMonoid(996)) }, Fingerprint { range: Range(350, 379), fp: EncodedCountingMonoid(3, SumMonoid(1084)) }, Fingerprint { range: Range(439, 455), fp: EncodedCountingMonoid(3, SumMonoid(1335)) }, Fingerprint { range: Range(455, 484), fp: EncodedCountingMonoid(3, SumMonoid(1393)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(671, 694), fp: EncodedCountingMonoid(3, SumMonoid(2047)) }, Fingerprint { range: Range(694, 715), fp: EncodedCountingMonoid(3, SumMonoid(2106)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 185), items: [162], want_response: true }, ItemSet { range: Range(314, 327), items: [314], want_response: true }, ItemSet { range: Range(379, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 439), items: [434], want_response: true }, ItemSet { range: Range(484, 514), items: [488, 492], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 185), items: [], want_response: false }, ItemSet { range: Range(314, 327), items: [314, 321, 325], want_response: false }, ItemSet { range: Range(379, 434), items: [379, 384, 389, 433], want_response: false }, ItemSet { range: Range(434, 439), items: [438], want_response: false }, ItemSet { range: Range(484, 514), items: [484, 493, 500], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(185, 253), items: [196], want_response: true }, ItemSet { range: Range(253, 307), items: [254, 294], want_response: true }, ItemSet { range: Range(307, 314), items: [307], want_response: true }, ItemSet { range: Range(327, 350), items: [327, 334], want_response: true }, ItemSet { range: Range(350, 376), items: [361, 368], want_response: true }, ItemSet { range: Range(376, 379), items: [376], want_response: true }, ItemSet { range: Range(439, 455), items: [445], want_response: true }, ItemSet { range: Range(455, 484), items: [467, 478], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(671, 694), items: [671, 687], want_response: true }, ItemSet { range: Range(694, 715), items: [705], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 535, 540, 601, 605, 836, 837, 969], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(185, 253), items: [185, 192, 199, 223, 239, 243], want_response: false }, ItemSet { range: Range(253, 307), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(307, 314), items: [], want_response: false }, ItemSet { range: Range(327, 350), items: [327, 329, 340], want_response: false }, ItemSet { range: Range(350, 376), items: [350, 363, 371], want_response: false }, ItemSet { range: Range(376, 379), items: [], want_response: false }, ItemSet { range: Range(439, 455), items: [439, 446, 450], want_response: false }, ItemSet { range: Range(455, 484), items: [455, 459, 479], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(671, 694), items: [674, 683, 690], want_response: false }, ItemSet { range: Range(694, 715), items: [694, 700, 712], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [120, 123, 127, 145, 321, 325, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 254, 294, 307, 334, 361, 368, 376, 445, 467, 478, 552, 671, 687, 705, 715, 779, 781, 861, 892, 898], provide: [(142, true), (143, true), (162, true), (390, true), (394, true), (434, true), (488, true), (492, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 585, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(120, true), (123, true), (127, true), (145, true), (321, true), (325, true), (379, true), (384, true), (389, true), (433, true), (438, true), (484, true), (493, true), (500, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (196, true), (254, true), (294, true), (307, true), (334, true), (361, true), (368, true), (376, true), (445, true), (467, true), (478, true), (552, true), (671, true), (687, true), (705, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (329, true), (340, true), (350, true), (363, true), (371, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (585, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 145, 196, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 142, 143, 162, 390, 394, 434, 488, 492, 514, 528, 535, 540, 601, 605, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 585, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [120, 123, 127, 145, 321, 325, 379, 384, 389, 433, 438, 484, 493, 500, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 196, 254, 294, 307, 334, 361, 368, 376, 445, 467, 478, 552, 671, 687, 705, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(56, SumMonoid(27257)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 334), fp: EncodedCountingMonoid(16, SumMonoid(2962)) }, Fingerprint { range: Range(334, 514), fp: EncodedCountingMonoid(15, SumMonoid(6329)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(13, SumMonoid(7813)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(12, SumMonoid(10153)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 192), fp: EncodedCountingMonoid(13, SumMonoid(1255)) }, Fingerprint { range: Range(192, 334), fp: EncodedCountingMonoid(13, SumMonoid(3409)) }, Fingerprint { range: Range(334, 446), fp: EncodedCountingMonoid(8, SumMonoid(3081)) }, Fingerprint { range: Range(446, 514), fp: EncodedCountingMonoid(7, SumMonoid(3269)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 192), fp: EncodedCountingMonoid(4, SumMonoid(515)) }, Fingerprint { range: Range(192, 321), fp: EncodedCountingMonoid(4, SumMonoid(1169)) }, Fingerprint { range: Range(321, 334), fp: EncodedCountingMonoid(3, SumMonoid(973)) }, Fingerprint { range: Range(334, 384), fp: EncodedCountingMonoid(5, SumMonoid(1818)) }, Fingerprint { range: Range(384, 446), fp: EncodedCountingMonoid(5, SumMonoid(2089)) }, Fingerprint { range: Range(446, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 671), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(671, 715), fp: EncodedCountingMonoid(3, SumMonoid(2063)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(192, 257), fp: EncodedCountingMonoid(6, SumMonoid(1349)) }, Fingerprint { range: Range(257, 321), fp: EncodedCountingMonoid(5, SumMonoid(1404)) }, Fingerprint { range: Range(446, 479), fp: EncodedCountingMonoid(4, SumMonoid(1810)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(671, 694), fp: EncodedCountingMonoid(3, SumMonoid(2047)) }, Fingerprint { range: Range(694, 715), fp: EncodedCountingMonoid(3, SumMonoid(2106)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 192), items: [162, 185], want_response: true }, ItemSet { range: Range(321, 334), items: [327, 329], want_response: true }, ItemSet { range: Range(334, 363), items: [340, 350], want_response: true }, ItemSet { range: Range(363, 384), items: [363, 371], want_response: true }, ItemSet { range: Range(384, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 446), items: [434, 439], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [493, 500], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 192), items: [], want_response: false }, ItemSet { range: Range(321, 334), items: [321, 325, 327], want_response: false }, ItemSet { range: Range(334, 363), items: [334, 361], want_response: false }, ItemSet { range: Range(363, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(384, 434), items: [384, 389, 433], want_response: false }, ItemSet { range: Range(434, 446), items: [438, 445], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(192, 257), items: [254], want_response: true }, ItemSet { range: Range(257, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 321), items: [314], want_response: true }, ItemSet { range: Range(446, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(671, 694), items: [671, 687], want_response: true }, ItemSet { range: Range(694, 715), items: [705], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 601, 605, 836, 837, 969], provide: [(493, true), (500, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(192, 257), items: [192, 199, 223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 314), items: [257, 261, 270, 302], want_response: false }, ItemSet { range: Range(314, 321), items: [314], want_response: false }, ItemSet { range: Range(446, 479), items: [446, 450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(671, 694), items: [674, 683, 690], want_response: false }, ItemSet { range: Range(694, 715), items: [694, 700, 712], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [120, 123, 127, 145, 321, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 254, 294, 307, 467, 478, 484, 552, 671, 687, 705, 715, 779, 781, 861, 892, 898], provide: [(142, true), (143, true), (162, true), (185, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(120, true), (123, true), (127, true), (145, true), (321, true), (325, true), (334, true), (361, true), (368, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (445, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (254, true), (294, true), (307, true), (467, true), (478, true), (484, true), (552, true), (671, true), (687, true), (705, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 671, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 601, 605, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 120, 123, 127, 145, 321, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 254, 294, 307, 467, 478, 484, 552, 671, 687, 705, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(55, SumMonoid(26586)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 334), fp: EncodedCountingMonoid(16, SumMonoid(2962)) }, Fingerprint { range: Range(334, 514), fp: EncodedCountingMonoid(15, SumMonoid(6329)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(12, SumMonoid(10153)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 192), fp: EncodedCountingMonoid(13, SumMonoid(1255)) }, Fingerprint { range: Range(192, 334), fp: EncodedCountingMonoid(13, SumMonoid(3409)) }, Fingerprint { range: Range(334, 446), fp: EncodedCountingMonoid(8, SumMonoid(3081)) }, Fingerprint { range: Range(446, 514), fp: EncodedCountingMonoid(7, SumMonoid(3269)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 192), fp: EncodedCountingMonoid(4, SumMonoid(515)) }, Fingerprint { range: Range(192, 321), fp: EncodedCountingMonoid(4, SumMonoid(1169)) }, Fingerprint { range: Range(321, 334), fp: EncodedCountingMonoid(3, SumMonoid(973)) }, Fingerprint { range: Range(334, 384), fp: EncodedCountingMonoid(5, SumMonoid(1818)) }, Fingerprint { range: Range(384, 446), fp: EncodedCountingMonoid(5, SumMonoid(2089)) }, Fingerprint { range: Range(446, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(192, 257), fp: EncodedCountingMonoid(6, SumMonoid(1349)) }, Fingerprint { range: Range(257, 321), fp: EncodedCountingMonoid(5, SumMonoid(1404)) }, Fingerprint { range: Range(446, 479), fp: EncodedCountingMonoid(4, SumMonoid(1810)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 192), items: [162, 185], want_response: true }, ItemSet { range: Range(321, 334), items: [327, 329], want_response: true }, ItemSet { range: Range(334, 363), items: [340, 350], want_response: true }, ItemSet { range: Range(363, 384), items: [363, 371], want_response: true }, ItemSet { range: Range(384, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 446), items: [434, 439], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [493, 500, 687, 705], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 192), items: [], want_response: false }, ItemSet { range: Range(321, 334), items: [321, 325, 327], want_response: false }, ItemSet { range: Range(334, 363), items: [334, 361], want_response: false }, ItemSet { range: Range(363, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(384, 434), items: [384, 389, 433], want_response: false }, ItemSet { range: Range(434, 446), items: [438, 445], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(192, 257), items: [254], want_response: true }, ItemSet { range: Range(257, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 321), items: [314], want_response: true }, ItemSet { range: Range(446, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [690, 694, 700, 712, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969], provide: [(493, true), (500, true), (687, true), (705, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(192, 257), items: [192, 199, 223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 314), items: [257, 261, 270, 302], want_response: false }, ItemSet { range: Range(314, 321), items: [314], want_response: false }, ItemSet { range: Range(446, 479), items: [446, 450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [120, 123, 127, 145, 321, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 254, 294, 307, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (142, true), (143, true), (162, true), (185, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(120, true), (123, true), (127, true), (145, true), (321, true), (325, true), (334, true), (361, true), (368, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (445, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (254, true), (294, true), (307, true), (467, true), (478, true), (484, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 687, 705, 120, 123, 127, 145, 321, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 254, 294, 307, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(54, SumMonoid(25994)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 334), fp: EncodedCountingMonoid(16, SumMonoid(2962)) }, Fingerprint { range: Range(334, 514), fp: EncodedCountingMonoid(15, SumMonoid(6329)) }, Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(12, SumMonoid(7265)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(11, SumMonoid(9438)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 192), fp: EncodedCountingMonoid(13, SumMonoid(1255)) }, Fingerprint { range: Range(192, 334), fp: EncodedCountingMonoid(13, SumMonoid(3409)) }, Fingerprint { range: Range(334, 446), fp: EncodedCountingMonoid(8, SumMonoid(3081)) }, Fingerprint { range: Range(446, 514), fp: EncodedCountingMonoid(7, SumMonoid(3269)) }, Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 192), fp: EncodedCountingMonoid(4, SumMonoid(515)) }, Fingerprint { range: Range(192, 321), fp: EncodedCountingMonoid(4, SumMonoid(1169)) }, Fingerprint { range: Range(321, 334), fp: EncodedCountingMonoid(3, SumMonoid(973)) }, Fingerprint { range: Range(334, 384), fp: EncodedCountingMonoid(5, SumMonoid(1818)) }, Fingerprint { range: Range(384, 446), fp: EncodedCountingMonoid(5, SumMonoid(2089)) }, Fingerprint { range: Range(446, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(5, SumMonoid(2680)) }, Fingerprint { range: Range(562, 690), fp: EncodedCountingMonoid(5, SumMonoid(3165)) }, Fingerprint { range: Range(779, 799), fp: EncodedCountingMonoid(4, SumMonoid(3127)) }, Fingerprint { range: Range(799, 916), fp: EncodedCountingMonoid(4, SumMonoid(3450)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 971), items: [943, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(192, 257), fp: EncodedCountingMonoid(6, SumMonoid(1349)) }, Fingerprint { range: Range(257, 321), fp: EncodedCountingMonoid(5, SumMonoid(1404)) }, Fingerprint { range: Range(446, 479), fp: EncodedCountingMonoid(4, SumMonoid(1810)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(562, 609), fp: EncodedCountingMonoid(5, SumMonoid(2945)) }, Fingerprint { range: Range(609, 690), fp: EncodedCountingMonoid(5, SumMonoid(3273)) }, Fingerprint { range: Range(799, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 971), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 192), items: [162, 185], want_response: true }, ItemSet { range: Range(321, 334), items: [327, 329], want_response: true }, ItemSet { range: Range(334, 363), items: [340, 350], want_response: true }, ItemSet { range: Range(363, 384), items: [363, 371], want_response: true }, ItemSet { range: Range(384, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 446), items: [434, 439], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(779, 799), items: [], want_response: true }], wants: [493, 500, 705, 715, 943, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 192), items: [], want_response: false }, ItemSet { range: Range(321, 334), items: [321, 325, 327], want_response: false }, ItemSet { range: Range(334, 363), items: [334, 361], want_response: false }, ItemSet { range: Range(363, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(384, 434), items: [384, 389, 433], want_response: false }, ItemSet { range: Range(434, 446), items: [438, 445], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(779, 799), items: [779, 781, 782, 785], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(192, 257), items: [254], want_response: true }, ItemSet { range: Range(257, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 321), items: [314], want_response: true }, ItemSet { range: Range(446, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(562, 609), items: [562], want_response: true }, ItemSet { range: Range(609, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 690), items: [667, 687], want_response: true }, ItemSet { range: Range(799, 879), items: [799, 861], want_response: true }, ItemSet { range: Range(879, 916), items: [892, 898], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540], provide: [(493, true), (500, true), (705, true), (715, true), (943, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(192, 257), items: [192, 199, 223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 314), items: [257, 261, 270, 302], want_response: false }, ItemSet { range: Range(314, 321), items: [314], want_response: false }, ItemSet { range: Range(446, 479), items: [446, 450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 690), items: [674, 683], want_response: false }, ItemSet { range: Range(799, 879), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [120, 123, 127, 145, 321, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 517, 526, 541, 544, 552, 779, 781, 782, 785, 9, 55, 56, 77, 108, 254, 294, 307, 467, 478, 484, 619, 630, 667, 687, 799, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (142, true), (143, true), (162, true), (185, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (514, true), (528, true), (535, true), (540, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 592, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909], provide: [(120, true), (123, true), (127, true), (145, true), (321, true), (325, true), (334, true), (361, true), (368, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (445, true), (517, true), (526, true), (541, true), (544, true), (552, true), (779, true), (781, true), (782, true), (785, true), (9, true), (55, true), (56, true), (77, true), (108, true), (254, true), (294, true), (307, true), (467, true), (478, true), (484, true), (619, true), (630, true), (667, true), (687, true), (799, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 592, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 705, 715, 943, 947, 971, 120, 123, 127, 145, 321, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 517, 526, 541, 544, 552, 779, 781, 782, 785, 9, 55, 56, 77, 108, 254, 294, 307, 467, 478, 484, 619, 630, 667, 687, 799, 861, 892, 898]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 55, 56, 62, 77, 79, 88, 93, 96, 101, 108, 120, 123, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 254, 257, 261, 270, 294, 302, 307, 314, 321, 325, 327, 329, 334, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 438, 439, 445, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 943, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 55, 56, 62, 77, 79, 88, 93, 96, 101, 108, 120, 123, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 254, 257, 261, 270, 294, 302, 307, 314, 321, 325, 327, 329, 334, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 438, 439, 445, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 943, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 55, 56, 62, 77, 79, 88, 93, 96, 101, 108, 120, 123, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 254, 257, 261, 270, 294, 302, 307, 314, 321, 325, 327, 329, 334, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 438, 439, 445, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 943, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(55, SumMonoid(26586)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 334), fp: EncodedCountingMonoid(16, SumMonoid(2962)) }, Fingerprint { range: Range(334, 514), fp: EncodedCountingMonoid(15, SumMonoid(6329)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(12, SumMonoid(10153)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 192), fp: EncodedCountingMonoid(13, SumMonoid(1255)) }, Fingerprint { range: Range(192, 334), fp: EncodedCountingMonoid(13, SumMonoid(3409)) }, Fingerprint { range: Range(334, 446), fp: EncodedCountingMonoid(8, SumMonoid(3081)) }, Fingerprint { range: Range(446, 514), fp: EncodedCountingMonoid(7, SumMonoid(3269)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 192), fp: EncodedCountingMonoid(4, SumMonoid(515)) }, Fingerprint { range: Range(192, 321), fp: EncodedCountingMonoid(4, SumMonoid(1169)) }, Fingerprint { range: Range(321, 334), fp: EncodedCountingMonoid(3, SumMonoid(973)) }, Fingerprint { range: Range(334, 384), fp: EncodedCountingMonoid(5, SumMonoid(1818)) }, Fingerprint { range: Range(384, 446), fp: EncodedCountingMonoid(5, SumMonoid(2089)) }, Fingerprint { range: Range(446, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(192, 257), fp: EncodedCountingMonoid(6, SumMonoid(1349)) }, Fingerprint { range: Range(257, 321), fp: EncodedCountingMonoid(5, SumMonoid(1404)) }, Fingerprint { range: Range(446, 479), fp: EncodedCountingMonoid(4, SumMonoid(1810)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 192), items: [162, 185], want_response: true }, ItemSet { range: Range(321, 334), items: [327, 329], want_response: true }, ItemSet { range: Range(334, 363), items: [340, 350], want_response: true }, ItemSet { range: Range(363, 384), items: [363, 371], want_response: true }, ItemSet { range: Range(384, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 446), items: [434, 439], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [493, 500, 687, 705], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 192), items: [], want_response: false }, ItemSet { range: Range(321, 334), items: [321, 325, 327], want_response: false }, ItemSet { range: Range(334, 363), items: [334, 361], want_response: false }, ItemSet { range: Range(363, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(384, 434), items: [384, 389, 433], want_response: false }, ItemSet { range: Range(434, 446), items: [438, 445], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(192, 257), items: [254], want_response: true }, ItemSet { range: Range(257, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 321), items: [314], want_response: true }, ItemSet { range: Range(446, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [690, 694, 700, 712, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969], provide: [(493, true), (500, true), (687, true), (705, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(192, 257), items: [192, 199, 223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 314), items: [257, 261, 270, 302], want_response: false }, ItemSet { range: Range(314, 321), items: [314], want_response: false }, ItemSet { range: Range(446, 479), items: [446, 450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [120, 123, 127, 145, 321, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 254, 294, 307, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (142, true), (143, true), (162, true), (185, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(120, true), (123, true), (127, true), (145, true), (321, true), (325, true), (334, true), (361, true), (368, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (445, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (254, true), (294, true), (307, true), (467, true), (478, true), (484, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 687, 705, 120, 123, 127, 145, 321, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 254, 294, 307, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(54, SumMonoid(25967)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 334), fp: EncodedCountingMonoid(16, SumMonoid(2962)) }, Fingerprint { range: Range(334, 514), fp: EncodedCountingMonoid(15, SumMonoid(6329)) }, Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(12, SumMonoid(7238)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(11, SumMonoid(9438)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 192), fp: EncodedCountingMonoid(13, SumMonoid(1255)) }, Fingerprint { range: Range(192, 334), fp: EncodedCountingMonoid(13, SumMonoid(3409)) }, Fingerprint { range: Range(334, 446), fp: EncodedCountingMonoid(8, SumMonoid(3081)) }, Fingerprint { range: Range(446, 514), fp: EncodedCountingMonoid(7, SumMonoid(3269)) }, Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 192), fp: EncodedCountingMonoid(4, SumMonoid(515)) }, Fingerprint { range: Range(192, 321), fp: EncodedCountingMonoid(4, SumMonoid(1169)) }, Fingerprint { range: Range(321, 334), fp: EncodedCountingMonoid(3, SumMonoid(973)) }, Fingerprint { range: Range(334, 384), fp: EncodedCountingMonoid(5, SumMonoid(1818)) }, Fingerprint { range: Range(384, 446), fp: EncodedCountingMonoid(5, SumMonoid(2089)) }, Fingerprint { range: Range(446, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(5, SumMonoid(2680)) }, Fingerprint { range: Range(562, 690), fp: EncodedCountingMonoid(5, SumMonoid(3138)) }, Fingerprint { range: Range(779, 799), fp: EncodedCountingMonoid(4, SumMonoid(3127)) }, Fingerprint { range: Range(799, 916), fp: EncodedCountingMonoid(4, SumMonoid(3450)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 971), items: [943, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(192, 257), fp: EncodedCountingMonoid(6, SumMonoid(1349)) }, Fingerprint { range: Range(257, 321), fp: EncodedCountingMonoid(5, SumMonoid(1404)) }, Fingerprint { range: Range(446, 479), fp: EncodedCountingMonoid(4, SumMonoid(1810)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(562, 609), fp: EncodedCountingMonoid(5, SumMonoid(2945)) }, Fingerprint { range: Range(609, 690), fp: EncodedCountingMonoid(5, SumMonoid(3273)) }, Fingerprint { range: Range(799, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 971), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 192), items: [162, 185], want_response: true }, ItemSet { range: Range(321, 334), items: [327, 329], want_response: true }, ItemSet { range: Range(334, 363), items: [340, 350], want_response: true }, ItemSet { range: Range(363, 384), items: [363, 371], want_response: true }, ItemSet { range: Range(384, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 446), items: [434, 439], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(779, 799), items: [], want_response: true }], wants: [493, 500, 705, 715, 943, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 192), items: [], want_response: false }, ItemSet { range: Range(321, 334), items: [321, 325, 327], want_response: false }, ItemSet { range: Range(334, 363), items: [334, 361], want_response: false }, ItemSet { range: Range(363, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(384, 434), items: [384, 389, 433], want_response: false }, ItemSet { range: Range(434, 446), items: [438, 445], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(779, 799), items: [779, 781, 782, 785], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(192, 257), items: [254], want_response: true }, ItemSet { range: Range(257, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 321), items: [314], want_response: true }, ItemSet { range: Range(446, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(609, 687), items: [630, 667], want_response: true }, ItemSet { range: Range(687, 690), items: [687], want_response: true }, ItemSet { range: Range(799, 879), items: [799, 861], want_response: true }, ItemSet { range: Range(879, 916), items: [892, 898], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540], provide: [(493, true), (500, true), (705, true), (715, true), (943, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(192, 257), items: [192, 199, 223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 314), items: [257, 261, 270, 302], want_response: false }, ItemSet { range: Range(314, 321), items: [314], want_response: false }, ItemSet { range: Range(446, 479), items: [446, 450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 687), items: [609, 645, 662, 674, 683], want_response: false }, ItemSet { range: Range(687, 690), items: [], want_response: false }, ItemSet { range: Range(799, 879), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [120, 123, 127, 145, 321, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 517, 526, 541, 544, 552, 779, 781, 782, 785, 9, 55, 56, 77, 108, 254, 294, 307, 467, 478, 484, 630, 667, 687, 799, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (142, true), (143, true), (162, true), (185, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (514, true), (528, true), (535, true), (540, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909], provide: [(120, true), (123, true), (127, true), (145, true), (321, true), (325, true), (334, true), (361, true), (368, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (445, true), (517, true), (526, true), (541, true), (544, true), (552, true), (779, true), (781, true), (782, true), (785, true), (9, true), (55, true), (56, true), (77, true), (108, true), (254, true), (294, true), (307, true), (467, true), (478, true), (484, true), (630, true), (667, true), (687, true), (799, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 705, 715, 943, 947, 971, 120, 123, 127, 145, 321, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 517, 526, 541, 544, 552, 779, 781, 782, 785, 9, 55, 56, 77, 108, 254, 294, 307, 467, 478, 484, 630, 667, 687, 799, 861, 892, 898]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 55, 56, 62, 77, 79, 88, 93, 96, 101, 108, 120, 123, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 254, 257, 261, 270, 294, 302, 307, 314, 321, 325, 327, 329, 334, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 438, 439, 445, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 943, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 55, 56, 62, 77, 79, 88, 93, 96, 101, 108, 120, 123, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 254, 257, 261, 270, 294, 302, 307, 314, 321, 325, 327, 329, 334, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 438, 439, 445, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 943, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 55, 56, 62, 77, 79, 88, 93, 96, 101, 108, 120, 123, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 254, 257, 261, 270, 294, 302, 307, 314, 321, 325, 327, 329, 334, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 438, 439, 445, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 943, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(55, SumMonoid(26586)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 334), fp: EncodedCountingMonoid(16, SumMonoid(2962)) }, Fingerprint { range: Range(334, 514), fp: EncodedCountingMonoid(15, SumMonoid(6329)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(12, SumMonoid(10153)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 192), fp: EncodedCountingMonoid(13, SumMonoid(1255)) }, Fingerprint { range: Range(192, 334), fp: EncodedCountingMonoid(13, SumMonoid(3409)) }, Fingerprint { range: Range(334, 446), fp: EncodedCountingMonoid(8, SumMonoid(3081)) }, Fingerprint { range: Range(446, 514), fp: EncodedCountingMonoid(7, SumMonoid(3269)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 192), fp: EncodedCountingMonoid(4, SumMonoid(515)) }, Fingerprint { range: Range(192, 321), fp: EncodedCountingMonoid(4, SumMonoid(1169)) }, Fingerprint { range: Range(321, 334), fp: EncodedCountingMonoid(3, SumMonoid(973)) }, Fingerprint { range: Range(334, 384), fp: EncodedCountingMonoid(5, SumMonoid(1818)) }, Fingerprint { range: Range(384, 446), fp: EncodedCountingMonoid(5, SumMonoid(2089)) }, Fingerprint { range: Range(446, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(192, 257), fp: EncodedCountingMonoid(6, SumMonoid(1349)) }, Fingerprint { range: Range(257, 321), fp: EncodedCountingMonoid(5, SumMonoid(1404)) }, Fingerprint { range: Range(446, 479), fp: EncodedCountingMonoid(4, SumMonoid(1810)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 192), items: [162, 185], want_response: true }, ItemSet { range: Range(321, 334), items: [327, 329], want_response: true }, ItemSet { range: Range(334, 363), items: [340, 350], want_response: true }, ItemSet { range: Range(363, 384), items: [363, 371], want_response: true }, ItemSet { range: Range(384, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 446), items: [434, 439], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [493, 500, 687, 705], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 192), items: [], want_response: false }, ItemSet { range: Range(321, 334), items: [321, 325, 327], want_response: false }, ItemSet { range: Range(334, 363), items: [334, 361], want_response: false }, ItemSet { range: Range(363, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(384, 434), items: [384, 389, 433], want_response: false }, ItemSet { range: Range(434, 446), items: [438, 445], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(192, 257), items: [254], want_response: true }, ItemSet { range: Range(257, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 321), items: [314], want_response: true }, ItemSet { range: Range(446, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [690, 694, 700, 712, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969], provide: [(493, true), (500, true), (687, true), (705, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(192, 257), items: [192, 199, 223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 314), items: [257, 261, 270, 302], want_response: false }, ItemSet { range: Range(314, 321), items: [314], want_response: false }, ItemSet { range: Range(446, 479), items: [446, 450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [120, 123, 127, 145, 321, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 254, 294, 307, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (142, true), (143, true), (162, true), (185, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(120, true), (123, true), (127, true), (145, true), (321, true), (325, true), (334, true), (361, true), (368, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (445, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (254, true), (294, true), (307, true), (467, true), (478, true), (484, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 687, 705, 120, 123, 127, 145, 321, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 254, 294, 307, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(54, SumMonoid(25956)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 334), fp: EncodedCountingMonoid(16, SumMonoid(2962)) }, Fingerprint { range: Range(334, 514), fp: EncodedCountingMonoid(15, SumMonoid(6329)) }, Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(12, SumMonoid(7227)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(11, SumMonoid(9438)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 192), fp: EncodedCountingMonoid(13, SumMonoid(1255)) }, Fingerprint { range: Range(192, 334), fp: EncodedCountingMonoid(13, SumMonoid(3409)) }, Fingerprint { range: Range(334, 446), fp: EncodedCountingMonoid(8, SumMonoid(3081)) }, Fingerprint { range: Range(446, 514), fp: EncodedCountingMonoid(7, SumMonoid(3269)) }, Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 192), fp: EncodedCountingMonoid(4, SumMonoid(515)) }, Fingerprint { range: Range(192, 321), fp: EncodedCountingMonoid(4, SumMonoid(1169)) }, Fingerprint { range: Range(321, 334), fp: EncodedCountingMonoid(3, SumMonoid(973)) }, Fingerprint { range: Range(334, 384), fp: EncodedCountingMonoid(5, SumMonoid(1818)) }, Fingerprint { range: Range(384, 446), fp: EncodedCountingMonoid(5, SumMonoid(2089)) }, Fingerprint { range: Range(446, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(5, SumMonoid(2680)) }, Fingerprint { range: Range(562, 690), fp: EncodedCountingMonoid(5, SumMonoid(3127)) }, Fingerprint { range: Range(779, 799), fp: EncodedCountingMonoid(4, SumMonoid(3127)) }, Fingerprint { range: Range(799, 916), fp: EncodedCountingMonoid(4, SumMonoid(3450)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 971), items: [943, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(192, 257), fp: EncodedCountingMonoid(6, SumMonoid(1349)) }, Fingerprint { range: Range(257, 321), fp: EncodedCountingMonoid(5, SumMonoid(1404)) }, Fingerprint { range: Range(446, 479), fp: EncodedCountingMonoid(4, SumMonoid(1810)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(562, 609), fp: EncodedCountingMonoid(5, SumMonoid(2945)) }, Fingerprint { range: Range(609, 690), fp: EncodedCountingMonoid(5, SumMonoid(3273)) }, Fingerprint { range: Range(799, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 971), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 192), items: [162, 185], want_response: true }, ItemSet { range: Range(321, 334), items: [327, 329], want_response: true }, ItemSet { range: Range(334, 363), items: [340, 350], want_response: true }, ItemSet { range: Range(363, 384), items: [363, 371], want_response: true }, ItemSet { range: Range(384, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 446), items: [434, 439], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(779, 799), items: [], want_response: true }], wants: [493, 500, 705, 715, 943, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 192), items: [], want_response: false }, ItemSet { range: Range(321, 334), items: [321, 325, 327], want_response: false }, ItemSet { range: Range(334, 363), items: [334, 361], want_response: false }, ItemSet { range: Range(363, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(384, 434), items: [384, 389, 433], want_response: false }, ItemSet { range: Range(434, 446), items: [438, 445], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(779, 799), items: [779, 781, 782, 785], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(192, 257), items: [254], want_response: true }, ItemSet { range: Range(257, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 321), items: [314], want_response: true }, ItemSet { range: Range(446, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(609, 687), items: [619, 667], want_response: true }, ItemSet { range: Range(687, 690), items: [687], want_response: true }, ItemSet { range: Range(799, 879), items: [799, 861], want_response: true }, ItemSet { range: Range(879, 916), items: [892, 898], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540], provide: [(493, true), (500, true), (705, true), (715, true), (943, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(192, 257), items: [192, 199, 223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 314), items: [257, 261, 270, 302], want_response: false }, ItemSet { range: Range(314, 321), items: [314], want_response: false }, ItemSet { range: Range(446, 479), items: [446, 450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 687), items: [609, 645, 662, 674, 683], want_response: false }, ItemSet { range: Range(687, 690), items: [], want_response: false }, ItemSet { range: Range(799, 879), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [120, 123, 127, 145, 321, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 517, 526, 541, 544, 552, 779, 781, 782, 785, 9, 55, 56, 77, 108, 254, 294, 307, 467, 478, 484, 619, 667, 687, 799, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (142, true), (143, true), (162, true), (185, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (514, true), (528, true), (535, true), (540, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909], provide: [(120, true), (123, true), (127, true), (145, true), (321, true), (325, true), (334, true), (361, true), (368, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (445, true), (517, true), (526, true), (541, true), (544, true), (552, true), (779, true), (781, true), (782, true), (785, true), (9, true), (55, true), (56, true), (77, true), (108, true), (254, true), (294, true), (307, true), (467, true), (478, true), (484, true), (619, true), (667, true), (687, true), (799, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 705, 715, 943, 947, 971, 120, 123, 127, 145, 321, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 517, 526, 541, 544, 552, 779, 781, 782, 785, 9, 55, 56, 77, 108, 254, 294, 307, 467, 478, 484, 619, 667, 687, 799, 861, 892, 898]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 55, 56, 62, 77, 79, 88, 93, 96, 101, 108, 120, 123, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 254, 257, 261, 270, 294, 302, 307, 314, 321, 325, 327, 329, 334, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 438, 439, 445, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 943, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 55, 56, 62, 77, 79, 88, 93, 96, 101, 108, 120, 123, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 254, 257, 261, 270, 294, 302, 307, 314, 321, 325, 327, 329, 334, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 438, 439, 445, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 943, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 55, 56, 62, 77, 79, 88, 93, 96, 101, 108, 120, 123, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 254, 257, 261, 270, 294, 302, 307, 314, 321, 325, 327, 329, 334, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 438, 439, 445, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 943, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(55, SumMonoid(26586)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 334), fp: EncodedCountingMonoid(16, SumMonoid(2962)) }, Fingerprint { range: Range(334, 514), fp: EncodedCountingMonoid(15, SumMonoid(6329)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(12, SumMonoid(10153)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 192), fp: EncodedCountingMonoid(13, SumMonoid(1255)) }, Fingerprint { range: Range(192, 334), fp: EncodedCountingMonoid(13, SumMonoid(3409)) }, Fingerprint { range: Range(334, 446), fp: EncodedCountingMonoid(8, SumMonoid(3081)) }, Fingerprint { range: Range(446, 514), fp: EncodedCountingMonoid(7, SumMonoid(3269)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 192), fp: EncodedCountingMonoid(4, SumMonoid(515)) }, Fingerprint { range: Range(192, 321), fp: EncodedCountingMonoid(4, SumMonoid(1169)) }, Fingerprint { range: Range(321, 334), fp: EncodedCountingMonoid(3, SumMonoid(973)) }, Fingerprint { range: Range(334, 384), fp: EncodedCountingMonoid(5, SumMonoid(1818)) }, Fingerprint { range: Range(384, 446), fp: EncodedCountingMonoid(5, SumMonoid(2089)) }, Fingerprint { range: Range(446, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(192, 257), fp: EncodedCountingMonoid(6, SumMonoid(1349)) }, Fingerprint { range: Range(257, 321), fp: EncodedCountingMonoid(5, SumMonoid(1404)) }, Fingerprint { range: Range(446, 479), fp: EncodedCountingMonoid(4, SumMonoid(1810)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 192), items: [162, 185], want_response: true }, ItemSet { range: Range(321, 334), items: [327, 329], want_response: true }, ItemSet { range: Range(334, 363), items: [340, 350], want_response: true }, ItemSet { range: Range(363, 384), items: [363, 371], want_response: true }, ItemSet { range: Range(384, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 446), items: [434, 439], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [493, 500, 687, 705], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 192), items: [], want_response: false }, ItemSet { range: Range(321, 334), items: [321, 325, 327], want_response: false }, ItemSet { range: Range(334, 363), items: [334, 361], want_response: false }, ItemSet { range: Range(363, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(384, 434), items: [384, 389, 433], want_response: false }, ItemSet { range: Range(434, 446), items: [438, 445], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(192, 257), items: [254], want_response: true }, ItemSet { range: Range(257, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 321), items: [314], want_response: true }, ItemSet { range: Range(446, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [690, 694, 700, 712, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969], provide: [(493, true), (500, true), (687, true), (705, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(192, 257), items: [192, 199, 223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 314), items: [257, 261, 270, 302], want_response: false }, ItemSet { range: Range(314, 321), items: [314], want_response: false }, ItemSet { range: Range(446, 479), items: [446, 450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [120, 123, 127, 145, 321, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 254, 294, 307, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (142, true), (143, true), (162, true), (185, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(120, true), (123, true), (127, true), (145, true), (321, true), (325, true), (334, true), (361, true), (368, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (445, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (254, true), (294, true), (307, true), (467, true), (478, true), (484, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 687, 705, 120, 123, 127, 145, 321, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 445, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 254, 294, 307, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 120, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(54, SumMonoid(26141)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 327), fp: EncodedCountingMonoid(15, SumMonoid(2635)) }, Fingerprint { range: Range(327, 514), fp: EncodedCountingMonoid(15, SumMonoid(6211)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(12, SumMonoid(10153)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 185), fp: EncodedCountingMonoid(12, SumMonoid(1070)) }, Fingerprint { range: Range(185, 327), fp: EncodedCountingMonoid(12, SumMonoid(2938)) }, Fingerprint { range: Range(327, 439), fp: EncodedCountingMonoid(9, SumMonoid(3298)) }, Fingerprint { range: Range(439, 514), fp: EncodedCountingMonoid(8, SumMonoid(3708)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 120), fp: EncodedCountingMonoid(5, SumMonoid(305)) }, Fingerprint { range: Range(120, 185), fp: EncodedCountingMonoid(4, SumMonoid(515)) }, Fingerprint { range: Range(185, 314), fp: EncodedCountingMonoid(3, SumMonoid(855)) }, Fingerprint { range: Range(314, 327), fp: EncodedCountingMonoid(3, SumMonoid(960)) }, Fingerprint { range: Range(327, 379), fp: EncodedCountingMonoid(5, SumMonoid(1766)) }, Fingerprint { range: Range(379, 439), fp: EncodedCountingMonoid(5, SumMonoid(2023)) }, Fingerprint { range: Range(439, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 120), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(185, 253), fp: EncodedCountingMonoid(6, SumMonoid(1281)) }, Fingerprint { range: Range(253, 314), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(327, 350), fp: EncodedCountingMonoid(3, SumMonoid(996)) }, Fingerprint { range: Range(350, 379), fp: EncodedCountingMonoid(3, SumMonoid(1084)) }, Fingerprint { range: Range(439, 459), fp: EncodedCountingMonoid(4, SumMonoid(1790)) }, Fingerprint { range: Range(459, 493), fp: EncodedCountingMonoid(4, SumMonoid(1918)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(120, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 185), items: [162], want_response: true }, ItemSet { range: Range(314, 327), items: [314], want_response: true }, ItemSet { range: Range(379, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 439), items: [434], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [493, 500, 687, 705], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(120, 162), items: [120, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 185), items: [], want_response: false }, ItemSet { range: Range(314, 327), items: [314, 321, 325], want_response: false }, ItemSet { range: Range(379, 434), items: [379, 384, 389, 433], want_response: false }, ItemSet { range: Range(434, 439), items: [438], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 120), items: [108], want_response: true }, ItemSet { range: Range(185, 253), items: [], want_response: true }, ItemSet { range: Range(253, 307), items: [254, 294], want_response: true }, ItemSet { range: Range(307, 314), items: [307], want_response: true }, ItemSet { range: Range(327, 350), items: [327, 334], want_response: true }, ItemSet { range: Range(350, 376), items: [361, 368], want_response: true }, ItemSet { range: Range(376, 379), items: [376], want_response: true }, ItemSet { range: Range(439, 459), items: [], want_response: true }, ItemSet { range: Range(459, 484), items: [467, 478], want_response: true }, ItemSet { range: Range(484, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [690, 694, 700, 712, 142, 143, 162, 390, 394, 434, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969], provide: [(493, true), (500, true), (687, true), (705, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 120), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(185, 253), items: [185, 192, 199, 223, 239, 243], want_response: false }, ItemSet { range: Range(253, 307), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(307, 314), items: [], want_response: false }, ItemSet { range: Range(327, 350), items: [327, 329, 340], want_response: false }, ItemSet { range: Range(350, 376), items: [350, 363, 371], want_response: false }, ItemSet { range: Range(376, 379), items: [], want_response: false }, ItemSet { range: Range(439, 459), items: [439, 446, 450, 455], want_response: false }, ItemSet { range: Range(459, 484), items: [459, 479], want_response: false }, ItemSet { range: Range(484, 493), items: [488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [120, 123, 127, 145, 321, 325, 379, 384, 389, 433, 438, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 254, 294, 307, 334, 361, 368, 376, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (142, true), (143, true), (162, true), (390, true), (394, true), (434, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(120, true), (123, true), (127, true), (145, true), (321, true), (325, true), (379, true), (384, true), (389, true), (433, true), (438, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (254, true), (294, true), (307, true), (334, true), (361, true), (368, true), (376, true), (467, true), (478, true), (484, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (329, true), (340, true), (350, true), (363, true), (371, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 120, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 142, 143, 162, 390, 394, 434, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 329, 340, 350, 363, 371, 439, 446, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 687, 705, 120, 123, 127, 145, 321, 325, 379, 384, 389, 433, 438, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 254, 294, 307, 334, 361, 368, 376, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(53, SumMonoid(26021)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 334), fp: EncodedCountingMonoid(15, SumMonoid(2842)) }, Fingerprint { range: Range(334, 514), fp: EncodedCountingMonoid(14, SumMonoid(5884)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(12, SumMonoid(10153)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 192), fp: EncodedCountingMonoid(13, SumMonoid(1255)) }, Fingerprint { range: Range(192, 334), fp: EncodedCountingMonoid(13, SumMonoid(3409)) }, Fingerprint { range: Range(334, 446), fp: EncodedCountingMonoid(8, SumMonoid(3081)) }, Fingerprint { range: Range(446, 514), fp: EncodedCountingMonoid(7, SumMonoid(3269)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(4, SumMonoid(197)) }, Fingerprint { range: Range(108, 192), fp: EncodedCountingMonoid(4, SumMonoid(503)) }, Fingerprint { range: Range(192, 321), fp: EncodedCountingMonoid(4, SumMonoid(1169)) }, Fingerprint { range: Range(321, 334), fp: EncodedCountingMonoid(3, SumMonoid(973)) }, Fingerprint { range: Range(334, 384), fp: EncodedCountingMonoid(5, SumMonoid(1818)) }, Fingerprint { range: Range(384, 446), fp: EncodedCountingMonoid(4, SumMonoid(1644)) }, Fingerprint { range: Range(446, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(192, 257), fp: EncodedCountingMonoid(6, SumMonoid(1349)) }, Fingerprint { range: Range(257, 321), fp: EncodedCountingMonoid(5, SumMonoid(1404)) }, Fingerprint { range: Range(446, 479), fp: EncodedCountingMonoid(4, SumMonoid(1810)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(108, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 192), items: [162, 185], want_response: true }, ItemSet { range: Range(321, 334), items: [327, 329], want_response: true }, ItemSet { range: Range(334, 363), items: [340, 350], want_response: true }, ItemSet { range: Range(363, 384), items: [363, 371], want_response: true }, ItemSet { range: Range(384, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 446), items: [434, 439], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [493, 500, 687, 705], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(108, 162), items: [108, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 192), items: [], want_response: false }, ItemSet { range: Range(321, 334), items: [321, 325, 327], want_response: false }, ItemSet { range: Range(334, 363), items: [334, 361], want_response: false }, ItemSet { range: Range(363, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(384, 434), items: [384, 389, 433], want_response: false }, ItemSet { range: Range(434, 446), items: [438], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(192, 257), items: [254], want_response: true }, ItemSet { range: Range(257, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 321), items: [314], want_response: true }, ItemSet { range: Range(446, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [690, 694, 700, 712, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969], provide: [(493, true), (500, true), (687, true), (705, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(192, 257), items: [192, 199, 223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 314), items: [257, 261, 270, 302], want_response: false }, ItemSet { range: Range(314, 321), items: [314], want_response: false }, ItemSet { range: Range(446, 479), items: [446, 450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [108, 123, 127, 145, 321, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 254, 294, 307, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (142, true), (143, true), (162, true), (185, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(108, true), (123, true), (127, true), (145, true), (321, true), (325, true), (334, true), (361, true), (368, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (254, true), (294, true), (307, true), (467, true), (478, true), (484, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 314, 321, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 687, 705, 108, 123, 127, 145, 321, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 254, 294, 307, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(52, SumMonoid(25700)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 334), fp: EncodedCountingMonoid(14, SumMonoid(2521)) }, Fingerprint { range: Range(334, 514), fp: EncodedCountingMonoid(14, SumMonoid(5884)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(12, SumMonoid(10153)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 192), fp: EncodedCountingMonoid(13, SumMonoid(1255)) }, Fingerprint { range: Range(192, 334), fp: EncodedCountingMonoid(13, SumMonoid(3409)) }, Fingerprint { range: Range(334, 446), fp: EncodedCountingMonoid(8, SumMonoid(3081)) }, Fingerprint { range: Range(446, 514), fp: EncodedCountingMonoid(7, SumMonoid(3269)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(4, SumMonoid(197)) }, Fingerprint { range: Range(108, 192), fp: EncodedCountingMonoid(4, SumMonoid(503)) }, Fingerprint { range: Range(192, 314), fp: EncodedCountingMonoid(3, SumMonoid(855)) }, Fingerprint { range: Range(314, 334), fp: EncodedCountingMonoid(3, SumMonoid(966)) }, Fingerprint { range: Range(334, 384), fp: EncodedCountingMonoid(5, SumMonoid(1818)) }, Fingerprint { range: Range(384, 446), fp: EncodedCountingMonoid(4, SumMonoid(1644)) }, Fingerprint { range: Range(446, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(192, 253), fp: EncodedCountingMonoid(5, SumMonoid(1096)) }, Fingerprint { range: Range(253, 314), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(446, 479), fp: EncodedCountingMonoid(4, SumMonoid(1810)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(108, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 192), items: [162, 185], want_response: true }, ItemSet { range: Range(314, 329), items: [314, 327], want_response: true }, ItemSet { range: Range(329, 334), items: [329], want_response: true }, ItemSet { range: Range(334, 363), items: [340, 350], want_response: true }, ItemSet { range: Range(363, 384), items: [363, 371], want_response: true }, ItemSet { range: Range(384, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 446), items: [434, 439], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [493, 500, 687, 705], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(108, 162), items: [108, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 192), items: [], want_response: false }, ItemSet { range: Range(314, 329), items: [314, 325, 327], want_response: false }, ItemSet { range: Range(329, 334), items: [], want_response: false }, ItemSet { range: Range(334, 363), items: [334, 361], want_response: false }, ItemSet { range: Range(363, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(384, 434), items: [384, 389, 433], want_response: false }, ItemSet { range: Range(434, 446), items: [438], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(192, 253), items: [], want_response: true }, ItemSet { range: Range(253, 307), items: [254, 294], want_response: true }, ItemSet { range: Range(307, 314), items: [307], want_response: true }, ItemSet { range: Range(446, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [690, 694, 700, 712, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969], provide: [(493, true), (500, true), (687, true), (705, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(192, 253), items: [192, 199, 223, 239, 243], want_response: false }, ItemSet { range: Range(253, 307), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(307, 314), items: [], want_response: false }, ItemSet { range: Range(446, 479), items: [446, 450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [108, 123, 127, 145, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 254, 294, 307, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (142, true), (143, true), (162, true), (185, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(108, true), (123, true), (127, true), (145, true), (325, true), (334, true), (361, true), (368, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (254, true), (294, true), (307, true), (467, true), (478, true), (484, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 687, 705, 108, 123, 127, 145, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 254, 294, 307, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(51, SumMonoid(25013)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 334), fp: EncodedCountingMonoid(14, SumMonoid(2521)) }, Fingerprint { range: Range(334, 514), fp: EncodedCountingMonoid(14, SumMonoid(5884)) }, Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(12, SumMonoid(7170)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(11, SumMonoid(9438)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 192), fp: EncodedCountingMonoid(13, SumMonoid(1255)) }, Fingerprint { range: Range(192, 334), fp: EncodedCountingMonoid(13, SumMonoid(3409)) }, Fingerprint { range: Range(334, 446), fp: EncodedCountingMonoid(8, SumMonoid(3081)) }, Fingerprint { range: Range(446, 514), fp: EncodedCountingMonoid(7, SumMonoid(3269)) }, Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(4, SumMonoid(197)) }, Fingerprint { range: Range(108, 192), fp: EncodedCountingMonoid(4, SumMonoid(503)) }, Fingerprint { range: Range(192, 314), fp: EncodedCountingMonoid(3, SumMonoid(855)) }, Fingerprint { range: Range(314, 334), fp: EncodedCountingMonoid(3, SumMonoid(966)) }, Fingerprint { range: Range(334, 384), fp: EncodedCountingMonoid(5, SumMonoid(1818)) }, Fingerprint { range: Range(384, 446), fp: EncodedCountingMonoid(4, SumMonoid(1644)) }, Fingerprint { range: Range(446, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(5, SumMonoid(2680)) }, Fingerprint { range: Range(562, 690), fp: EncodedCountingMonoid(5, SumMonoid(3070)) }, Fingerprint { range: Range(779, 799), fp: EncodedCountingMonoid(4, SumMonoid(3127)) }, Fingerprint { range: Range(799, 916), fp: EncodedCountingMonoid(4, SumMonoid(3450)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 971), items: [943, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(192, 253), fp: EncodedCountingMonoid(5, SumMonoid(1096)) }, Fingerprint { range: Range(253, 314), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(446, 479), fp: EncodedCountingMonoid(4, SumMonoid(1810)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(562, 609), fp: EncodedCountingMonoid(5, SumMonoid(2945)) }, Fingerprint { range: Range(609, 690), fp: EncodedCountingMonoid(5, SumMonoid(3273)) }, Fingerprint { range: Range(799, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 971), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(108, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 192), items: [162, 185], want_response: true }, ItemSet { range: Range(314, 329), items: [314, 327], want_response: true }, ItemSet { range: Range(329, 334), items: [329], want_response: true }, ItemSet { range: Range(334, 363), items: [340, 350], want_response: true }, ItemSet { range: Range(363, 384), items: [363, 371], want_response: true }, ItemSet { range: Range(384, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 446), items: [434, 439], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(779, 799), items: [], want_response: true }], wants: [493, 500, 705, 715, 943, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(108, 162), items: [108, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 192), items: [], want_response: false }, ItemSet { range: Range(314, 329), items: [314, 325, 327], want_response: false }, ItemSet { range: Range(329, 334), items: [], want_response: false }, ItemSet { range: Range(334, 363), items: [334, 361], want_response: false }, ItemSet { range: Range(363, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(384, 434), items: [384, 389, 433], want_response: false }, ItemSet { range: Range(434, 446), items: [438], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(779, 799), items: [779, 781, 782, 785], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(192, 253), items: [], want_response: true }, ItemSet { range: Range(253, 307), items: [254, 294], want_response: true }, ItemSet { range: Range(307, 314), items: [307], want_response: true }, ItemSet { range: Range(446, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(609, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 690), items: [667], want_response: true }, ItemSet { range: Range(799, 879), items: [799, 861], want_response: true }, ItemSet { range: Range(879, 916), items: [892, 898], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540], provide: [(493, true), (500, true), (705, true), (715, true), (943, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(192, 253), items: [192, 199, 223, 239, 243], want_response: false }, ItemSet { range: Range(253, 307), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(307, 314), items: [], want_response: false }, ItemSet { range: Range(446, 479), items: [446, 450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 690), items: [674, 683], want_response: false }, ItemSet { range: Range(799, 879), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [108, 123, 127, 145, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 517, 526, 541, 544, 552, 779, 781, 782, 785, 9, 55, 56, 77, 254, 294, 307, 467, 478, 484, 619, 630, 667, 799, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (142, true), (143, true), (162, true), (185, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (514, true), (528, true), (535, true), (540, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909], provide: [(108, true), (123, true), (127, true), (145, true), (325, true), (334, true), (361, true), (368, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (517, true), (526, true), (541, true), (544, true), (552, true), (779, true), (781, true), (782, true), (785, true), (9, true), (55, true), (56, true), (77, true), (254, true), (294, true), (307, true), (467, true), (478, true), (484, true), (619, true), (630, true), (667, true), (799, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 705, 715, 943, 947, 971, 108, 123, 127, 145, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 517, 526, 541, 544, 552, 779, 781, 782, 785, 9, 55, 56, 77, 254, 294, 307, 467, 478, 484, 619, 630, 667, 799, 861, 892, 898]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 55, 56, 62, 77, 79, 88, 93, 96, 101, 108, 123, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 254, 257, 261, 270, 294, 302, 307, 314, 325, 327, 329, 334, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 438, 439, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 943, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 55, 56, 62, 77, 79, 88, 93, 96, 101, 108, 123, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 254, 257, 261, 270, 294, 302, 307, 314, 325, 327, 329, 334, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 438, 439, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 943, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 55, 56, 62, 77, 79, 88, 93, 96, 101, 108, 123, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 254, 257, 261, 270, 294, 302, 307, 314, 325, 327, 329, 334, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 438, 439, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 943, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(52, SumMonoid(25700)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 334), fp: EncodedCountingMonoid(14, SumMonoid(2521)) }, Fingerprint { range: Range(334, 514), fp: EncodedCountingMonoid(14, SumMonoid(5884)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(12, SumMonoid(10153)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 192), fp: EncodedCountingMonoid(13, SumMonoid(1255)) }, Fingerprint { range: Range(192, 334), fp: EncodedCountingMonoid(13, SumMonoid(3409)) }, Fingerprint { range: Range(334, 446), fp: EncodedCountingMonoid(8, SumMonoid(3081)) }, Fingerprint { range: Range(446, 514), fp: EncodedCountingMonoid(7, SumMonoid(3269)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(4, SumMonoid(197)) }, Fingerprint { range: Range(108, 192), fp: EncodedCountingMonoid(4, SumMonoid(503)) }, Fingerprint { range: Range(192, 314), fp: EncodedCountingMonoid(3, SumMonoid(855)) }, Fingerprint { range: Range(314, 334), fp: EncodedCountingMonoid(3, SumMonoid(966)) }, Fingerprint { range: Range(334, 384), fp: EncodedCountingMonoid(5, SumMonoid(1818)) }, Fingerprint { range: Range(384, 446), fp: EncodedCountingMonoid(4, SumMonoid(1644)) }, Fingerprint { range: Range(446, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(192, 253), fp: EncodedCountingMonoid(5, SumMonoid(1096)) }, Fingerprint { range: Range(253, 314), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(446, 479), fp: EncodedCountingMonoid(4, SumMonoid(1810)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(108, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 192), items: [162, 185], want_response: true }, ItemSet { range: Range(314, 329), items: [314, 327], want_response: true }, ItemSet { range: Range(329, 334), items: [329], want_response: true }, ItemSet { range: Range(334, 363), items: [340, 350], want_response: true }, ItemSet { range: Range(363, 384), items: [363, 371], want_response: true }, ItemSet { range: Range(384, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 446), items: [434, 439], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [493, 500, 687, 705], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(108, 162), items: [108, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 192), items: [], want_response: false }, ItemSet { range: Range(314, 329), items: [314, 325, 327], want_response: false }, ItemSet { range: Range(329, 334), items: [], want_response: false }, ItemSet { range: Range(334, 363), items: [334, 361], want_response: false }, ItemSet { range: Range(363, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(384, 434), items: [384, 389, 433], want_response: false }, ItemSet { range: Range(434, 446), items: [438], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(192, 253), items: [], want_response: true }, ItemSet { range: Range(253, 307), items: [254, 294], want_response: true }, ItemSet { range: Range(307, 314), items: [307], want_response: true }, ItemSet { range: Range(446, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [690, 694, 700, 712, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969], provide: [(493, true), (500, true), (687, true), (705, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(192, 253), items: [192, 199, 223, 239, 243], want_response: false }, ItemSet { range: Range(253, 307), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(307, 314), items: [], want_response: false }, ItemSet { range: Range(446, 479), items: [446, 450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [108, 123, 127, 145, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 254, 294, 307, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (142, true), (143, true), (162, true), (185, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(108, true), (123, true), (127, true), (145, true), (325, true), (334, true), (361, true), (368, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (254, true), (294, true), (307, true), (467, true), (478, true), (484, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 687, 705, 108, 123, 127, 145, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 254, 294, 307, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(51, SumMonoid(25156)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 334), fp: EncodedCountingMonoid(14, SumMonoid(2521)) }, Fingerprint { range: Range(334, 514), fp: EncodedCountingMonoid(14, SumMonoid(5884)) }, Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(12, SumMonoid(7313)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(11, SumMonoid(9438)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 192), fp: EncodedCountingMonoid(13, SumMonoid(1255)) }, Fingerprint { range: Range(192, 334), fp: EncodedCountingMonoid(13, SumMonoid(3409)) }, Fingerprint { range: Range(334, 446), fp: EncodedCountingMonoid(8, SumMonoid(3081)) }, Fingerprint { range: Range(446, 514), fp: EncodedCountingMonoid(7, SumMonoid(3269)) }, Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(4, SumMonoid(197)) }, Fingerprint { range: Range(108, 192), fp: EncodedCountingMonoid(4, SumMonoid(503)) }, Fingerprint { range: Range(192, 314), fp: EncodedCountingMonoid(3, SumMonoid(855)) }, Fingerprint { range: Range(314, 334), fp: EncodedCountingMonoid(3, SumMonoid(966)) }, Fingerprint { range: Range(334, 384), fp: EncodedCountingMonoid(5, SumMonoid(1818)) }, Fingerprint { range: Range(384, 446), fp: EncodedCountingMonoid(4, SumMonoid(1644)) }, Fingerprint { range: Range(446, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 592), fp: EncodedCountingMonoid(5, SumMonoid(2698)) }, Fingerprint { range: Range(592, 690), fp: EncodedCountingMonoid(5, SumMonoid(3195)) }, Fingerprint { range: Range(779, 799), fp: EncodedCountingMonoid(4, SumMonoid(3127)) }, Fingerprint { range: Range(799, 916), fp: EncodedCountingMonoid(4, SumMonoid(3450)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 971), items: [943, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(192, 253), fp: EncodedCountingMonoid(5, SumMonoid(1096)) }, Fingerprint { range: Range(253, 314), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(446, 479), fp: EncodedCountingMonoid(4, SumMonoid(1810)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(514, 540), fp: EncodedCountingMonoid(3, SumMonoid(1577)) }, Fingerprint { range: Range(540, 592), fp: EncodedCountingMonoid(3, SumMonoid(1687)) }, Fingerprint { range: Range(592, 645), fp: EncodedCountingMonoid(4, SumMonoid(2407)) }, Fingerprint { range: Range(645, 690), fp: EncodedCountingMonoid(4, SumMonoid(2664)) }, Fingerprint { range: Range(799, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 971), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(108, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 192), items: [162, 185], want_response: true }, ItemSet { range: Range(314, 329), items: [314, 327], want_response: true }, ItemSet { range: Range(329, 334), items: [329], want_response: true }, ItemSet { range: Range(334, 363), items: [340, 350], want_response: true }, ItemSet { range: Range(363, 384), items: [363, 371], want_response: true }, ItemSet { range: Range(384, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 446), items: [434, 439], want_response: true }, ItemSet { range: Range(779, 799), items: [], want_response: true }], wants: [493, 500, 705, 715, 943, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(108, 162), items: [108, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 192), items: [], want_response: false }, ItemSet { range: Range(314, 329), items: [314, 325, 327], want_response: false }, ItemSet { range: Range(329, 334), items: [], want_response: false }, ItemSet { range: Range(334, 363), items: [334, 361], want_response: false }, ItemSet { range: Range(363, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(384, 434), items: [384, 389, 433], want_response: false }, ItemSet { range: Range(434, 446), items: [438], want_response: false }, ItemSet { range: Range(779, 799), items: [779, 781, 782, 785], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(192, 253), items: [], want_response: true }, ItemSet { range: Range(253, 307), items: [254, 294], want_response: true }, ItemSet { range: Range(307, 314), items: [307], want_response: true }, ItemSet { range: Range(446, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(514, 540), items: [517, 526], want_response: true }, ItemSet { range: Range(540, 562), items: [541, 552], want_response: true }, ItemSet { range: Range(562, 592), items: [562], want_response: true }, ItemSet { range: Range(592, 630), items: [592, 619], want_response: true }, ItemSet { range: Range(630, 645), items: [630], want_response: true }, ItemSet { range: Range(645, 690), items: [667, 687], want_response: true }, ItemSet { range: Range(799, 879), items: [799, 861], want_response: true }, ItemSet { range: Range(879, 916), items: [892, 898], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439], provide: [(493, true), (500, true), (705, true), (715, true), (943, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(192, 253), items: [192, 199, 223, 239, 243], want_response: false }, ItemSet { range: Range(253, 307), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(307, 314), items: [], want_response: false }, ItemSet { range: Range(446, 479), items: [446, 450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(514, 540), items: [514, 528, 535], want_response: false }, ItemSet { range: Range(540, 562), items: [540], want_response: false }, ItemSet { range: Range(562, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 630), items: [592, 601, 605, 609], want_response: false }, ItemSet { range: Range(630, 645), items: [], want_response: false }, ItemSet { range: Range(645, 690), items: [645, 662, 674, 683], want_response: false }, ItemSet { range: Range(799, 879), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [108, 123, 127, 145, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 779, 781, 782, 785, 9, 55, 56, 77, 254, 294, 307, 467, 478, 484, 517, 526, 541, 552, 619, 630, 667, 687, 799, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (142, true), (143, true), (162, true), (185, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 585, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909], provide: [(108, true), (123, true), (127, true), (145, true), (325, true), (334, true), (361, true), (368, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (779, true), (781, true), (782, true), (785, true), (9, true), (55, true), (56, true), (77, true), (254, true), (294, true), (307, true), (467, true), (478, true), (484, true), (517, true), (526, true), (541, true), (552, true), (619, true), (630, true), (667, true), (687, true), (799, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (514, true), (528, true), (535, true), (540, true), (585, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 585, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 705, 715, 943, 947, 971, 108, 123, 127, 145, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 779, 781, 782, 785, 9, 55, 56, 77, 254, 294, 307, 467, 478, 484, 517, 526, 541, 552, 619, 630, 667, 687, 799, 861, 892, 898]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 55, 56, 62, 77, 79, 88, 93, 96, 101, 108, 123, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 254, 257, 261, 270, 294, 302, 307, 314, 325, 327, 329, 334, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 438, 439, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 943, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 55, 56, 62, 77, 79, 88, 93, 96, 101, 108, 123, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 254, 257, 261, 270, 294, 302, 307, 314, 325, 327, 329, 334, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 438, 439, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 943, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 55, 56, 62, 77, 79, 88, 93, 96, 101, 108, 123, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 254, 257, 261, 270, 294, 302, 307, 314, 325, 327, 329, 334, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 438, 439, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 943, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(52, SumMonoid(25700)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 334), fp: EncodedCountingMonoid(14, SumMonoid(2521)) }, Fingerprint { range: Range(334, 514), fp: EncodedCountingMonoid(14, SumMonoid(5884)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(12, SumMonoid(10153)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 192), fp: EncodedCountingMonoid(13, SumMonoid(1255)) }, Fingerprint { range: Range(192, 334), fp: EncodedCountingMonoid(13, SumMonoid(3409)) }, Fingerprint { range: Range(334, 446), fp: EncodedCountingMonoid(8, SumMonoid(3081)) }, Fingerprint { range: Range(446, 514), fp: EncodedCountingMonoid(7, SumMonoid(3269)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(4, SumMonoid(197)) }, Fingerprint { range: Range(108, 192), fp: EncodedCountingMonoid(4, SumMonoid(503)) }, Fingerprint { range: Range(192, 314), fp: EncodedCountingMonoid(3, SumMonoid(855)) }, Fingerprint { range: Range(314, 334), fp: EncodedCountingMonoid(3, SumMonoid(966)) }, Fingerprint { range: Range(334, 384), fp: EncodedCountingMonoid(5, SumMonoid(1818)) }, Fingerprint { range: Range(384, 446), fp: EncodedCountingMonoid(4, SumMonoid(1644)) }, Fingerprint { range: Range(446, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(192, 253), fp: EncodedCountingMonoid(5, SumMonoid(1096)) }, Fingerprint { range: Range(253, 314), fp: EncodedCountingMonoid(5, SumMonoid(1343)) }, Fingerprint { range: Range(446, 479), fp: EncodedCountingMonoid(4, SumMonoid(1810)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(108, 162), items: [142, 143], want_response: true }, ItemSet { range: Range(162, 192), items: [162, 185], want_response: true }, ItemSet { range: Range(314, 329), items: [314, 327], want_response: true }, ItemSet { range: Range(329, 334), items: [329], want_response: true }, ItemSet { range: Range(334, 363), items: [340, 350], want_response: true }, ItemSet { range: Range(363, 384), items: [363, 371], want_response: true }, ItemSet { range: Range(384, 434), items: [390, 394], want_response: true }, ItemSet { range: Range(434, 446), items: [434, 439], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [493, 500, 687, 705], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(108, 162), items: [108, 123, 127, 145], want_response: false }, ItemSet { range: Range(162, 192), items: [], want_response: false }, ItemSet { range: Range(314, 329), items: [314, 325, 327], want_response: false }, ItemSet { range: Range(329, 334), items: [], want_response: false }, ItemSet { range: Range(334, 363), items: [334, 361], want_response: false }, ItemSet { range: Range(363, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(384, 434), items: [384, 389, 433], want_response: false }, ItemSet { range: Range(434, 446), items: [438], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(192, 253), items: [], want_response: true }, ItemSet { range: Range(253, 307), items: [254, 294], want_response: true }, ItemSet { range: Range(307, 314), items: [307], want_response: true }, ItemSet { range: Range(446, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [690, 694, 700, 712, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969], provide: [(493, true), (500, true), (687, true), (705, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(192, 253), items: [192, 199, 223, 239, 243], want_response: false }, ItemSet { range: Range(253, 307), items: [253, 257, 261, 270, 302], want_response: false }, ItemSet { range: Range(307, 314), items: [], want_response: false }, ItemSet { range: Range(446, 479), items: [446, 450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [108, 123, 127, 145, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 254, 294, 307, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (142, true), (143, true), (162, true), (185, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(108, true), (123, true), (127, true), (145, true), (325, true), (334, true), (361, true), (368, true), (376, true), (379, true), (384, true), (389, true), (433, true), (438, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (254, true), (294, true), (307, true), (467, true), (478, true), (484, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 327, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 142, 143, 162, 185, 329, 340, 350, 363, 371, 390, 394, 434, 439, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 446, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 687, 705, 108, 123, 127, 145, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 254, 294, 307, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(51, SumMonoid(25373)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 361), fp: EncodedCountingMonoid(14, SumMonoid(2528)) }, Fingerprint { range: Range(361, 514), fp: EncodedCountingMonoid(13, SumMonoid(5550)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(12, SumMonoid(10153)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 199), fp: EncodedCountingMonoid(14, SumMonoid(1447)) }, Fingerprint { range: Range(199, 361), fp: EncodedCountingMonoid(14, SumMonoid(3907)) }, Fingerprint { range: Range(361, 450), fp: EncodedCountingMonoid(7, SumMonoid(2837)) }, Fingerprint { range: Range(450, 514), fp: EncodedCountingMonoid(6, SumMonoid(2823)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(4, SumMonoid(197)) }, Fingerprint { range: Range(108, 199), fp: EncodedCountingMonoid(4, SumMonoid(503)) }, Fingerprint { range: Range(199, 314), fp: EncodedCountingMonoid(3, SumMonoid(855)) }, Fingerprint { range: Range(314, 361), fp: EncodedCountingMonoid(3, SumMonoid(973)) }, Fingerprint { range: Range(361, 384), fp: EncodedCountingMonoid(4, SumMonoid(1484)) }, Fingerprint { range: Range(384, 450), fp: EncodedCountingMonoid(4, SumMonoid(1644)) }, Fingerprint { range: Range(450, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(199, 257), fp: EncodedCountingMonoid(5, SumMonoid(1157)) }, Fingerprint { range: Range(257, 314), fp: EncodedCountingMonoid(4, SumMonoid(1090)) }, Fingerprint { range: Range(314, 340), fp: EncodedCountingMonoid(3, SumMonoid(970)) }, Fingerprint { range: Range(384, 439), fp: EncodedCountingMonoid(3, SumMonoid(1218)) }, Fingerprint { range: Range(450, 479), fp: EncodedCountingMonoid(3, SumMonoid(1364)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(185, 199), items: [185, 192], want_response: true }, ItemSet { range: Range(340, 361), items: [340, 350], want_response: true }, ItemSet { range: Range(361, 384), items: [363, 371], want_response: true }, ItemSet { range: Range(439, 450), items: [439, 446], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [493, 500, 687, 705], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(185, 199), items: [], want_response: false }, ItemSet { range: Range(340, 361), items: [], want_response: false }, ItemSet { range: Range(361, 384), items: [361, 368, 376, 379], want_response: false }, ItemSet { range: Range(439, 450), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 127), items: [108, 123], want_response: true }, ItemSet { range: Range(127, 185), items: [127, 145], want_response: true }, ItemSet { range: Range(199, 257), items: [254], want_response: true }, ItemSet { range: Range(257, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 334), items: [314, 325], want_response: true }, ItemSet { range: Range(334, 340), items: [334], want_response: true }, ItemSet { range: Range(384, 433), items: [384, 389], want_response: true }, ItemSet { range: Range(433, 439), items: [433, 438], want_response: true }, ItemSet { range: Range(450, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [690, 694, 700, 712, 185, 192, 340, 350, 363, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969], provide: [(493, true), (500, true), (687, true), (705, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 127), items: [], want_response: false }, ItemSet { range: Range(127, 185), items: [142, 143, 162], want_response: false }, ItemSet { range: Range(199, 257), items: [199, 223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 314), items: [257, 261, 270, 302], want_response: false }, ItemSet { range: Range(314, 334), items: [314, 327, 329], want_response: false }, ItemSet { range: Range(334, 340), items: [], want_response: false }, ItemSet { range: Range(384, 433), items: [390, 394], want_response: false }, ItemSet { range: Range(433, 439), items: [434], want_response: false }, ItemSet { range: Range(450, 479), items: [450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [361, 368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 325, 334, 384, 389, 433, 438, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (185, true), (192, true), (340, true), (350, true), (363, true), (371, true), (439, true), (446, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 199, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(361, true), (368, true), (376, true), (379, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (123, true), (127, true), (145, true), (254, true), (294, true), (307, true), (325, true), (334, true), (384, true), (389, true), (433, true), (438, true), (467, true), (478, true), (484, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (327, true), (329, true), (390, true), (394, true), (434, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 185, 192, 340, 350, 363, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 199, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 687, 705, 361, 368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 325, 334, 384, 389, 433, 438, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(50, SumMonoid(24811)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 361), fp: EncodedCountingMonoid(14, SumMonoid(2528)) }, Fingerprint { range: Range(361, 514), fp: EncodedCountingMonoid(13, SumMonoid(5550)) }, Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(12, SumMonoid(7295)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(11, SumMonoid(9438)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 199), fp: EncodedCountingMonoid(14, SumMonoid(1447)) }, Fingerprint { range: Range(199, 361), fp: EncodedCountingMonoid(14, SumMonoid(3907)) }, Fingerprint { range: Range(361, 450), fp: EncodedCountingMonoid(7, SumMonoid(2837)) }, Fingerprint { range: Range(450, 514), fp: EncodedCountingMonoid(6, SumMonoid(2823)) }, Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(4, SumMonoid(197)) }, Fingerprint { range: Range(108, 199), fp: EncodedCountingMonoid(4, SumMonoid(503)) }, Fingerprint { range: Range(199, 314), fp: EncodedCountingMonoid(3, SumMonoid(855)) }, Fingerprint { range: Range(314, 361), fp: EncodedCountingMonoid(3, SumMonoid(973)) }, Fingerprint { range: Range(361, 384), fp: EncodedCountingMonoid(4, SumMonoid(1484)) }, Fingerprint { range: Range(384, 450), fp: EncodedCountingMonoid(4, SumMonoid(1644)) }, Fingerprint { range: Range(450, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 592), fp: EncodedCountingMonoid(5, SumMonoid(2680)) }, Fingerprint { range: Range(592, 690), fp: EncodedCountingMonoid(5, SumMonoid(3195)) }, Fingerprint { range: Range(779, 799), fp: EncodedCountingMonoid(4, SumMonoid(3127)) }, Fingerprint { range: Range(799, 916), fp: EncodedCountingMonoid(4, SumMonoid(3450)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 971), items: [943, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(199, 257), fp: EncodedCountingMonoid(5, SumMonoid(1157)) }, Fingerprint { range: Range(257, 314), fp: EncodedCountingMonoid(4, SumMonoid(1090)) }, Fingerprint { range: Range(314, 340), fp: EncodedCountingMonoid(3, SumMonoid(970)) }, Fingerprint { range: Range(384, 439), fp: EncodedCountingMonoid(3, SumMonoid(1218)) }, Fingerprint { range: Range(450, 479), fp: EncodedCountingMonoid(3, SumMonoid(1364)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(514, 540), fp: EncodedCountingMonoid(3, SumMonoid(1577)) }, Fingerprint { range: Range(540, 592), fp: EncodedCountingMonoid(3, SumMonoid(1687)) }, Fingerprint { range: Range(592, 645), fp: EncodedCountingMonoid(4, SumMonoid(2407)) }, Fingerprint { range: Range(645, 690), fp: EncodedCountingMonoid(4, SumMonoid(2664)) }, Fingerprint { range: Range(799, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 971), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(185, 199), items: [185, 192], want_response: true }, ItemSet { range: Range(340, 361), items: [340, 350], want_response: true }, ItemSet { range: Range(361, 384), items: [363, 371], want_response: true }, ItemSet { range: Range(439, 450), items: [439, 446], want_response: true }, ItemSet { range: Range(779, 799), items: [], want_response: true }], wants: [493, 500, 705, 715, 943, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(185, 199), items: [], want_response: false }, ItemSet { range: Range(340, 361), items: [], want_response: false }, ItemSet { range: Range(361, 384), items: [361, 368, 376, 379], want_response: false }, ItemSet { range: Range(439, 450), items: [], want_response: false }, ItemSet { range: Range(779, 799), items: [779, 781, 782, 785], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 127), items: [108, 123], want_response: true }, ItemSet { range: Range(127, 185), items: [127, 145], want_response: true }, ItemSet { range: Range(199, 257), items: [254], want_response: true }, ItemSet { range: Range(257, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 334), items: [314, 325], want_response: true }, ItemSet { range: Range(334, 340), items: [334], want_response: true }, ItemSet { range: Range(384, 433), items: [384, 389], want_response: true }, ItemSet { range: Range(433, 439), items: [433, 438], want_response: true }, ItemSet { range: Range(450, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(514, 540), items: [517, 526], want_response: true }, ItemSet { range: Range(540, 552), items: [541, 544], want_response: true }, ItemSet { range: Range(552, 592), items: [552], want_response: true }, ItemSet { range: Range(592, 630), items: [592, 619], want_response: true }, ItemSet { range: Range(630, 645), items: [630], want_response: true }, ItemSet { range: Range(645, 690), items: [667, 687], want_response: true }, ItemSet { range: Range(799, 879), items: [799, 861], want_response: true }, ItemSet { range: Range(879, 916), items: [892, 898], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 185, 192, 340, 350, 363, 371, 439, 446], provide: [(493, true), (500, true), (705, true), (715, true), (943, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 127), items: [], want_response: false }, ItemSet { range: Range(127, 185), items: [142, 143, 162], want_response: false }, ItemSet { range: Range(199, 257), items: [199, 223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 314), items: [257, 261, 270, 302], want_response: false }, ItemSet { range: Range(314, 334), items: [314, 327, 329], want_response: false }, ItemSet { range: Range(334, 340), items: [], want_response: false }, ItemSet { range: Range(384, 433), items: [390, 394], want_response: false }, ItemSet { range: Range(433, 439), items: [434], want_response: false }, ItemSet { range: Range(450, 479), items: [450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(514, 540), items: [514, 528, 535], want_response: false }, ItemSet { range: Range(540, 552), items: [540], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 630), items: [592, 601, 605, 609], want_response: false }, ItemSet { range: Range(630, 645), items: [], want_response: false }, ItemSet { range: Range(645, 690), items: [645, 662, 674, 683], want_response: false }, ItemSet { range: Range(799, 879), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [361, 368, 376, 379, 779, 781, 782, 785, 9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 325, 334, 384, 389, 433, 438, 467, 478, 484, 517, 526, 541, 544, 552, 619, 630, 667, 687, 799, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (185, true), (192, true), (340, true), (350, true), (363, true), (371, true), (439, true), (446, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 199, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 390, 394, 434, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909], provide: [(361, true), (368, true), (376, true), (379, true), (779, true), (781, true), (782, true), (785, true), (9, true), (55, true), (56, true), (77, true), (108, true), (123, true), (127, true), (145, true), (254, true), (294, true), (307, true), (325, true), (334, true), (384, true), (389, true), (433, true), (438, true), (467, true), (478, true), (484, true), (517, true), (526, true), (541, true), (544, true), (552, true), (619, true), (630, true), (667, true), (687, true), (799, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (327, true), (329, true), (390, true), (394, true), (434, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (514, true), (528, true), (535, true), (540, true), (562, true), (585, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 185, 192, 340, 350, 363, 371, 439, 446, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 199, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 390, 394, 434, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 705, 715, 943, 947, 971, 361, 368, 376, 379, 779, 781, 782, 785, 9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 325, 334, 384, 389, 433, 438, 467, 478, 484, 517, 526, 541, 544, 552, 619, 630, 667, 687, 799, 861, 892, 898]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 55, 56, 62, 77, 79, 88, 93, 96, 101, 108, 123, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 254, 257, 261, 270, 294, 302, 307, 314, 325, 327, 329, 334, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 438, 439, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 943, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 55, 56, 62, 77, 79, 88, 93, 96, 101, 108, 123, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 254, 257, 261, 270, 294, 302, 307, 314, 325, 327, 329, 334, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 438, 439, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 943, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 55, 56, 62, 77, 79, 88, 93, 96, 101, 108, 123, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 254, 257, 261, 270, 294, 302, 307, 314, 325, 327, 329, 334, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 438, 439, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 943, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(51, SumMonoid(25373)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 361), fp: EncodedCountingMonoid(14, SumMonoid(2528)) }, Fingerprint { range: Range(361, 514), fp: EncodedCountingMonoid(13, SumMonoid(5550)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(12, SumMonoid(10153)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 199), fp: EncodedCountingMonoid(14, SumMonoid(1447)) }, Fingerprint { range: Range(199, 361), fp: EncodedCountingMonoid(14, SumMonoid(3907)) }, Fingerprint { range: Range(361, 450), fp: EncodedCountingMonoid(7, SumMonoid(2837)) }, Fingerprint { range: Range(450, 514), fp: EncodedCountingMonoid(6, SumMonoid(2823)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(4, SumMonoid(197)) }, Fingerprint { range: Range(108, 199), fp: EncodedCountingMonoid(4, SumMonoid(503)) }, Fingerprint { range: Range(199, 314), fp: EncodedCountingMonoid(3, SumMonoid(855)) }, Fingerprint { range: Range(314, 361), fp: EncodedCountingMonoid(3, SumMonoid(973)) }, Fingerprint { range: Range(361, 384), fp: EncodedCountingMonoid(4, SumMonoid(1484)) }, Fingerprint { range: Range(384, 450), fp: EncodedCountingMonoid(4, SumMonoid(1644)) }, Fingerprint { range: Range(450, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(199, 257), fp: EncodedCountingMonoid(5, SumMonoid(1157)) }, Fingerprint { range: Range(257, 314), fp: EncodedCountingMonoid(4, SumMonoid(1090)) }, Fingerprint { range: Range(314, 340), fp: EncodedCountingMonoid(3, SumMonoid(970)) }, Fingerprint { range: Range(384, 439), fp: EncodedCountingMonoid(3, SumMonoid(1218)) }, Fingerprint { range: Range(450, 479), fp: EncodedCountingMonoid(3, SumMonoid(1364)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(185, 199), items: [185, 192], want_response: true }, ItemSet { range: Range(340, 361), items: [340, 350], want_response: true }, ItemSet { range: Range(361, 384), items: [363, 371], want_response: true }, ItemSet { range: Range(439, 450), items: [439, 446], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [493, 500, 687, 705], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(185, 199), items: [], want_response: false }, ItemSet { range: Range(340, 361), items: [], want_response: false }, ItemSet { range: Range(361, 384), items: [361, 368, 376, 379], want_response: false }, ItemSet { range: Range(439, 450), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 56), items: [9, 55], want_response: true }, ItemSet { range: Range(56, 88), items: [56, 77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 127), items: [108, 123], want_response: true }, ItemSet { range: Range(127, 185), items: [127, 145], want_response: true }, ItemSet { range: Range(199, 257), items: [254], want_response: true }, ItemSet { range: Range(257, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 334), items: [314, 325], want_response: true }, ItemSet { range: Range(334, 340), items: [334], want_response: true }, ItemSet { range: Range(384, 433), items: [384, 389], want_response: true }, ItemSet { range: Range(433, 439), items: [433, 438], want_response: true }, ItemSet { range: Range(450, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [690, 694, 700, 712, 185, 192, 340, 350, 363, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969], provide: [(493, true), (500, true), (687, true), (705, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 56), items: [18, 42, 44], want_response: false }, ItemSet { range: Range(56, 88), items: [62, 79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 127), items: [], want_response: false }, ItemSet { range: Range(127, 185), items: [142, 143, 162], want_response: false }, ItemSet { range: Range(199, 257), items: [199, 223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 314), items: [257, 261, 270, 302], want_response: false }, ItemSet { range: Range(314, 334), items: [314, 327, 329], want_response: false }, ItemSet { range: Range(334, 340), items: [], want_response: false }, ItemSet { range: Range(384, 433), items: [390, 394], want_response: false }, ItemSet { range: Range(433, 439), items: [434], want_response: false }, ItemSet { range: Range(450, 479), items: [450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [361, 368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 325, 334, 384, 389, 433, 438, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (185, true), (192, true), (340, true), (350, true), (363, true), (371, true), (439, true), (446, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 199, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(361, true), (368, true), (376, true), (379, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (56, true), (77, true), (108, true), (123, true), (127, true), (145, true), (254, true), (294, true), (307, true), (325, true), (334, true), (384, true), (389, true), (433, true), (438, true), (467, true), (478, true), (484, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (327, true), (329, true), (390, true), (394, true), (434, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 185, 192, 340, 350, 363, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 199, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 687, 705, 361, 368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 56, 77, 108, 123, 127, 145, 254, 294, 307, 325, 334, 384, 389, 433, 438, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(50, SumMonoid(25317)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 361), fp: EncodedCountingMonoid(13, SumMonoid(2472)) }, Fingerprint { range: Range(361, 514), fp: EncodedCountingMonoid(13, SumMonoid(5550)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(12, SumMonoid(10153)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 199), fp: EncodedCountingMonoid(14, SumMonoid(1447)) }, Fingerprint { range: Range(199, 361), fp: EncodedCountingMonoid(14, SumMonoid(3907)) }, Fingerprint { range: Range(361, 450), fp: EncodedCountingMonoid(7, SumMonoid(2837)) }, Fingerprint { range: Range(450, 514), fp: EncodedCountingMonoid(6, SumMonoid(2823)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 123), fp: EncodedCountingMonoid(4, SumMonoid(249)) }, Fingerprint { range: Range(123, 199), fp: EncodedCountingMonoid(3, SumMonoid(395)) }, Fingerprint { range: Range(199, 314), fp: EncodedCountingMonoid(3, SumMonoid(855)) }, Fingerprint { range: Range(314, 361), fp: EncodedCountingMonoid(3, SumMonoid(973)) }, Fingerprint { range: Range(361, 384), fp: EncodedCountingMonoid(4, SumMonoid(1484)) }, Fingerprint { range: Range(384, 450), fp: EncodedCountingMonoid(4, SumMonoid(1644)) }, Fingerprint { range: Range(450, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 123), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(123, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(199, 257), fp: EncodedCountingMonoid(5, SumMonoid(1157)) }, Fingerprint { range: Range(257, 314), fp: EncodedCountingMonoid(4, SumMonoid(1090)) }, Fingerprint { range: Range(314, 340), fp: EncodedCountingMonoid(3, SumMonoid(970)) }, Fingerprint { range: Range(384, 439), fp: EncodedCountingMonoid(3, SumMonoid(1218)) }, Fingerprint { range: Range(450, 479), fp: EncodedCountingMonoid(3, SumMonoid(1364)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(185, 199), items: [185, 192], want_response: true }, ItemSet { range: Range(340, 361), items: [340, 350], want_response: true }, ItemSet { range: Range(361, 384), items: [363, 371], want_response: true }, ItemSet { range: Range(439, 450), items: [439, 446], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [493, 500, 687, 705], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(185, 199), items: [], want_response: false }, ItemSet { range: Range(340, 361), items: [], want_response: false }, ItemSet { range: Range(361, 384), items: [361, 368, 376, 379], want_response: false }, ItemSet { range: Range(439, 450), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 123), items: [108], want_response: true }, ItemSet { range: Range(123, 145), items: [123, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(199, 257), items: [254], want_response: true }, ItemSet { range: Range(257, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 334), items: [314, 325], want_response: true }, ItemSet { range: Range(334, 340), items: [334], want_response: true }, ItemSet { range: Range(384, 433), items: [384, 389], want_response: true }, ItemSet { range: Range(433, 439), items: [433, 438], want_response: true }, ItemSet { range: Range(450, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [690, 694, 700, 712, 185, 192, 340, 350, 363, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969], provide: [(493, true), (500, true), (687, true), (705, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 123), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(123, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(199, 257), items: [199, 223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 314), items: [257, 261, 270, 302], want_response: false }, ItemSet { range: Range(314, 334), items: [314, 327, 329], want_response: false }, ItemSet { range: Range(334, 340), items: [], want_response: false }, ItemSet { range: Range(384, 433), items: [390, 394], want_response: false }, ItemSet { range: Range(433, 439), items: [434], want_response: false }, ItemSet { range: Range(450, 479), items: [450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [361, 368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 77, 108, 123, 127, 145, 254, 294, 307, 325, 334, 384, 389, 433, 438, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (185, true), (192, true), (340, true), (350, true), (363, true), (371, true), (439, true), (446, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 199, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(361, true), (368, true), (376, true), (379, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (77, true), (108, true), (123, true), (127, true), (145, true), (254, true), (294, true), (307, true), (325, true), (334, true), (384, true), (389, true), (433, true), (438, true), (467, true), (478, true), (484, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (327, true), (329, true), (390, true), (394, true), (434, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 334, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 185, 192, 340, 350, 363, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 199, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 687, 705, 361, 368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 77, 108, 123, 127, 145, 254, 294, 307, 325, 334, 384, 389, 433, 438, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(49, SumMonoid(24983)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 368), fp: EncodedCountingMonoid(13, SumMonoid(2499)) }, Fingerprint { range: Range(368, 514), fp: EncodedCountingMonoid(12, SumMonoid(5189)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(12, SumMonoid(10153)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 368), fp: EncodedCountingMonoid(14, SumMonoid(4071)) }, Fingerprint { range: Range(368, 450), fp: EncodedCountingMonoid(6, SumMonoid(2474)) }, Fingerprint { range: Range(450, 514), fp: EncodedCountingMonoid(6, SumMonoid(2823)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 123), fp: EncodedCountingMonoid(4, SumMonoid(249)) }, Fingerprint { range: Range(123, 223), fp: EncodedCountingMonoid(3, SumMonoid(395)) }, Fingerprint { range: Range(223, 314), fp: EncodedCountingMonoid(3, SumMonoid(855)) }, Fingerprint { range: Range(314, 368), fp: EncodedCountingMonoid(3, SumMonoid(1000)) }, Fingerprint { range: Range(368, 389), fp: EncodedCountingMonoid(4, SumMonoid(1507)) }, Fingerprint { range: Range(389, 450), fp: EncodedCountingMonoid(3, SumMonoid(1260)) }, Fingerprint { range: Range(450, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 123), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(123, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(223, 257), fp: EncodedCountingMonoid(4, SumMonoid(958)) }, Fingerprint { range: Range(257, 314), fp: EncodedCountingMonoid(4, SumMonoid(1090)) }, Fingerprint { range: Range(314, 340), fp: EncodedCountingMonoid(3, SumMonoid(970)) }, Fingerprint { range: Range(340, 368), fp: EncodedCountingMonoid(3, SumMonoid(1053)) }, Fingerprint { range: Range(389, 439), fp: EncodedCountingMonoid(3, SumMonoid(1218)) }, Fingerprint { range: Range(450, 479), fp: EncodedCountingMonoid(3, SumMonoid(1364)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(368, 389), items: [371], want_response: true }, ItemSet { range: Range(439, 450), items: [439, 446], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [493, 500, 687, 705], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(368, 389), items: [368, 376, 379, 384], want_response: false }, ItemSet { range: Range(439, 450), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 123), items: [108], want_response: true }, ItemSet { range: Range(123, 145), items: [123, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(223, 257), items: [254], want_response: true }, ItemSet { range: Range(257, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 340), items: [314, 325], want_response: true }, ItemSet { range: Range(340, 368), items: [361], want_response: true }, ItemSet { range: Range(389, 438), items: [389, 433], want_response: true }, ItemSet { range: Range(438, 439), items: [438], want_response: true }, ItemSet { range: Range(450, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [690, 694, 700, 712, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969], provide: [(493, true), (500, true), (687, true), (705, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 123), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(123, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(223, 257), items: [223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 314), items: [257, 261, 270, 302], want_response: false }, ItemSet { range: Range(314, 340), items: [314, 327, 329], want_response: false }, ItemSet { range: Range(340, 368), items: [340, 350, 363], want_response: false }, ItemSet { range: Range(389, 438), items: [390, 394, 434], want_response: false }, ItemSet { range: Range(438, 439), items: [], want_response: false }, ItemSet { range: Range(450, 479), items: [450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [368, 376, 379, 384, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 77, 108, 123, 127, 145, 254, 294, 307, 325, 361, 389, 433, 438, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (371, true), (439, true), (446, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(368, true), (376, true), (379, true), (384, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (77, true), (108, true), (123, true), (127, true), (145, true), (254, true), (294, true), (307, true), (325, true), (361, true), (389, true), (433, true), (438, true), (467, true), (478, true), (484, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (327, true), (329, true), (340, true), (350, true), (363, true), (390, true), (394, true), (434, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 123, 127, 145, 254, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 687, 705, 368, 376, 379, 384, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 77, 108, 123, 127, 145, 254, 294, 307, 325, 361, 389, 433, 438, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 254, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(48, SumMonoid(24860)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 368), fp: EncodedCountingMonoid(12, SumMonoid(2376)) }, Fingerprint { range: Range(368, 514), fp: EncodedCountingMonoid(12, SumMonoid(5189)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(12, SumMonoid(10153)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 368), fp: EncodedCountingMonoid(14, SumMonoid(4071)) }, Fingerprint { range: Range(368, 450), fp: EncodedCountingMonoid(6, SumMonoid(2474)) }, Fingerprint { range: Range(450, 514), fp: EncodedCountingMonoid(6, SumMonoid(2823)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(223, 314), fp: EncodedCountingMonoid(3, SumMonoid(855)) }, Fingerprint { range: Range(314, 368), fp: EncodedCountingMonoid(3, SumMonoid(1000)) }, Fingerprint { range: Range(368, 389), fp: EncodedCountingMonoid(4, SumMonoid(1507)) }, Fingerprint { range: Range(389, 450), fp: EncodedCountingMonoid(3, SumMonoid(1260)) }, Fingerprint { range: Range(450, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 943), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }, Fingerprint { range: Range(943, 972), fp: EncodedCountingMonoid(3, SumMonoid(2861)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(223, 257), fp: EncodedCountingMonoid(4, SumMonoid(958)) }, Fingerprint { range: Range(257, 314), fp: EncodedCountingMonoid(4, SumMonoid(1090)) }, Fingerprint { range: Range(314, 340), fp: EncodedCountingMonoid(3, SumMonoid(970)) }, Fingerprint { range: Range(340, 368), fp: EncodedCountingMonoid(3, SumMonoid(1053)) }, Fingerprint { range: Range(389, 439), fp: EncodedCountingMonoid(3, SumMonoid(1218)) }, Fingerprint { range: Range(450, 479), fp: EncodedCountingMonoid(3, SumMonoid(1364)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 943), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(368, 389), items: [371], want_response: true }, ItemSet { range: Range(439, 450), items: [439, 446], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }, ItemSet { range: Range(943, 972), items: [969], want_response: true }], wants: [493, 500, 687, 705], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(368, 389), items: [368, 376, 379, 384], want_response: false }, ItemSet { range: Range(439, 450), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(943, 972), items: [943, 947, 971], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(223, 257), items: [254], want_response: true }, ItemSet { range: Range(257, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 340), items: [314, 325], want_response: true }, ItemSet { range: Range(340, 368), items: [361], want_response: true }, ItemSet { range: Range(389, 438), items: [389, 433], want_response: true }, ItemSet { range: Range(438, 439), items: [438], want_response: true }, ItemSet { range: Range(450, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 943), items: [], want_response: true }], wants: [690, 694, 700, 712, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969], provide: [(493, true), (500, true), (687, true), (705, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(223, 257), items: [223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 314), items: [257, 261, 270, 302], want_response: false }, ItemSet { range: Range(314, 340), items: [314, 327, 329], want_response: false }, ItemSet { range: Range(340, 368), items: [340, 350, 363], want_response: false }, ItemSet { range: Range(389, 438), items: [390, 394, 434], want_response: false }, ItemSet { range: Range(438, 439), items: [], want_response: false }, ItemSet { range: Range(450, 479), items: [450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 943), items: [916, 918, 924, 925, 926], want_response: false }], wants: [368, 376, 379, 384, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 77, 108, 127, 145, 254, 294, 307, 325, 361, 389, 433, 438, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (371, true), (439, true), (446, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(368, true), (376, true), (379, true), (384, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (943, true), (947, true), (971, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (254, true), (294, true), (307, true), (325, true), (361, true), (389, true), (433, true), (438, true), (467, true), (478, true), (484, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (327, true), (329, true), (340, true), (350, true), (363, true), (390, true), (394, true), (434, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 254, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 943, 947, 971} + [990, 999, 690, 694, 700, 712, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 969, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 687, 705, 368, 376, 379, 384, 517, 526, 541, 544, 782, 785, 799, 943, 947, 971, 9, 55, 77, 108, 127, 145, 254, 294, 307, 325, 361, 389, 433, 438, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 254, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(47, SumMonoid(23917)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 368), fp: EncodedCountingMonoid(12, SumMonoid(2376)) }, Fingerprint { range: Range(368, 514), fp: EncodedCountingMonoid(12, SumMonoid(5189)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(11, SumMonoid(9210)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 368), fp: EncodedCountingMonoid(14, SumMonoid(4071)) }, Fingerprint { range: Range(368, 450), fp: EncodedCountingMonoid(6, SumMonoid(2474)) }, Fingerprint { range: Range(450, 514), fp: EncodedCountingMonoid(6, SumMonoid(2823)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(223, 314), fp: EncodedCountingMonoid(3, SumMonoid(855)) }, Fingerprint { range: Range(314, 368), fp: EncodedCountingMonoid(3, SumMonoid(1000)) }, Fingerprint { range: Range(368, 389), fp: EncodedCountingMonoid(4, SumMonoid(1507)) }, Fingerprint { range: Range(389, 450), fp: EncodedCountingMonoid(3, SumMonoid(1260)) }, Fingerprint { range: Range(450, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 947), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(223, 257), fp: EncodedCountingMonoid(4, SumMonoid(958)) }, Fingerprint { range: Range(257, 314), fp: EncodedCountingMonoid(4, SumMonoid(1090)) }, Fingerprint { range: Range(314, 340), fp: EncodedCountingMonoid(3, SumMonoid(970)) }, Fingerprint { range: Range(340, 368), fp: EncodedCountingMonoid(3, SumMonoid(1053)) }, Fingerprint { range: Range(389, 439), fp: EncodedCountingMonoid(3, SumMonoid(1218)) }, Fingerprint { range: Range(450, 479), fp: EncodedCountingMonoid(3, SumMonoid(1364)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 947), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(368, 389), items: [371], want_response: true }, ItemSet { range: Range(439, 450), items: [439, 446], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [493, 500, 687, 705, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(368, 389), items: [368, 376, 379, 384], want_response: false }, ItemSet { range: Range(439, 450), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(223, 257), items: [254], want_response: true }, ItemSet { range: Range(257, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 340), items: [314, 325], want_response: true }, ItemSet { range: Range(340, 368), items: [361], want_response: true }, ItemSet { range: Range(389, 438), items: [389, 433], want_response: true }, ItemSet { range: Range(438, 439), items: [438], want_response: true }, ItemSet { range: Range(450, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 947), items: [], want_response: true }], wants: [690, 694, 700, 712, 969, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837], provide: [(493, true), (500, true), (687, true), (705, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(223, 257), items: [223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 314), items: [257, 261, 270, 302], want_response: false }, ItemSet { range: Range(314, 340), items: [314, 327, 329], want_response: false }, ItemSet { range: Range(340, 368), items: [340, 350, 363], want_response: false }, ItemSet { range: Range(389, 438), items: [390, 394, 434], want_response: false }, ItemSet { range: Range(438, 439), items: [], want_response: false }, ItemSet { range: Range(450, 479), items: [450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 947), items: [916, 918, 924, 925, 926], want_response: false }], wants: [368, 376, 379, 384, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 254, 294, 307, 325, 361, 389, 433, 438, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (969, true), (371, true), (439, true), (446, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(368, true), (376, true), (379, true), (384, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (254, true), (294, true), (307, true), (325, true), (361, true), (389, true), (433, true), (438, true), (467, true), (478, true), (484, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (327, true), (329, true), (340, true), (350, true), (363, true), (390, true), (394, true), (434, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 254, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 438, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971} + [990, 999, 690, 694, 700, 712, 969, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 687, 705, 947, 971, 368, 376, 379, 384, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 254, 294, 307, 325, 361, 389, 433, 438, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 254, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(46, SumMonoid(23479)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 368), fp: EncodedCountingMonoid(12, SumMonoid(2376)) }, Fingerprint { range: Range(368, 514), fp: EncodedCountingMonoid(11, SumMonoid(4751)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(11, SumMonoid(9210)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 368), fp: EncodedCountingMonoid(14, SumMonoid(4071)) }, Fingerprint { range: Range(368, 450), fp: EncodedCountingMonoid(6, SumMonoid(2474)) }, Fingerprint { range: Range(450, 514), fp: EncodedCountingMonoid(6, SumMonoid(2823)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(223, 314), fp: EncodedCountingMonoid(3, SumMonoid(855)) }, Fingerprint { range: Range(314, 368), fp: EncodedCountingMonoid(3, SumMonoid(1000)) }, Fingerprint { range: Range(368, 384), fp: EncodedCountingMonoid(3, SumMonoid(1123)) }, Fingerprint { range: Range(384, 450), fp: EncodedCountingMonoid(3, SumMonoid(1206)) }, Fingerprint { range: Range(450, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 947), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }], item_sets: [ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(223, 257), fp: EncodedCountingMonoid(4, SumMonoid(958)) }, Fingerprint { range: Range(257, 314), fp: EncodedCountingMonoid(4, SumMonoid(1090)) }, Fingerprint { range: Range(314, 340), fp: EncodedCountingMonoid(3, SumMonoid(970)) }, Fingerprint { range: Range(340, 368), fp: EncodedCountingMonoid(3, SumMonoid(1053)) }, Fingerprint { range: Range(384, 439), fp: EncodedCountingMonoid(3, SumMonoid(1218)) }, Fingerprint { range: Range(450, 479), fp: EncodedCountingMonoid(3, SumMonoid(1364)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 947), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(368, 384), items: [371], want_response: true }, ItemSet { range: Range(439, 450), items: [439, 446], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [493, 500, 687, 705, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(368, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(439, 450), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(223, 257), items: [254], want_response: true }, ItemSet { range: Range(257, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 340), items: [314, 325], want_response: true }, ItemSet { range: Range(340, 368), items: [361], want_response: true }, ItemSet { range: Range(384, 433), items: [384, 389], want_response: true }, ItemSet { range: Range(433, 439), items: [433], want_response: true }, ItemSet { range: Range(450, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 947), items: [], want_response: true }], wants: [690, 694, 700, 712, 969, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837], provide: [(493, true), (500, true), (687, true), (705, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(223, 257), items: [223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 314), items: [257, 261, 270, 302], want_response: false }, ItemSet { range: Range(314, 340), items: [314, 327, 329], want_response: false }, ItemSet { range: Range(340, 368), items: [340, 350, 363], want_response: false }, ItemSet { range: Range(384, 433), items: [390, 394], want_response: false }, ItemSet { range: Range(433, 439), items: [434], want_response: false }, ItemSet { range: Range(450, 479), items: [450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 947), items: [916, 918, 924, 925, 926], want_response: false }], wants: [368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 254, 294, 307, 325, 361, 384, 389, 433, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898], provide: [(690, true), (694, true), (700, true), (712, true), (969, true), (371, true), (439, true), (446, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(368, true), (376, true), (379, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (254, true), (294, true), (307, true), (325, true), (361, true), (384, true), (389, true), (433, true), (467, true), (478, true), (484, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (327, true), (329, true), (340, true), (350, true), (363, true), (390, true), (394, true), (434, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 254, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971} + [990, 999, 690, 694, 700, 712, 969, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [493, 500, 687, 705, 947, 971, 368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 254, 294, 307, 325, 361, 384, 389, 433, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(45, SumMonoid(23225)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 368), fp: EncodedCountingMonoid(11, SumMonoid(2122)) }, Fingerprint { range: Range(368, 514), fp: EncodedCountingMonoid(11, SumMonoid(4751)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(11, SumMonoid(9210)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 368), fp: EncodedCountingMonoid(14, SumMonoid(4071)) }, Fingerprint { range: Range(368, 450), fp: EncodedCountingMonoid(6, SumMonoid(2474)) }, Fingerprint { range: Range(450, 514), fp: EncodedCountingMonoid(6, SumMonoid(2823)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(223, 325), fp: EncodedCountingMonoid(3, SumMonoid(915)) }, Fingerprint { range: Range(368, 384), fp: EncodedCountingMonoid(3, SumMonoid(1123)) }, Fingerprint { range: Range(384, 450), fp: EncodedCountingMonoid(3, SumMonoid(1206)) }, Fingerprint { range: Range(450, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 947), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }], item_sets: [ItemSet { range: Range(325, 368), items: [325, 361], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(223, 261), fp: EncodedCountingMonoid(5, SumMonoid(1215)) }, Fingerprint { range: Range(261, 325), fp: EncodedCountingMonoid(4, SumMonoid(1147)) }, Fingerprint { range: Range(384, 439), fp: EncodedCountingMonoid(3, SumMonoid(1218)) }, Fingerprint { range: Range(450, 479), fp: EncodedCountingMonoid(3, SumMonoid(1364)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 947), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(325, 368), items: [327, 329, 340, 350, 363], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(368, 384), items: [371], want_response: true }, ItemSet { range: Range(439, 450), items: [439, 446], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 361, 493, 500, 687, 705, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(368, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(439, 450), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(223, 261), items: [], want_response: true }, ItemSet { range: Range(261, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 325), items: [314], want_response: true }, ItemSet { range: Range(384, 433), items: [384, 389], want_response: true }, ItemSet { range: Range(433, 439), items: [433], want_response: true }, ItemSet { range: Range(450, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 947), items: [], want_response: true }], wants: [327, 329, 340, 350, 363, 690, 694, 700, 712, 969, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837], provide: [(325, true), (361, true), (493, true), (500, true), (687, true), (705, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(223, 261), items: [223, 239, 243, 253, 257], want_response: false }, ItemSet { range: Range(261, 314), items: [261, 270, 302], want_response: false }, ItemSet { range: Range(314, 325), items: [314], want_response: false }, ItemSet { range: Range(384, 433), items: [390, 394], want_response: false }, ItemSet { range: Range(433, 439), items: [434], want_response: false }, ItemSet { range: Range(450, 479), items: [450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 947), items: [916, 918, 924, 925, 926], want_response: false }], wants: [368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 294, 307, 384, 389, 433, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898], provide: [(327, true), (329, true), (340, true), (350, true), (363, true), (690, true), (694, true), (700, true), (712, true), (969, true), (371, true), (439, true), (446, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(368, true), (376, true), (379, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (294, true), (307, true), (384, true), (389, true), (433, true), (467, true), (478, true), (484, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (390, true), (394, true), (434, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971} + [990, 999, 327, 329, 340, 350, 363, 690, 694, 700, 712, 969, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 361, 493, 500, 687, 705, 947, 971, 368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 294, 307, 384, 389, 433, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 782, 785, 799, 861, 892, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(44, SumMonoid(22444)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 368), fp: EncodedCountingMonoid(11, SumMonoid(2122)) }, Fingerprint { range: Range(368, 514), fp: EncodedCountingMonoid(11, SumMonoid(4751)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(11, SumMonoid(6437)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(11, SumMonoid(9134)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 368), fp: EncodedCountingMonoid(14, SumMonoid(4071)) }, Fingerprint { range: Range(368, 450), fp: EncodedCountingMonoid(6, SumMonoid(2474)) }, Fingerprint { range: Range(450, 514), fp: EncodedCountingMonoid(6, SumMonoid(2823)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(223, 325), fp: EncodedCountingMonoid(3, SumMonoid(915)) }, Fingerprint { range: Range(368, 384), fp: EncodedCountingMonoid(3, SumMonoid(1123)) }, Fingerprint { range: Range(384, 450), fp: EncodedCountingMonoid(3, SumMonoid(1206)) }, Fingerprint { range: Range(450, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 947), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }], item_sets: [ItemSet { range: Range(325, 368), items: [325, 361], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(609, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 705), items: [667, 687], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(223, 261), fp: EncodedCountingMonoid(5, SumMonoid(1215)) }, Fingerprint { range: Range(261, 325), fp: EncodedCountingMonoid(4, SumMonoid(1147)) }, Fingerprint { range: Range(384, 439), fp: EncodedCountingMonoid(3, SumMonoid(1218)) }, Fingerprint { range: Range(450, 479), fp: EncodedCountingMonoid(3, SumMonoid(1364)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 947), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(325, 368), items: [327, 329, 340, 350, 363], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(368, 384), items: [371], want_response: true }, ItemSet { range: Range(439, 450), items: [439, 446], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 361, 493, 500, 619, 630, 667, 687, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(368, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(439, 450), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(223, 261), items: [], want_response: true }, ItemSet { range: Range(261, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 325), items: [314], want_response: true }, ItemSet { range: Range(384, 433), items: [384, 389], want_response: true }, ItemSet { range: Range(433, 439), items: [433], want_response: true }, ItemSet { range: Range(450, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 947), items: [], want_response: true }], wants: [327, 329, 340, 350, 363, 609, 645, 662, 674, 683, 690, 694, 700, 969, 371, 439, 446, 514, 528, 535, 540, 601, 605, 836, 837], provide: [(325, true), (361, true), (493, true), (500, true), (619, true), (630, true), (667, true), (687, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(223, 261), items: [223, 239, 243, 253, 257], want_response: false }, ItemSet { range: Range(261, 314), items: [261, 270, 302], want_response: false }, ItemSet { range: Range(314, 325), items: [314], want_response: false }, ItemSet { range: Range(384, 433), items: [390, 394], want_response: false }, ItemSet { range: Range(433, 439), items: [434], want_response: false }, ItemSet { range: Range(450, 479), items: [450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 947), items: [916, 918, 924, 925, 926], want_response: false }], wants: [368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 294, 307, 384, 389, 433, 467, 478, 484, 552, 705, 715, 779, 861, 892, 898], provide: [(327, true), (329, true), (340, true), (350, true), (363, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (969, true), (371, true), (439, true), (446, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(368, true), (376, true), (379, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (294, true), (307, true), (384, true), (389, true), (433, true), (467, true), (478, true), (484, true), (552, true), (705, true), (715, true), (779, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (390, true), (394, true), (434, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 782, 785, 799, 861, 892, 898, 947, 971} + [990, 999, 327, 329, 340, 350, 363, 609, 645, 662, 674, 683, 690, 694, 700, 969, 371, 439, 446, 514, 528, 535, 540, 601, 605, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 361, 493, 500, 619, 630, 667, 687, 947, 971, 368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 294, 307, 384, 389, 433, 467, 478, 484, 552, 705, 715, 779, 861, 892, 898]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 294, 302, 307, 314, 325, 327, 329, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 294, 302, 307, 314, 325, 327, 329, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 294, 302, 307, 314, 325, 327, 329, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 467, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(45, SumMonoid(23225)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 368), fp: EncodedCountingMonoid(11, SumMonoid(2122)) }, Fingerprint { range: Range(368, 514), fp: EncodedCountingMonoid(11, SumMonoid(4751)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(11, SumMonoid(9210)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 368), fp: EncodedCountingMonoid(14, SumMonoid(4071)) }, Fingerprint { range: Range(368, 450), fp: EncodedCountingMonoid(6, SumMonoid(2474)) }, Fingerprint { range: Range(450, 514), fp: EncodedCountingMonoid(6, SumMonoid(2823)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(223, 325), fp: EncodedCountingMonoid(3, SumMonoid(915)) }, Fingerprint { range: Range(368, 384), fp: EncodedCountingMonoid(3, SumMonoid(1123)) }, Fingerprint { range: Range(384, 450), fp: EncodedCountingMonoid(3, SumMonoid(1206)) }, Fingerprint { range: Range(450, 493), fp: EncodedCountingMonoid(3, SumMonoid(1429)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 947), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }], item_sets: [ItemSet { range: Range(325, 368), items: [325, 361], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(223, 261), fp: EncodedCountingMonoid(5, SumMonoid(1215)) }, Fingerprint { range: Range(261, 325), fp: EncodedCountingMonoid(4, SumMonoid(1147)) }, Fingerprint { range: Range(384, 439), fp: EncodedCountingMonoid(3, SumMonoid(1218)) }, Fingerprint { range: Range(450, 479), fp: EncodedCountingMonoid(3, SumMonoid(1364)) }, Fingerprint { range: Range(479, 493), fp: EncodedCountingMonoid(3, SumMonoid(1459)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 947), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(325, 368), items: [327, 329, 340, 350, 363], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(368, 384), items: [371], want_response: true }, ItemSet { range: Range(439, 450), items: [439, 446], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 361, 493, 500, 687, 705, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(368, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(439, 450), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(223, 261), items: [], want_response: true }, ItemSet { range: Range(261, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 325), items: [314], want_response: true }, ItemSet { range: Range(384, 433), items: [384, 389], want_response: true }, ItemSet { range: Range(433, 439), items: [433], want_response: true }, ItemSet { range: Range(450, 479), items: [467, 478], want_response: true }, ItemSet { range: Range(479, 493), items: [484], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 947), items: [], want_response: true }], wants: [327, 329, 340, 350, 363, 690, 694, 700, 712, 969, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837], provide: [(325, true), (361, true), (493, true), (500, true), (687, true), (705, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(223, 261), items: [223, 239, 243, 253, 257], want_response: false }, ItemSet { range: Range(261, 314), items: [261, 270, 302], want_response: false }, ItemSet { range: Range(314, 325), items: [314], want_response: false }, ItemSet { range: Range(384, 433), items: [390, 394], want_response: false }, ItemSet { range: Range(433, 439), items: [434], want_response: false }, ItemSet { range: Range(450, 479), items: [450, 455, 459], want_response: false }, ItemSet { range: Range(479, 493), items: [479, 488, 492], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 947), items: [916, 918, 924, 925, 926], want_response: false }], wants: [368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 294, 307, 384, 389, 433, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898], provide: [(327, true), (329, true), (340, true), (350, true), (363, true), (690, true), (694, true), (700, true), (712, true), (969, true), (371, true), (439, true), (446, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(368, true), (376, true), (379, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (294, true), (307, true), (384, true), (389, true), (433, true), (467, true), (478, true), (484, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (390, true), (394, true), (434, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 467, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971} + [990, 999, 327, 329, 340, 350, 363, 690, 694, 700, 712, 969, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 390, 394, 434, 450, 455, 459, 479, 488, 492, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 361, 493, 500, 687, 705, 947, 971, 368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 294, 307, 384, 389, 433, 467, 478, 484, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(44, SumMonoid(22758)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 368), fp: EncodedCountingMonoid(11, SumMonoid(2122)) }, Fingerprint { range: Range(368, 514), fp: EncodedCountingMonoid(10, SumMonoid(4284)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(11, SumMonoid(9210)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 368), fp: EncodedCountingMonoid(14, SumMonoid(4071)) }, Fingerprint { range: Range(368, 450), fp: EncodedCountingMonoid(6, SumMonoid(2474)) }, Fingerprint { range: Range(450, 514), fp: EncodedCountingMonoid(6, SumMonoid(2823)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(223, 325), fp: EncodedCountingMonoid(3, SumMonoid(915)) }, Fingerprint { range: Range(368, 384), fp: EncodedCountingMonoid(3, SumMonoid(1123)) }, Fingerprint { range: Range(384, 450), fp: EncodedCountingMonoid(3, SumMonoid(1206)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 947), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }], item_sets: [ItemSet { range: Range(325, 368), items: [325, 361], want_response: true }, ItemSet { range: Range(450, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(223, 261), fp: EncodedCountingMonoid(5, SumMonoid(1215)) }, Fingerprint { range: Range(261, 325), fp: EncodedCountingMonoid(4, SumMonoid(1147)) }, Fingerprint { range: Range(384, 439), fp: EncodedCountingMonoid(3, SumMonoid(1218)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 947), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(325, 368), items: [327, 329, 340, 350, 363], want_response: false }, ItemSet { range: Range(450, 493), items: [450, 455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(368, 384), items: [371], want_response: true }, ItemSet { range: Range(439, 450), items: [439, 446], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 361, 478, 484, 493, 500, 687, 705, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(368, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(439, 450), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(223, 261), items: [], want_response: true }, ItemSet { range: Range(261, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 325), items: [314], want_response: true }, ItemSet { range: Range(384, 433), items: [384, 389], want_response: true }, ItemSet { range: Range(433, 439), items: [433], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 947), items: [], want_response: true }], wants: [327, 329, 340, 350, 363, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837], provide: [(325, true), (361, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(223, 261), items: [223, 239, 243, 253, 257], want_response: false }, ItemSet { range: Range(261, 314), items: [261, 270, 302], want_response: false }, ItemSet { range: Range(314, 325), items: [314], want_response: false }, ItemSet { range: Range(384, 433), items: [390, 394], want_response: false }, ItemSet { range: Range(433, 439), items: [434], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 947), items: [916, 918, 924, 925, 926], want_response: false }], wants: [368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 294, 307, 384, 389, 433, 552, 715, 779, 781, 861, 892, 898], provide: [(327, true), (329, true), (340, true), (350, true), (363, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (690, true), (694, true), (700, true), (712, true), (969, true), (371, true), (439, true), (446, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 390, 394, 434, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(368, true), (376, true), (379, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (294, true), (307, true), (384, true), (389, true), (433, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (390, true), (394, true), (434, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971} + [990, 999, 327, 329, 340, 350, 363, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 390, 394, 434, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 361, 478, 484, 493, 500, 687, 705, 947, 971, 368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 294, 307, 384, 389, 433, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {55, 77, 108, 127, 145, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(55, 972), fp: EncodedCountingMonoid(43, SumMonoid(22749)) }], item_sets: [ItemSet { range: Range(972, 55), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(55, 528), fp: EncodedCountingMonoid(39, SumMonoid(11424)) }, Fingerprint { range: Range(528, 972), fp: EncodedCountingMonoid(39, SumMonoid(28884)) }], item_sets: [ItemSet { range: Range(972, 55), items: [990, 999, 18, 42, 44], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(55, 376), fp: EncodedCountingMonoid(11, SumMonoid(2481)) }, Fingerprint { range: Range(376, 528), fp: EncodedCountingMonoid(11, SumMonoid(4959)) }, Fingerprint { range: Range(528, 779), fp: EncodedCountingMonoid(11, SumMonoid(6814)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(10, SumMonoid(8495)) }], item_sets: [], wants: [990, 999, 18, 42, 44], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(55, 243), fp: EncodedCountingMonoid(14, SumMonoid(2004)) }, Fingerprint { range: Range(243, 376), fp: EncodedCountingMonoid(13, SumMonoid(3980)) }, Fingerprint { range: Range(376, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 528), fp: EncodedCountingMonoid(6, SumMonoid(2887)) }, Fingerprint { range: Range(528, 690), fp: EncodedCountingMonoid(13, SumMonoid(7821)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [], wants: [], provide: [(990, true), (999, true), (18, true), (42, true), (44, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(55, 127), fp: EncodedCountingMonoid(3, SumMonoid(240)) }, Fingerprint { range: Range(243, 325), fp: EncodedCountingMonoid(3, SumMonoid(915)) }, Fingerprint { range: Range(325, 376), fp: EncodedCountingMonoid(3, SumMonoid(1054)) }, Fingerprint { range: Range(376, 389), fp: EncodedCountingMonoid(3, SumMonoid(1139)) }, Fingerprint { range: Range(455, 500), fp: EncodedCountingMonoid(3, SumMonoid(1455)) }, Fingerprint { range: Range(500, 528), fp: EncodedCountingMonoid(3, SumMonoid(1543)) }, Fingerprint { range: Range(528, 619), fp: EncodedCountingMonoid(5, SumMonoid(2791)) }, Fingerprint { range: Range(619, 690), fp: EncodedCountingMonoid(4, SumMonoid(2603)) }, Fingerprint { range: Range(779, 799), fp: EncodedCountingMonoid(4, SumMonoid(3127)) }, Fingerprint { range: Range(799, 916), fp: EncodedCountingMonoid(4, SumMonoid(3450)) }], item_sets: [ItemSet { range: Range(127, 243), items: [127, 145], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(55, 93), fp: EncodedCountingMonoid(3, SumMonoid(229)) }, Fingerprint { range: Range(93, 127), fp: EncodedCountingMonoid(3, SumMonoid(290)) }, Fingerprint { range: Range(243, 270), fp: EncodedCountingMonoid(4, SumMonoid(1014)) }, Fingerprint { range: Range(270, 325), fp: EncodedCountingMonoid(3, SumMonoid(886)) }, Fingerprint { range: Range(325, 350), fp: EncodedCountingMonoid(3, SumMonoid(996)) }, Fingerprint { range: Range(350, 376), fp: EncodedCountingMonoid(3, SumMonoid(1084)) }, Fingerprint { range: Range(455, 488), fp: EncodedCountingMonoid(3, SumMonoid(1393)) }, Fingerprint { range: Range(528, 592), fp: EncodedCountingMonoid(5, SumMonoid(2750)) }, Fingerprint { range: Range(592, 619), fp: EncodedCountingMonoid(4, SumMonoid(2407)) }, Fingerprint { range: Range(799, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(127, 243), items: [142, 143, 162, 185, 192, 199, 223, 239], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(376, 389), items: [], want_response: true }, ItemSet { range: Range(488, 500), items: [488, 492], want_response: true }, ItemSet { range: Range(500, 528), items: [514], want_response: true }, ItemSet { range: Range(619, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 799), items: [], want_response: true }], wants: [127, 145, 389, 433, 705, 715, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(376, 389), items: [376, 379, 384], want_response: false }, ItemSet { range: Range(488, 500), items: [493], want_response: false }, ItemSet { range: Range(500, 528), items: [500, 517, 526], want_response: false }, ItemSet { range: Range(619, 674), items: [619, 630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [687], want_response: false }, ItemSet { range: Range(779, 799), items: [779, 781, 782, 785], want_response: false }, ItemSet { range: Range(55, 93), items: [55, 77], want_response: true }, ItemSet { range: Range(93, 127), items: [108], want_response: true }, ItemSet { range: Range(243, 270), items: [], want_response: true }, ItemSet { range: Range(270, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 325), items: [314], want_response: true }, ItemSet { range: Range(325, 350), items: [325], want_response: true }, ItemSet { range: Range(350, 376), items: [361, 368], want_response: true }, ItemSet { range: Range(455, 488), items: [478, 484], want_response: true }, ItemSet { range: Range(528, 552), items: [541, 544], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 619), items: [592], want_response: true }, ItemSet { range: Range(799, 879), items: [799, 861], want_response: true }, ItemSet { range: Range(879, 916), items: [892, 898], want_response: true }], wants: [142, 143, 162, 185, 192, 199, 223, 239, 390, 394, 434, 439, 446, 450, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 488, 492, 514, 645, 662, 674, 683], provide: [(127, true), (145, true), (389, true), (433, true), (705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(55, 93), items: [62, 79, 88], want_response: false }, ItemSet { range: Range(93, 127), items: [93, 96, 101], want_response: false }, ItemSet { range: Range(243, 270), items: [243, 253, 257, 261], want_response: false }, ItemSet { range: Range(270, 314), items: [270, 302], want_response: false }, ItemSet { range: Range(314, 325), items: [314], want_response: false }, ItemSet { range: Range(325, 350), items: [327, 329, 340], want_response: false }, ItemSet { range: Range(350, 376), items: [350, 363, 371], want_response: false }, ItemSet { range: Range(455, 488), items: [455, 459, 479], want_response: false }, ItemSet { range: Range(528, 552), items: [528, 535, 540], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 619), items: [592, 601, 605, 609], want_response: false }, ItemSet { range: Range(799, 879), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [376, 379, 384, 493, 500, 517, 526, 619, 630, 667, 687, 779, 781, 782, 785, 55, 77, 108, 294, 307, 325, 361, 368, 478, 484, 541, 544, 552, 799, 861, 892, 898], provide: [(142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (488, true), (492, true), (514, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [62, 79, 88, 93, 96, 101, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 371, 455, 459, 479, 528, 535, 540, 585, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(376, true), (379, true), (384, true), (493, true), (500, true), (517, true), (526, true), (619, true), (630, true), (667, true), (687, true), (779, true), (781, true), (782, true), (785, true), (55, true), (77, true), (108, true), (294, true), (307, true), (325, true), (361, true), (368, true), (478, true), (484, true), (541, true), (544, true), (552, true), (799, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (455, true), (459, true), (479, true), (528, true), (535, true), (540, true), (585, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {55, 77, 108, 127, 145, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971} + [990, 999, 18, 42, 44, 142, 143, 162, 185, 192, 199, 223, 239, 390, 394, 434, 439, 446, 450, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 488, 492, 514, 645, 662, 674, 683, 62, 79, 88, 93, 96, 101, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 371, 455, 459, 479, 528, 535, 540, 585, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [127, 145, 389, 433, 705, 715, 947, 971, 376, 379, 384, 493, 500, 517, 526, 619, 630, 667, 687, 779, 781, 782, 785, 55, 77, 108, 294, 307, 325, 361, 368, 478, 484, 541, 544, 552, 799, 861, 892, 898]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 294, 302, 307, 314, 325, 327, 329, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 294, 302, 307, 314, 325, 327, 329, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 294, 302, 307, 314, 325, 327, 329, 340, 350, 361, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(44, SumMonoid(22758)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 368), fp: EncodedCountingMonoid(11, SumMonoid(2122)) }, Fingerprint { range: Range(368, 514), fp: EncodedCountingMonoid(10, SumMonoid(4284)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(11, SumMonoid(9210)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 368), fp: EncodedCountingMonoid(14, SumMonoid(4071)) }, Fingerprint { range: Range(368, 450), fp: EncodedCountingMonoid(6, SumMonoid(2474)) }, Fingerprint { range: Range(450, 514), fp: EncodedCountingMonoid(6, SumMonoid(2823)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(223, 325), fp: EncodedCountingMonoid(3, SumMonoid(915)) }, Fingerprint { range: Range(368, 384), fp: EncodedCountingMonoid(3, SumMonoid(1123)) }, Fingerprint { range: Range(384, 450), fp: EncodedCountingMonoid(3, SumMonoid(1206)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 947), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }], item_sets: [ItemSet { range: Range(325, 368), items: [325, 361], want_response: true }, ItemSet { range: Range(450, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(223, 261), fp: EncodedCountingMonoid(5, SumMonoid(1215)) }, Fingerprint { range: Range(261, 325), fp: EncodedCountingMonoid(4, SumMonoid(1147)) }, Fingerprint { range: Range(384, 439), fp: EncodedCountingMonoid(3, SumMonoid(1218)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 947), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(325, 368), items: [327, 329, 340, 350, 363], want_response: false }, ItemSet { range: Range(450, 493), items: [450, 455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(368, 384), items: [371], want_response: true }, ItemSet { range: Range(439, 450), items: [439, 446], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 361, 478, 484, 493, 500, 687, 705, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(368, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(439, 450), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(223, 261), items: [], want_response: true }, ItemSet { range: Range(261, 314), items: [294, 307], want_response: true }, ItemSet { range: Range(314, 325), items: [314], want_response: true }, ItemSet { range: Range(384, 433), items: [384, 389], want_response: true }, ItemSet { range: Range(433, 439), items: [433], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 947), items: [], want_response: true }], wants: [327, 329, 340, 350, 363, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837], provide: [(325, true), (361, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(223, 261), items: [223, 239, 243, 253, 257], want_response: false }, ItemSet { range: Range(261, 314), items: [261, 270, 302], want_response: false }, ItemSet { range: Range(314, 325), items: [314], want_response: false }, ItemSet { range: Range(384, 433), items: [390, 394], want_response: false }, ItemSet { range: Range(433, 439), items: [434], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 947), items: [916, 918, 924, 925, 926], want_response: false }], wants: [368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 294, 307, 384, 389, 433, 552, 715, 779, 781, 861, 892, 898], provide: [(327, true), (329, true), (340, true), (350, true), (363, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (690, true), (694, true), (700, true), (712, true), (969, true), (371, true), (439, true), (446, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 390, 394, 434, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(368, true), (376, true), (379, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (294, true), (307, true), (384, true), (389, true), (433, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (390, true), (394, true), (434, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 294, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971} + [990, 999, 327, 329, 340, 350, 363, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 390, 394, 434, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 361, 478, 484, 493, 500, 687, 705, 947, 971, 368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 294, 307, 384, 389, 433, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(43, SumMonoid(22464)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 368), fp: EncodedCountingMonoid(10, SumMonoid(1828)) }, Fingerprint { range: Range(368, 514), fp: EncodedCountingMonoid(10, SumMonoid(4284)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(11, SumMonoid(9210)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 368), fp: EncodedCountingMonoid(14, SumMonoid(4071)) }, Fingerprint { range: Range(368, 450), fp: EncodedCountingMonoid(6, SumMonoid(2474)) }, Fingerprint { range: Range(450, 514), fp: EncodedCountingMonoid(6, SumMonoid(2823)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(368, 384), fp: EncodedCountingMonoid(3, SumMonoid(1123)) }, Fingerprint { range: Range(384, 450), fp: EncodedCountingMonoid(3, SumMonoid(1206)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 947), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }], item_sets: [ItemSet { range: Range(223, 325), items: [307, 314], want_response: true }, ItemSet { range: Range(325, 368), items: [325, 361], want_response: true }, ItemSet { range: Range(450, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(384, 439), fp: EncodedCountingMonoid(3, SumMonoid(1218)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 947), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(223, 325), items: [223, 239, 243, 253, 257, 261, 270, 302, 314], want_response: false }, ItemSet { range: Range(325, 368), items: [327, 329, 340, 350, 363], want_response: false }, ItemSet { range: Range(450, 493), items: [450, 455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(368, 384), items: [371], want_response: true }, ItemSet { range: Range(439, 450), items: [439, 446], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [307, 325, 361, 478, 484, 493, 500, 687, 705, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(368, 384), items: [368, 376, 379], want_response: false }, ItemSet { range: Range(439, 450), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(384, 433), items: [384, 389], want_response: true }, ItemSet { range: Range(433, 439), items: [433], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 947), items: [], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837], provide: [(307, true), (325, true), (361, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(384, 433), items: [390, 394], want_response: false }, ItemSet { range: Range(433, 439), items: [434], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 947), items: [916, 918, 924, 925, 926], want_response: false }], wants: [368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 384, 389, 433, 552, 715, 779, 781, 861, 892, 898], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (327, true), (329, true), (340, true), (350, true), (363, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (690, true), (694, true), (700, true), (712, true), (969, true), (371, true), (439, true), (446, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 390, 394, 434, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(368, true), (376, true), (379, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (384, true), (389, true), (433, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (390, true), (394, true), (434, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 307, 314, 325, 361, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 371, 439, 446, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 390, 394, 434, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [307, 325, 361, 478, 484, 493, 500, 687, 705, 947, 971, 368, 376, 379, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 384, 389, 433, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 314, 325, 361, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(42, SumMonoid(22157)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 376), fp: EncodedCountingMonoid(10, SumMonoid(1889)) }, Fingerprint { range: Range(376, 514), fp: EncodedCountingMonoid(9, SumMonoid(3916)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(11, SumMonoid(9210)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 376), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(376, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(376, 389), fp: EncodedCountingMonoid(3, SumMonoid(1139)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 947), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }], item_sets: [ItemSet { range: Range(223, 361), items: [314, 325], want_response: true }, ItemSet { range: Range(361, 376), items: [361, 368], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 947), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(223, 361), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350], want_response: false }, ItemSet { range: Range(361, 376), items: [363, 371], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(376, 389), items: [], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 361, 368, 389, 433, 478, 484, 493, 500, 687, 705, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(376, 389), items: [376, 379, 384], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 947), items: [], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837], provide: [(325, true), (361, true), (368, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 947), items: [916, 918, 924, 925, 926], want_response: false }], wants: [376, 379, 384, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 552, 715, 779, 781, 861, 892, 898], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (690, true), (694, true), (700, true), (712, true), (969, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(376, true), (379, true), (384, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 314, 325, 361, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 361, 368, 389, 433, 478, 484, 493, 500, 687, 705, 947, 971, 376, 379, 384, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 314, 325, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(41, SumMonoid(21796)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 376), fp: EncodedCountingMonoid(9, SumMonoid(1528)) }, Fingerprint { range: Range(376, 514), fp: EncodedCountingMonoid(9, SumMonoid(3916)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(11, SumMonoid(9210)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 376), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(376, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(376, 389), fp: EncodedCountingMonoid(3, SumMonoid(1139)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 947), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }], item_sets: [ItemSet { range: Range(223, 368), items: [314, 325], want_response: true }, ItemSet { range: Range(368, 376), items: [368], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 947), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(223, 368), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363], want_response: false }, ItemSet { range: Range(368, 376), items: [371], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(376, 389), items: [], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 368, 389, 433, 478, 484, 493, 500, 687, 705, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(376, 389), items: [376, 379, 384], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 947), items: [], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837], provide: [(325, true), (368, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 947), items: [916, 918, 924, 925, 926], want_response: false }], wants: [376, 379, 384, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 552, 715, 779, 781, 861, 892, 898], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (690, true), (694, true), (700, true), (712, true), (969, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(376, true), (379, true), (384, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 314, 325, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 368, 389, 433, 478, 484, 493, 500, 687, 705, 947, 971, 376, 379, 384, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 314, 325, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 861, 892, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(40, SumMonoid(20997)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 376), fp: EncodedCountingMonoid(9, SumMonoid(1528)) }, Fingerprint { range: Range(376, 514), fp: EncodedCountingMonoid(9, SumMonoid(3916)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(11, SumMonoid(6437)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(11, SumMonoid(9116)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 376), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(376, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(376, 389), fp: EncodedCountingMonoid(3, SumMonoid(1139)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(705, 781), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }, Fingerprint { range: Range(781, 842), fp: EncodedCountingMonoid(3, SumMonoid(2348)) }, Fingerprint { range: Range(842, 947), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }], item_sets: [ItemSet { range: Range(223, 368), items: [314, 325], want_response: true }, ItemSet { range: Range(368, 376), items: [368], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(609, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 705), items: [667, 687], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 781), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 947), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(223, 368), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363], want_response: false }, ItemSet { range: Range(368, 376), items: [371], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(376, 389), items: [], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(781, 842), items: [836, 837], want_response: true }], wants: [325, 368, 389, 433, 478, 484, 493, 500, 619, 630, 667, 687, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(376, 389), items: [376, 379, 384], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(781, 842), items: [781, 782, 785], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 781), items: [779], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 947), items: [], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 609, 645, 662, 674, 683, 690, 694, 700, 969, 514, 528, 535, 540, 601, 605, 836, 837], provide: [(325, true), (368, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (619, true), (630, true), (667, true), (687, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 781), items: [738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 947), items: [916, 918, 924, 925, 926], want_response: false }], wants: [376, 379, 384, 517, 526, 541, 544, 781, 782, 785, 9, 55, 77, 108, 127, 145, 552, 705, 715, 779, 861, 892, 898], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (969, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(376, true), (379, true), (384, true), (517, true), (526, true), (541, true), (544, true), (781, true), (782, true), (785, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (552, true), (705, true), (715, true), (779, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (585, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 314, 325, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 861, 892, 898, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 609, 645, 662, 674, 683, 690, 694, 700, 969, 514, 528, 535, 540, 601, 605, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 585, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 368, 389, 433, 478, 484, 493, 500, 619, 630, 667, 687, 947, 971, 376, 379, 384, 517, 526, 541, 544, 781, 782, 785, 9, 55, 77, 108, 127, 145, 552, 705, 715, 779, 861, 892, 898]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 517, 526, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 314, 325, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(41, SumMonoid(21796)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 376), fp: EncodedCountingMonoid(9, SumMonoid(1528)) }, Fingerprint { range: Range(376, 514), fp: EncodedCountingMonoid(9, SumMonoid(3916)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(12, SumMonoid(7142)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(11, SumMonoid(9210)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 376), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(376, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(376, 389), fp: EncodedCountingMonoid(3, SumMonoid(1139)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(4, SumMonoid(2128)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 947), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }], item_sets: [ItemSet { range: Range(223, 368), items: [314, 325], want_response: true }, ItemSet { range: Range(368, 376), items: [368], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 947), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(223, 368), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363], want_response: false }, ItemSet { range: Range(368, 376), items: [371], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(376, 389), items: [], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 368, 389, 433, 478, 484, 493, 500, 687, 705, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(376, 389), items: [376, 379, 384], want_response: false }, ItemSet { range: Range(514, 535), items: [517, 526], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 947), items: [], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837], provide: [(325, true), (368, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 947), items: [916, 918, 924, 925, 926], want_response: false }], wants: [376, 379, 384, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 552, 715, 779, 781, 861, 892, 898], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (690, true), (694, true), (700, true), (712, true), (969, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(376, true), (379, true), (384, true), (517, true), (526, true), (541, true), (544, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 314, 325, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 526, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 368, 389, 433, 478, 484, 493, 500, 687, 705, 947, 971, 376, 379, 384, 517, 526, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 314, 325, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(40, SumMonoid(21270)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 376), fp: EncodedCountingMonoid(9, SumMonoid(1528)) }, Fingerprint { range: Range(376, 514), fp: EncodedCountingMonoid(9, SumMonoid(3916)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(11, SumMonoid(6616)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(11, SumMonoid(9210)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 376), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(376, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(376, 389), fp: EncodedCountingMonoid(3, SumMonoid(1139)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(3, SumMonoid(1602)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 947), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }], item_sets: [ItemSet { range: Range(223, 368), items: [314, 325], want_response: true }, ItemSet { range: Range(368, 376), items: [368], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 947), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(223, 368), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363], want_response: false }, ItemSet { range: Range(368, 376), items: [371], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(376, 389), items: [], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 368, 389, 433, 478, 484, 493, 500, 687, 705, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(376, 389), items: [376, 379, 384], want_response: false }, ItemSet { range: Range(514, 535), items: [517], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 947), items: [], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837], provide: [(325, true), (368, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 947), items: [916, 918, 924, 925, 926], want_response: false }], wants: [376, 379, 384, 517, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 552, 715, 779, 781, 861, 892, 898], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (690, true), (694, true), (700, true), (712, true), (969, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(376, true), (379, true), (384, true), (517, true), (541, true), (544, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 314, 325, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 368, 389, 433, 478, 484, 493, 500, 687, 705, 947, 971, 376, 379, 384, 517, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 314, 325, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 541, 544, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(39, SumMonoid(20718)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 376), fp: EncodedCountingMonoid(9, SumMonoid(1528)) }, Fingerprint { range: Range(376, 514), fp: EncodedCountingMonoid(9, SumMonoid(3916)) }, Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(11, SumMonoid(6779)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(10, SumMonoid(8495)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 376), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(376, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(376, 389), fp: EncodedCountingMonoid(3, SumMonoid(1139)) }, Fingerprint { range: Range(514, 619), fp: EncodedCountingMonoid(5, SumMonoid(2756)) }, Fingerprint { range: Range(619, 690), fp: EncodedCountingMonoid(4, SumMonoid(2603)) }, Fingerprint { range: Range(779, 799), fp: EncodedCountingMonoid(4, SumMonoid(3127)) }, Fingerprint { range: Range(799, 916), fp: EncodedCountingMonoid(4, SumMonoid(3450)) }], item_sets: [ItemSet { range: Range(223, 368), items: [314, 325], want_response: true }, ItemSet { range: Range(368, 376), items: [368], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 619), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(799, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(223, 368), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363], want_response: false }, ItemSet { range: Range(368, 376), items: [371], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(376, 389), items: [], want_response: true }, ItemSet { range: Range(619, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 799), items: [], want_response: true }], wants: [325, 368, 389, 433, 478, 484, 493, 500, 705, 715, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(376, 389), items: [376, 379, 384], want_response: false }, ItemSet { range: Range(619, 674), items: [619, 630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [687], want_response: false }, ItemSet { range: Range(779, 799), items: [779, 781, 782, 785], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(514, 544), items: [517, 541], want_response: true }, ItemSet { range: Range(544, 585), items: [544, 562], want_response: true }, ItemSet { range: Range(585, 619), items: [592], want_response: true }, ItemSet { range: Range(799, 879), items: [799, 861], want_response: true }, ItemSet { range: Range(879, 916), items: [892, 898], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(325, true), (368, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(514, 544), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(544, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 619), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(799, 879), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [376, 379, 384, 619, 630, 667, 687, 779, 781, 782, 785, 9, 55, 77, 108, 127, 145, 517, 541, 544, 799, 861, 892, 898], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 514, 528, 535, 540, 585, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(376, true), (379, true), (384, true), (619, true), (630, true), (667, true), (687, true), (779, true), (781, true), (782, true), (785, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (517, true), (541, true), (544, true), (799, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (514, true), (528, true), (535, true), (540, true), (585, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 314, 325, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 541, 544, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 514, 528, 535, 540, 585, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 368, 389, 433, 478, 484, 493, 500, 705, 715, 947, 971, 376, 379, 384, 619, 630, 667, 687, 779, 781, 782, 785, 9, 55, 77, 108, 127, 145, 517, 541, 544, 799, 861, 892, 898]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 517, 528, 535, 540, 541, 544, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 517, 528, 535, 540, 541, 544, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 368, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 517, 528, 535, 540, 541, 544, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 892, 898, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 314, 325, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(40, SumMonoid(21270)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 376), fp: EncodedCountingMonoid(9, SumMonoid(1528)) }, Fingerprint { range: Range(376, 514), fp: EncodedCountingMonoid(9, SumMonoid(3916)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(11, SumMonoid(6616)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(11, SumMonoid(9210)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 376), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(376, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(376, 389), fp: EncodedCountingMonoid(3, SumMonoid(1139)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(3, SumMonoid(1602)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 947), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }], item_sets: [ItemSet { range: Range(223, 368), items: [314, 325], want_response: true }, ItemSet { range: Range(368, 376), items: [368], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 947), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(223, 368), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363], want_response: false }, ItemSet { range: Range(368, 376), items: [371], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(376, 389), items: [], want_response: true }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 368, 389, 433, 478, 484, 493, 500, 687, 705, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(376, 389), items: [376, 379, 384], want_response: false }, ItemSet { range: Range(514, 535), items: [517], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 947), items: [], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837], provide: [(325, true), (368, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 947), items: [916, 918, 924, 925, 926], want_response: false }], wants: [376, 379, 384, 517, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 552, 715, 779, 781, 861, 892, 898], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (690, true), (694, true), (700, true), (712, true), (969, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(376, true), (379, true), (384, true), (517, true), (541, true), (544, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 314, 325, 368, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 368, 389, 433, 478, 484, 493, 500, 687, 705, 947, 971, 376, 379, 384, 517, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 314, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(39, SumMonoid(20902)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 379), fp: EncodedCountingMonoid(9, SumMonoid(1536)) }, Fingerprint { range: Range(379, 514), fp: EncodedCountingMonoid(8, SumMonoid(3540)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(11, SumMonoid(6616)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(11, SumMonoid(9210)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 379), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(379, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(3, SumMonoid(1602)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 947), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }], item_sets: [ItemSet { range: Range(223, 376), items: [314, 325], want_response: true }, ItemSet { range: Range(376, 379), items: [376], want_response: true }, ItemSet { range: Range(379, 389), items: [379, 384], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 947), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(223, 376), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(376, 379), items: [], want_response: false }, ItemSet { range: Range(379, 389), items: [], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [517], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 947), items: [], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837], provide: [(325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 947), items: [916, 918, 924, 925, 926], want_response: false }], wants: [517, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 552, 715, 779, 781, 861, 892, 898], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (690, true), (694, true), (700, true), (712, true), (969, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(517, true), (541, true), (544, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 314, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 947, 971, 517, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(38, SumMonoid(20588)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 379), fp: EncodedCountingMonoid(8, SumMonoid(1222)) }, Fingerprint { range: Range(379, 514), fp: EncodedCountingMonoid(8, SumMonoid(3540)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(11, SumMonoid(6616)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(11, SumMonoid(9210)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 379), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(379, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(3, SumMonoid(1602)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }, Fingerprint { range: Range(842, 947), fp: EncodedCountingMonoid(3, SumMonoid(2651)) }], item_sets: [ItemSet { range: Range(223, 379), items: [325, 376], want_response: true }, ItemSet { range: Range(379, 389), items: [379, 384], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }, Fingerprint { range: Range(842, 916), fp: EncodedCountingMonoid(5, SumMonoid(4372)) }, Fingerprint { range: Range(916, 947), fp: EncodedCountingMonoid(5, SumMonoid(4609)) }], item_sets: [ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 389), items: [], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [517], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }, ItemSet { range: Range(842, 898), items: [861, 892], want_response: true }, ItemSet { range: Range(898, 916), items: [898], want_response: true }, ItemSet { range: Range(916, 947), items: [], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837], provide: [(325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }, ItemSet { range: Range(842, 898), items: [842, 857, 879, 885], want_response: false }, ItemSet { range: Range(898, 916), items: [909], want_response: false }, ItemSet { range: Range(916, 947), items: [916, 918, 924, 925, 926], want_response: false }], wants: [517, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 552, 715, 779, 781, 861, 892, 898], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (690, true), (694, true), (700, true), (712, true), (969, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(517, true), (541, true), (544, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (552, true), (715, true), (779, true), (781, true), (861, true), (892, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 892, 898, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 969, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 947, 971, 517, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 552, 715, 779, 781, 861, 892, 898]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(37, SumMonoid(19696)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 379), fp: EncodedCountingMonoid(8, SumMonoid(1222)) }, Fingerprint { range: Range(379, 514), fp: EncodedCountingMonoid(8, SumMonoid(3540)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(11, SumMonoid(6616)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(10, SumMonoid(8318)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 379), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(379, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(3, SumMonoid(1602)) }, Fingerprint { range: Range(552, 609), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(223, 379), items: [325, 376], want_response: true }, ItemSet { range: Range(379, 389), items: [379, 384], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 947), items: [861, 898], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(552, 601), fp: EncodedCountingMonoid(3, SumMonoid(1739)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 389), items: [], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 947), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(601, 609), items: [601, 605], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 898, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [517], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(601, 609), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: true }, ItemSet { range: Range(592, 601), items: [592], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837], provide: [(325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (861, true), (898, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: false }, ItemSet { range: Range(592, 601), items: [592], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [517, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 552, 715, 779, 781], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (601, true), (605, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(517, true), (541, true), (544, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (552, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (585, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 517, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 898, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 601, 605, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 585, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 898, 947, 971, 517, 541, 544, 782, 785, 799, 9, 55, 77, 108, 127, 145, 552, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(36, SumMonoid(19179)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 379), fp: EncodedCountingMonoid(8, SumMonoid(1222)) }, Fingerprint { range: Range(379, 514), fp: EncodedCountingMonoid(8, SumMonoid(3540)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(10, SumMonoid(8318)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 379), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(379, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(223, 379), items: [325, 376], want_response: true }, ItemSet { range: Range(379, 389), items: [379, 384], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 947), items: [861, 898], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 389), items: [], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 947), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 898, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (861, true), (898, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 9, 55, 77, 108, 127, 145, 715, 779, 781], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 898, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 898, 947, 971, 541, 544, 552, 782, 785, 799, 9, 55, 77, 108, 127, 145, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 715, 779, 781, 782, 785, 799, 861, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(35, SumMonoid(18474)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 379), fp: EncodedCountingMonoid(8, SumMonoid(1222)) }, Fingerprint { range: Range(379, 514), fp: EncodedCountingMonoid(8, SumMonoid(3540)) }, Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(10, SumMonoid(6109)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(9, SumMonoid(7603)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 379), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(379, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(514, 619), fp: EncodedCountingMonoid(5, SumMonoid(2791)) }, Fingerprint { range: Range(619, 690), fp: EncodedCountingMonoid(4, SumMonoid(2603)) }, Fingerprint { range: Range(779, 799), fp: EncodedCountingMonoid(4, SumMonoid(3127)) }, Fingerprint { range: Range(799, 916), fp: EncodedCountingMonoid(3, SumMonoid(2558)) }], item_sets: [ItemSet { range: Range(223, 379), items: [325, 376], want_response: true }, ItemSet { range: Range(379, 389), items: [379, 384], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(690, 779), items: [715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 619), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(799, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 389), items: [], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(619, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 799), items: [], want_response: true }], wants: [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 715, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(619, 674), items: [619, 630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [687], want_response: false }, ItemSet { range: Range(779, 799), items: [779, 781, 782, 785], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(514, 552), items: [541, 544], want_response: true }, ItemSet { range: Range(552, 585), items: [552, 562], want_response: true }, ItemSet { range: Range(585, 619), items: [592], want_response: true }, ItemSet { range: Range(799, 879), items: [799, 861], want_response: true }, ItemSet { range: Range(879, 916), items: [898], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 619), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(799, 879), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [619, 630, 667, 687, 779, 781, 782, 785, 9, 55, 77, 108, 127, 145, 541, 544, 552, 799, 861, 898], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 514, 528, 535, 540, 585, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(619, true), (630, true), (667, true), (687, true), (779, true), (781, true), (782, true), (785, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (541, true), (544, true), (552, true), (799, true), (861, true), (898, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (514, true), (528, true), (535, true), (540, true), (585, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 715, 779, 781, 782, 785, 799, 861, 898, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 514, 528, 535, 540, 585, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 715, 947, 971, 619, 630, 667, 687, 779, 781, 782, 785, 9, 55, 77, 108, 127, 145, 541, 544, 552, 799, 861, 898]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 898, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 898, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 898, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(36, SumMonoid(19179)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 379), fp: EncodedCountingMonoid(8, SumMonoid(1222)) }, Fingerprint { range: Range(379, 514), fp: EncodedCountingMonoid(8, SumMonoid(3540)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(10, SumMonoid(8318)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 379), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(379, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(223, 379), items: [325, 376], want_response: true }, ItemSet { range: Range(379, 389), items: [379, 384], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 947), items: [861, 898], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 389), items: [], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 947), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 898, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (861, true), (898, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 9, 55, 77, 108, 127, 145, 715, 779, 781], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 898, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 898, 947, 971, 541, 544, 552, 782, 785, 799, 9, 55, 77, 108, 127, 145, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 898, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 948), fp: EncodedCountingMonoid(35, SumMonoid(18208)) }], item_sets: [ItemSet { range: Range(948, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 9), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 376), fp: EncodedCountingMonoid(7, SumMonoid(846)) }, Fingerprint { range: Range(376, 492), fp: EncodedCountingMonoid(7, SumMonoid(2923)) }, Fingerprint { range: Range(492, 705), fp: EncodedCountingMonoid(11, SumMonoid(6387)) }, Fingerprint { range: Range(705, 948), fp: EncodedCountingMonoid(10, SumMonoid(8052)) }], item_sets: [], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 376), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(376, 450), fp: EncodedCountingMonoid(5, SumMonoid(2103)) }, Fingerprint { range: Range(450, 492), fp: EncodedCountingMonoid(5, SumMonoid(2331)) }, Fingerprint { range: Range(492, 605), fp: EncodedCountingMonoid(9, SumMonoid(4949)) }, Fingerprint { range: Range(605, 705), fp: EncodedCountingMonoid(9, SumMonoid(5962)) }, Fingerprint { range: Range(705, 837), fp: EncodedCountingMonoid(11, SumMonoid(8192)) }, Fingerprint { range: Range(837, 948), fp: EncodedCountingMonoid(11, SumMonoid(9818)) }], item_sets: [], wants: [], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(376, 389), fp: EncodedCountingMonoid(3, SumMonoid(1139)) }, Fingerprint { range: Range(492, 552), fp: EncodedCountingMonoid(4, SumMonoid(2078)) }, Fingerprint { range: Range(552, 605), fp: EncodedCountingMonoid(3, SumMonoid(1706)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(4, SumMonoid(2980)) }, Fingerprint { range: Range(782, 837), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(223, 376), items: [325], want_response: true }, ItemSet { range: Range(389, 450), items: [389, 433], want_response: true }, ItemSet { range: Range(450, 492), items: [478, 484], want_response: true }, ItemSet { range: Range(605, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 705), items: [667, 687], want_response: true }, ItemSet { range: Range(837, 947), items: [861, 898], want_response: true }, ItemSet { range: Range(947, 948), items: [947], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(492, 535), fp: EncodedCountingMonoid(3, SumMonoid(1534)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(223, 376), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(389, 450), items: [390, 394, 434, 439, 446], want_response: false }, ItemSet { range: Range(450, 492), items: [450, 455, 459, 479, 488], want_response: false }, ItemSet { range: Range(605, 667), items: [605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(837, 947), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(947, 948), items: [], want_response: false }, ItemSet { range: Range(376, 389), items: [], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(552, 592), items: [562, 585], want_response: true }, ItemSet { range: Range(592, 605), items: [592, 601], want_response: true }, ItemSet { range: Range(782, 837), items: [836], want_response: true }], wants: [325, 389, 433, 478, 484, 619, 630, 667, 687, 861, 898, 947], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(376, 389), items: [376, 379, 384], want_response: false }, ItemSet { range: Range(535, 552), items: [541, 544], want_response: false }, ItemSet { range: Range(552, 592), items: [552, 562], want_response: false }, ItemSet { range: Range(592, 605), items: [592], want_response: false }, ItemSet { range: Range(782, 837), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(492, 535), items: [493, 500], want_response: true }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779, 781], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 605, 609, 645, 662, 674, 683, 690, 694, 700, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 535, 540, 585, 601, 836], provide: [(325, true), (389, true), (433, true), (478, true), (484, true), (619, true), (630, true), (667, true), (687, true), (861, true), (898, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(492, 535), items: [492, 514, 528], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [376, 379, 384, 541, 544, 552, 782, 785, 799, 9, 55, 77, 108, 127, 145, 493, 500, 705, 715, 779, 781], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (535, true), (540, true), (585, true), (601, true), (836, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 492, 514, 528, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(376, true), (379, true), (384, true), (541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (493, true), (500, true), (705, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (492, true), (514, true), (528, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 898, 947} + [969, 990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 605, 609, 645, 662, 674, 683, 690, 694, 700, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 535, 540, 585, 601, 836, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 492, 514, 528, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 389, 433, 478, 484, 619, 630, 667, 687, 861, 898, 947, 376, 379, 384, 541, 544, 552, 782, 785, 799, 9, 55, 77, 108, 127, 145, 493, 500, 705, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 898, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 898, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 898, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 898, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(36, SumMonoid(19179)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 379), fp: EncodedCountingMonoid(8, SumMonoid(1222)) }, Fingerprint { range: Range(379, 514), fp: EncodedCountingMonoid(8, SumMonoid(3540)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(10, SumMonoid(8318)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 379), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(379, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(223, 379), items: [325, 376], want_response: true }, ItemSet { range: Range(379, 389), items: [379, 384], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 947), items: [861, 898], want_response: true }, ItemSet { range: Range(947, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 389), items: [], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 947), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(947, 972), items: [969], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 898, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (861, true), (898, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 9, 55, 77, 108, 127, 145, 715, 779, 781], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 898, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 898, 947, 971, 541, 544, 552, 782, 785, 799, 9, 55, 77, 108, 127, 145, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(35, SumMonoid(18281)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 379), fp: EncodedCountingMonoid(8, SumMonoid(1222)) }, Fingerprint { range: Range(379, 514), fp: EncodedCountingMonoid(8, SumMonoid(3540)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 379), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(379, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(223, 379), items: [325, 376], want_response: true }, ItemSet { range: Range(379, 389), items: [379, 384], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 389), items: [], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 9, 55, 77, 108, 127, 145, 715, 779, 781], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 9, 55, 77, 108, 127, 145, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(34, SumMonoid(17614)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 379), fp: EncodedCountingMonoid(8, SumMonoid(1222)) }, Fingerprint { range: Range(379, 514), fp: EncodedCountingMonoid(8, SumMonoid(3540)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5432)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 379), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(379, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(223, 379), items: [325, 376], want_response: true }, ItemSet { range: Range(379, 389), items: [379, 384], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(609, 687), items: [619, 630], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 389), items: [], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 687), items: [609, 645, 662, 674, 683], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 619, 630, 687, 705, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 836, 837], provide: [(325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (619, true), (630, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 9, 55, 77, 108, 127, 145, 715, 779, 781], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 619, 630, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 9, 55, 77, 108, 127, 145, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(35, SumMonoid(18281)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 379), fp: EncodedCountingMonoid(8, SumMonoid(1222)) }, Fingerprint { range: Range(379, 514), fp: EncodedCountingMonoid(8, SumMonoid(3540)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 379), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(379, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(223, 379), items: [325, 376], want_response: true }, ItemSet { range: Range(379, 389), items: [379, 384], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 389), items: [], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 9, 55, 77, 108, 127, 145, 715, 779, 781], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 9, 55, 77, 108, 127, 145, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(34, SumMonoid(17566)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 379), fp: EncodedCountingMonoid(8, SumMonoid(1222)) }, Fingerprint { range: Range(379, 514), fp: EncodedCountingMonoid(8, SumMonoid(3540)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(9, SumMonoid(5394)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(9, SumMonoid(7410)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 379), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(379, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2265)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(223, 379), items: [325, 376], want_response: true }, ItemSet { range: Range(379, 389), items: [379, 384], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(609, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 705), items: [667, 687], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 389), items: [], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 619, 630, 667, 687, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(705, 738), items: [705], want_response: true }, ItemSet { range: Range(738, 782), items: [779, 781], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 836, 837], provide: [(325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (619, true), (630, true), (667, true), (687, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 9, 55, 77, 108, 127, 145, 705, 779, 781], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (705, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 619, 630, 667, 687, 861, 947, 971, 541, 544, 552, 782, 785, 799, 9, 55, 77, 108, 127, 145, 705, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 108, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(35, SumMonoid(18281)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 379), fp: EncodedCountingMonoid(8, SumMonoid(1222)) }, Fingerprint { range: Range(379, 514), fp: EncodedCountingMonoid(8, SumMonoid(3540)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 379), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(379, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 108), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(108, 223), fp: EncodedCountingMonoid(3, SumMonoid(380)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(223, 379), items: [325, 376], want_response: true }, ItemSet { range: Range(379, 389), items: [379, 384], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 108), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(108, 185), fp: EncodedCountingMonoid(3, SumMonoid(447)) }, Fingerprint { range: Range(185, 223), fp: EncodedCountingMonoid(3, SumMonoid(576)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 389), items: [], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 108), items: [], want_response: true }, ItemSet { range: Range(108, 145), items: [108, 127], want_response: true }, ItemSet { range: Range(145, 185), items: [145], want_response: true }, ItemSet { range: Range(185, 223), items: [], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 108), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(108, 145), items: [142, 143], want_response: false }, ItemSet { range: Range(145, 185), items: [162], want_response: false }, ItemSet { range: Range(185, 223), items: [185, 192, 199], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 9, 55, 77, 108, 127, 145, 715, 779, 781], provide: [(223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (108, true), (127, true), (145, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 108, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 9, 55, 77, 108, 127, 145, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(34, SumMonoid(18173)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 384), fp: EncodedCountingMonoid(8, SumMonoid(1493)) }, Fingerprint { range: Range(384, 514), fp: EncodedCountingMonoid(7, SumMonoid(3161)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 384), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(384, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 127), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(127, 223), items: [127, 145], want_response: true }, ItemSet { range: Range(223, 379), items: [325, 376], want_response: true }, ItemSet { range: Range(379, 384), items: [379], want_response: true }, ItemSet { range: Range(384, 433), items: [384, 389], want_response: true }, ItemSet { range: Range(433, 455), items: [433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 127), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(127, 223), items: [142, 143, 162, 185, 192, 199], want_response: false }, ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 384), items: [], want_response: false }, ItemSet { range: Range(384, 433), items: [390, 394], want_response: false }, ItemSet { range: Range(433, 455), items: [434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 127), items: [], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(127, true), (145, true), (325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 127), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 9, 55, 77, 715, 779, 781], provide: [(142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 9, 55, 77, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(33, SumMonoid(17388)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 384), fp: EncodedCountingMonoid(8, SumMonoid(1493)) }, Fingerprint { range: Range(384, 514), fp: EncodedCountingMonoid(7, SumMonoid(3161)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(9, SumMonoid(5394)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(9, SumMonoid(7340)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 384), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(384, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 127), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(705, 781), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }, Fingerprint { range: Range(781, 842), fp: EncodedCountingMonoid(3, SumMonoid(2362)) }], item_sets: [ItemSet { range: Range(127, 223), items: [127, 145], want_response: true }, ItemSet { range: Range(223, 379), items: [325, 376], want_response: true }, ItemSet { range: Range(379, 384), items: [379], want_response: true }, ItemSet { range: Range(384, 433), items: [384, 389], want_response: true }, ItemSet { range: Range(433, 455), items: [433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(609, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 705), items: [667, 687], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 127), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 781), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(127, 223), items: [142, 143, 162, 185, 192, 199], want_response: false }, ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 384), items: [], want_response: false }, ItemSet { range: Range(384, 433), items: [390, 394], want_response: false }, ItemSet { range: Range(433, 455), items: [434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(781, 842), items: [836, 837], want_response: true }], wants: [127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 619, 630, 667, 687, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(781, 842), items: [781, 782, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 127), items: [], want_response: true }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 781), items: [779], want_response: true }], wants: [142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 836, 837], provide: [(127, true), (145, true), (325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (619, true), (630, true), (667, true), (687, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 127), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 781), items: [738, 741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 781, 782, 799, 9, 55, 77, 705, 715, 779], provide: [(142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (781, true), (782, true), (799, true), (9, true), (55, true), (77, true), (705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 799, 861, 947, 971} + [990, 999, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 619, 630, 667, 687, 861, 947, 971, 541, 544, 552, 781, 782, 799, 9, 55, 77, 705, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(34, SumMonoid(18173)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 384), fp: EncodedCountingMonoid(8, SumMonoid(1493)) }, Fingerprint { range: Range(384, 514), fp: EncodedCountingMonoid(7, SumMonoid(3161)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 384), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(384, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 127), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(127, 223), items: [127, 145], want_response: true }, ItemSet { range: Range(223, 379), items: [325, 376], want_response: true }, ItemSet { range: Range(379, 384), items: [379], want_response: true }, ItemSet { range: Range(384, 433), items: [384, 389], want_response: true }, ItemSet { range: Range(433, 455), items: [433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 127), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(127, 223), items: [142, 143, 162, 185, 192, 199], want_response: false }, ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 384), items: [], want_response: false }, ItemSet { range: Range(384, 433), items: [390, 394], want_response: false }, ItemSet { range: Range(433, 455), items: [434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 127), items: [], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(127, true), (145, true), (325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 127), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 9, 55, 77, 715, 779, 781], provide: [(142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 9, 55, 77, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(33, SumMonoid(17226)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 384), fp: EncodedCountingMonoid(8, SumMonoid(1493)) }, Fingerprint { range: Range(384, 514), fp: EncodedCountingMonoid(7, SumMonoid(3161)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(9, SumMonoid(5394)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(9, SumMonoid(7178)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 384), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(384, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 127), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(4, SumMonoid(2980)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(127, 223), items: [127, 145], want_response: true }, ItemSet { range: Range(223, 379), items: [325, 376], want_response: true }, ItemSet { range: Range(379, 384), items: [379], want_response: true }, ItemSet { range: Range(384, 433), items: [384, 389], want_response: true }, ItemSet { range: Range(433, 455), items: [433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(609, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 705), items: [667, 687], want_response: true }, ItemSet { range: Range(842, 972), items: [861, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 127), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(127, 223), items: [142, 143, 162, 185, 192, 199], want_response: false }, ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 384), items: [], want_response: false }, ItemSet { range: Range(384, 433), items: [390, 394], want_response: false }, ItemSet { range: Range(433, 455), items: [434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(842, 972), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 619, 630, 667, 687, 861, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 127), items: [], want_response: true }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779, 781], want_response: true }], wants: [142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 836, 837], provide: [(127, true), (145, true), (325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (619, true), (630, true), (667, true), (687, true), (861, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 127), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 9, 55, 77, 705, 715, 779, 781], provide: [(142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (705, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 971} + [990, 999, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 619, 630, 667, 687, 861, 971, 541, 544, 552, 782, 785, 799, 9, 55, 77, 705, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 127, 142, 143, 145, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 376, 379, 384, 389, 390, 394, 433, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 500, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(34, SumMonoid(18173)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 384), fp: EncodedCountingMonoid(8, SumMonoid(1493)) }, Fingerprint { range: Range(384, 514), fp: EncodedCountingMonoid(7, SumMonoid(3161)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 384), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(384, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 127), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(127, 223), items: [127, 145], want_response: true }, ItemSet { range: Range(223, 379), items: [325, 376], want_response: true }, ItemSet { range: Range(379, 384), items: [379], want_response: true }, ItemSet { range: Range(384, 433), items: [384, 389], want_response: true }, ItemSet { range: Range(433, 455), items: [433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 127), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(127, 223), items: [142, 143, 162, 185, 192, 199], want_response: false }, ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 384), items: [], want_response: false }, ItemSet { range: Range(384, 433), items: [390, 394], want_response: false }, ItemSet { range: Range(433, 455), items: [434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 127), items: [], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(127, true), (145, true), (325, true), (376, true), (379, true), (384, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 127), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 9, 55, 77, 715, 779, 781], provide: [(142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [127, 145, 325, 376, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 9, 55, 77, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 145, 325, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(33, SumMonoid(17797)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 384), fp: EncodedCountingMonoid(7, SumMonoid(1117)) }, Fingerprint { range: Range(384, 514), fp: EncodedCountingMonoid(7, SumMonoid(3161)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 384), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(384, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 127), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(127, 223), items: [127, 145], want_response: true }, ItemSet { range: Range(223, 384), items: [325, 379], want_response: true }, ItemSet { range: Range(384, 433), items: [384, 389], want_response: true }, ItemSet { range: Range(433, 455), items: [433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 127), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(127, 223), items: [142, 143, 162, 185, 192, 199], want_response: false }, ItemSet { range: Range(223, 384), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(384, 433), items: [390, 394], want_response: false }, ItemSet { range: Range(433, 455), items: [434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [127, 145, 325, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 127), items: [], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(127, true), (145, true), (325, true), (379, true), (384, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 127), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 9, 55, 77, 715, 779, 781], provide: [(142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 145, 325, 379, 384, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [127, 145, 325, 379, 384, 389, 433, 478, 484, 493, 500, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 9, 55, 77, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 145, 325, 379, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(32, SumMonoid(17413)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 389), fp: EncodedCountingMonoid(7, SumMonoid(1117)) }, Fingerprint { range: Range(389, 514), fp: EncodedCountingMonoid(6, SumMonoid(2777)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 389), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(389, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 127), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(127, 223), items: [127, 145], want_response: true }, ItemSet { range: Range(223, 389), items: [325, 379], want_response: true }, ItemSet { range: Range(389, 455), items: [389, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493, 500], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 127), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(127, 223), items: [142, 143, 162, 185, 192, 199], want_response: false }, ItemSet { range: Range(223, 389), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(389, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [127, 145, 325, 379, 389, 433, 478, 484, 493, 500, 687, 705, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 127), items: [], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(127, true), (145, true), (325, true), (379, true), (389, true), (433, true), (478, true), (484, true), (493, true), (500, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 127), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 9, 55, 77, 715, 779, 781], provide: [(142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 145, 325, 379, 389, 433, 478, 484, 493, 500, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [127, 145, 325, 379, 389, 433, 478, 484, 493, 500, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 9, 55, 77, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 145, 325, 379, 389, 433, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(31, SumMonoid(16913)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 379), fp: EncodedCountingMonoid(6, SumMonoid(738)) }, Fingerprint { range: Range(379, 514), fp: EncodedCountingMonoid(6, SumMonoid(2656)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 379), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(379, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 127), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(127, 223), items: [127, 145], want_response: true }, ItemSet { range: Range(223, 379), items: [325], want_response: true }, ItemSet { range: Range(379, 433), items: [379, 389], want_response: true }, ItemSet { range: Range(433, 455), items: [433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 127), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(127, 223), items: [142, 143, 162, 185, 192, 199], want_response: false }, ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 433), items: [390, 394], want_response: false }, ItemSet { range: Range(433, 455), items: [434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [127, 145, 325, 379, 389, 433, 478, 484, 493, 687, 705, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 127), items: [], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(127, true), (145, true), (325, true), (379, true), (389, true), (433, true), (478, true), (484, true), (493, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 127), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 9, 55, 77, 715, 779, 781], provide: [(142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 145, 325, 379, 389, 433, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [127, 145, 325, 379, 389, 433, 478, 484, 493, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 9, 55, 77, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 145, 325, 379, 433, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(30, SumMonoid(16524)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 379), fp: EncodedCountingMonoid(6, SumMonoid(738)) }, Fingerprint { range: Range(379, 514), fp: EncodedCountingMonoid(5, SumMonoid(2267)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 379), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(379, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 127), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(127, 223), items: [127, 145], want_response: true }, ItemSet { range: Range(223, 379), items: [325], want_response: true }, ItemSet { range: Range(379, 455), items: [379, 433], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 127), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(127, 223), items: [142, 143, 162, 185, 192, 199], want_response: false }, ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [127, 145, 325, 379, 433, 478, 484, 493, 687, 705, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 127), items: [], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(127, true), (145, true), (325, true), (379, true), (433, true), (478, true), (484, true), (493, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 127), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 9, 55, 77, 715, 779, 781], provide: [(142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 145, 325, 379, 433, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [127, 145, 325, 379, 433, 478, 484, 493, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 9, 55, 77, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 145, 325, 379, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(29, SumMonoid(16091)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 325), fp: EncodedCountingMonoid(5, SumMonoid(413)) }, Fingerprint { range: Range(325, 514), fp: EncodedCountingMonoid(5, SumMonoid(2159)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 185), fp: EncodedCountingMonoid(12, SumMonoid(1070)) }, Fingerprint { range: Range(185, 325), fp: EncodedCountingMonoid(12, SumMonoid(2938)) }, Fingerprint { range: Range(325, 439), fp: EncodedCountingMonoid(9, SumMonoid(3298)) }, Fingerprint { range: Range(439, 514), fp: EncodedCountingMonoid(8, SumMonoid(3708)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 127), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(127, 185), items: [127, 145], want_response: true }, ItemSet { range: Range(185, 325), items: [], want_response: true }, ItemSet { range: Range(325, 439), items: [325, 379], want_response: true }, ItemSet { range: Range(439, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 127), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(127, 185), items: [142, 143, 162], want_response: false }, ItemSet { range: Range(185, 325), items: [185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314], want_response: false }, ItemSet { range: Range(325, 439), items: [327, 329, 340, 350, 363, 371, 390, 394, 434], want_response: false }, ItemSet { range: Range(439, 493), items: [439, 446, 450, 455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [127, 145, 325, 379, 478, 484, 493, 687, 705, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 127), items: [], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(127, true), (145, true), (325, true), (379, true), (478, true), (484, true), (493, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 127), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 9, 55, 77, 715, 779, 781], provide: [(142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (9, true), (55, true), (77, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 145, 325, 379, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 18, 42, 44, 62, 79, 88, 93, 96, 101, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [127, 145, 325, 379, 478, 484, 493, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 9, 55, 77, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 325, 379, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(28, SumMonoid(15946)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 379), fp: EncodedCountingMonoid(5, SumMonoid(593)) }, Fingerprint { range: Range(379, 514), fp: EncodedCountingMonoid(4, SumMonoid(1834)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 379), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(379, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 223), items: [77, 127], want_response: true }, ItemSet { range: Range(223, 379), items: [325], want_response: true }, ItemSet { range: Range(379, 455), items: [379], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 223), items: [79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199], want_response: false }, ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [9, 55, 77, 127, 325, 379, 478, 484, 493, 687, 705, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(9, true), (55, true), (77, true), (127, true), (325, true), (379, true), (478, true), (484, true), (493, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 715, 779, 781], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 325, 379, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 55, 77, 127, 325, 379, 478, 484, 493, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 325, 379, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(27, SumMonoid(15164)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 379), fp: EncodedCountingMonoid(5, SumMonoid(593)) }, Fingerprint { range: Range(379, 514), fp: EncodedCountingMonoid(4, SumMonoid(1834)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(9, SumMonoid(5394)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(9, SumMonoid(7343)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 379), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(379, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(705, 781), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }, Fingerprint { range: Range(781, 842), fp: EncodedCountingMonoid(3, SumMonoid(2365)) }], item_sets: [ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 223), items: [77, 127], want_response: true }, ItemSet { range: Range(223, 379), items: [325], want_response: true }, ItemSet { range: Range(379, 455), items: [379], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(609, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 705), items: [667, 687], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 781), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 223), items: [79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199], want_response: false }, ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(781, 842), items: [836, 837], want_response: true }], wants: [9, 55, 77, 127, 325, 379, 478, 484, 493, 619, 630, 667, 687, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(781, 842), items: [781, 785, 799], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 781), items: [779], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 836, 837], provide: [(9, true), (55, true), (77, true), (127, true), (325, true), (379, true), (478, true), (484, true), (493, true), (619, true), (630, true), (667, true), (687, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 781), items: [738, 741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 781, 785, 799, 705, 715, 779], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (781, true), (785, true), (799, true), (705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 325, 379, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 836, 837, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 55, 77, 127, 325, 379, 478, 484, 493, 619, 630, 667, 687, 861, 947, 971, 541, 544, 552, 781, 785, 799, 705, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 127, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 379, 390, 394, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 127, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 379, 390, 394, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 127, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 379, 390, 394, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 325, 379, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(28, SumMonoid(15946)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 379), fp: EncodedCountingMonoid(5, SumMonoid(593)) }, Fingerprint { range: Range(379, 514), fp: EncodedCountingMonoid(4, SumMonoid(1834)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 379), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(379, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 223), items: [77, 127], want_response: true }, ItemSet { range: Range(223, 379), items: [325], want_response: true }, ItemSet { range: Range(379, 455), items: [379], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 223), items: [79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199], want_response: false }, ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [9, 55, 77, 127, 325, 379, 478, 484, 493, 687, 705, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(9, true), (55, true), (77, true), (127, true), (325, true), (379, true), (478, true), (484, true), (493, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 715, 779, 781], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 325, 379, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 55, 77, 127, 325, 379, 478, 484, 493, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 325, 379, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(27, SumMonoid(15085)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 379), fp: EncodedCountingMonoid(5, SumMonoid(593)) }, Fingerprint { range: Range(379, 514), fp: EncodedCountingMonoid(4, SumMonoid(1834)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(9, SumMonoid(5394)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(9, SumMonoid(7264)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 379), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(379, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(4, SumMonoid(2980)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 223), items: [77, 127], want_response: true }, ItemSet { range: Range(223, 379), items: [325], want_response: true }, ItemSet { range: Range(379, 455), items: [379], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(609, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 705), items: [667, 687], want_response: true }, ItemSet { range: Range(842, 972), items: [947, 971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 223), items: [79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199], want_response: false }, ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(842, 972), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [9, 55, 77, 127, 325, 379, 478, 484, 493, 619, 630, 667, 687, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779, 781], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 836, 837], provide: [(9, true), (55, true), (77, true), (127, true), (325, true), (379, true), (478, true), (484, true), (493, true), (619, true), (630, true), (667, true), (687, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 705, 715, 779, 781], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (705, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 325, 379, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 836, 837, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 55, 77, 127, 325, 379, 478, 484, 493, 619, 630, 667, 687, 947, 971, 541, 544, 552, 782, 785, 799, 705, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 127, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 379, 390, 394, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 127, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 379, 390, 394, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 127, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 325, 327, 329, 340, 350, 363, 371, 379, 390, 394, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 325, 379, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(28, SumMonoid(15946)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 379), fp: EncodedCountingMonoid(5, SumMonoid(593)) }, Fingerprint { range: Range(379, 514), fp: EncodedCountingMonoid(4, SumMonoid(1834)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 223), fp: EncodedCountingMonoid(15, SumMonoid(1646)) }, Fingerprint { range: Range(223, 379), fp: EncodedCountingMonoid(15, SumMonoid(4442)) }, Fingerprint { range: Range(379, 455), fp: EncodedCountingMonoid(6, SumMonoid(2553)) }, Fingerprint { range: Range(455, 514), fp: EncodedCountingMonoid(5, SumMonoid(2373)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 223), items: [77, 127], want_response: true }, ItemSet { range: Range(223, 379), items: [325], want_response: true }, ItemSet { range: Range(379, 455), items: [379], want_response: true }, ItemSet { range: Range(455, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 223), items: [79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199], want_response: false }, ItemSet { range: Range(223, 379), items: [223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371], want_response: false }, ItemSet { range: Range(379, 455), items: [390, 394, 434, 439, 446, 450], want_response: false }, ItemSet { range: Range(455, 493), items: [455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [9, 55, 77, 127, 325, 379, 478, 484, 493, 687, 705, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(9, true), (55, true), (77, true), (127, true), (325, true), (379, true), (478, true), (484, true), (493, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 715, 779, 781], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 325, 379, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 55, 77, 127, 325, 379, 478, 484, 493, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 325, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(27, SumMonoid(15567)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 325), fp: EncodedCountingMonoid(4, SumMonoid(268)) }, Fingerprint { range: Range(325, 514), fp: EncodedCountingMonoid(4, SumMonoid(1780)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 185), fp: EncodedCountingMonoid(12, SumMonoid(1070)) }, Fingerprint { range: Range(185, 325), fp: EncodedCountingMonoid(12, SumMonoid(2938)) }, Fingerprint { range: Range(325, 439), fp: EncodedCountingMonoid(9, SumMonoid(3298)) }, Fingerprint { range: Range(439, 514), fp: EncodedCountingMonoid(8, SumMonoid(3708)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 185), items: [77, 127], want_response: true }, ItemSet { range: Range(185, 325), items: [], want_response: true }, ItemSet { range: Range(325, 439), items: [325], want_response: true }, ItemSet { range: Range(439, 493), items: [478, 484], want_response: true }, ItemSet { range: Range(493, 514), items: [493], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 185), items: [79, 88, 93, 96, 101, 142, 143, 162], want_response: false }, ItemSet { range: Range(185, 325), items: [185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314], want_response: false }, ItemSet { range: Range(325, 439), items: [327, 329, 340, 350, 363, 371, 390, 394, 434], want_response: false }, ItemSet { range: Range(439, 493), items: [439, 446, 450, 455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(493, 514), items: [], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [9, 55, 77, 127, 325, 478, 484, 493, 687, 705, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(9, true), (55, true), (77, true), (127, true), (325, true), (478, true), (484, true), (493, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 715, 779, 781], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 325, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 55, 77, 127, 325, 478, 484, 493, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(26, SumMonoid(15242)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 478), fp: EncodedCountingMonoid(4, SumMonoid(268)) }, Fingerprint { range: Range(478, 514), fp: EncodedCountingMonoid(3, SumMonoid(1455)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 257), fp: EncodedCountingMonoid(19, SumMonoid(2604)) }, Fingerprint { range: Range(257, 478), fp: EncodedCountingMonoid(19, SumMonoid(6951)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(478, 492), items: [479, 488], want_response: true }, ItemSet { range: Range(492, 514), items: [492], want_response: true }], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(478, 492), items: [478, 484], want_response: false }, ItemSet { range: Range(492, 514), items: [493], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 257), items: [77, 127], want_response: true }, ItemSet { range: Range(257, 478), items: [], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [479, 488, 492], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 257), items: [79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 478), items: [257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [478, 484, 493, 9, 55, 77, 127, 687, 705, 861, 947, 971], provide: [(479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(478, true), (484, true), (493, true), (9, true), (55, true), (77, true), (127, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 715, 779, 781], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 479, 488, 492, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [478, 484, 493, 9, 55, 77, 127, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(25, SumMonoid(14463)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 478), fp: EncodedCountingMonoid(4, SumMonoid(268)) }, Fingerprint { range: Range(478, 514), fp: EncodedCountingMonoid(3, SumMonoid(1455)) }, Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(9, SumMonoid(5394)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(9, SumMonoid(7346)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 257), fp: EncodedCountingMonoid(19, SumMonoid(2604)) }, Fingerprint { range: Range(257, 478), fp: EncodedCountingMonoid(19, SumMonoid(6951)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(478, 492), items: [479, 488], want_response: true }, ItemSet { range: Range(492, 514), items: [492], want_response: true }], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2201)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(478, 492), items: [478, 484], want_response: false }, ItemSet { range: Range(492, 514), items: [493], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 257), items: [77, 127], want_response: true }, ItemSet { range: Range(257, 478), items: [], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(609, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 705), items: [667, 687], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [479, 488, 492], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 257), items: [79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 478), items: [257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [478, 484, 493, 9, 55, 77, 127, 619, 630, 667, 687, 861, 947, 971], provide: [(479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [781], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 585, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 836, 837], provide: [(478, true), (484, true), (493, true), (9, true), (55, true), (77, true), (127, true), (619, true), (630, true), (667, true), (687, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 705, 715, 781], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (585, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (705, true), (715, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 479, 488, 492, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 585, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 836, 837, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [478, 484, 493, 9, 55, 77, 127, 619, 630, 667, 687, 861, 947, 971, 541, 544, 552, 782, 785, 799, 705, 715, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 127, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 127, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 55, 62, 77, 79, 88, 93, 96, 101, 127, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 478, 479, 484, 488, 492, 493, 514, 528, 535, 540, 541, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(26, SumMonoid(15242)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 478), fp: EncodedCountingMonoid(4, SumMonoid(268)) }, Fingerprint { range: Range(478, 514), fp: EncodedCountingMonoid(3, SumMonoid(1455)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 257), fp: EncodedCountingMonoid(19, SumMonoid(2604)) }, Fingerprint { range: Range(257, 478), fp: EncodedCountingMonoid(19, SumMonoid(6951)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(478, 492), items: [479, 488], want_response: true }, ItemSet { range: Range(492, 514), items: [492], want_response: true }], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(478, 492), items: [478, 484], want_response: false }, ItemSet { range: Range(492, 514), items: [493], want_response: false }, ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 257), items: [77, 127], want_response: true }, ItemSet { range: Range(257, 478), items: [], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [479, 488, 492], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 257), items: [79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253], want_response: false }, ItemSet { range: Range(257, 478), items: [257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [478, 484, 493, 9, 55, 77, 127, 687, 705, 861, 947, 971], provide: [(479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(478, true), (484, true), (493, true), (9, true), (55, true), (77, true), (127, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 715, 779, 781], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 478, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 479, 488, 492, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [478, 484, 493, 9, 55, 77, 127, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 127, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(25, SumMonoid(14764)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 127), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(127, 514), fp: EncodedCountingMonoid(3, SumMonoid(1104)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 88), fp: EncodedCountingMonoid(5, SumMonoid(245)) }, Fingerprint { range: Range(88, 127), fp: EncodedCountingMonoid(4, SumMonoid(378)) }, Fingerprint { range: Range(127, 329), fp: EncodedCountingMonoid(16, SumMonoid(3712)) }, Fingerprint { range: Range(329, 514), fp: EncodedCountingMonoid(16, SumMonoid(6679)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [], wants: [], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 88), items: [77], want_response: true }, ItemSet { range: Range(88, 127), items: [], want_response: true }, ItemSet { range: Range(127, 329), items: [127], want_response: true }, ItemSet { range: Range(329, 514), items: [484, 493], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 88), items: [79], want_response: false }, ItemSet { range: Range(88, 127), items: [88, 93, 96, 101], want_response: false }, ItemSet { range: Range(127, 329), items: [142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327], want_response: false }, ItemSet { range: Range(329, 514), items: [329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [9, 55, 77, 127, 484, 493, 687, 705, 861, 947, 971], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(9, true), (55, true), (77, true), (127, true), (484, true), (493, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 715, 779, 781], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 127, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 55, 77, 127, 484, 493, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(24, SumMonoid(14637)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 484), fp: EncodedCountingMonoid(3, SumMonoid(141)) }, Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(484, 514), items: [484, 493], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 261), fp: EncodedCountingMonoid(20, SumMonoid(2861)) }, Fingerprint { range: Range(261, 484), fp: EncodedCountingMonoid(19, SumMonoid(7173)) }, Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(484, 514), items: [488, 492], want_response: false }], wants: [484, 493], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 261), items: [77], want_response: true }, ItemSet { range: Range(261, 484), items: [], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [488, 492], provide: [(484, true), (493, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 261), items: [79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257], want_response: false }, ItemSet { range: Range(261, 484), items: [261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [9, 55, 77, 687, 705, 861, 947, 971], provide: [(488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(9, true), (55, true), (77, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 715, 779, 781], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 484, 493, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 488, 492, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [484, 493, 9, 55, 77, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 484, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(23, SumMonoid(14144)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(10, SumMonoid(6099)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 514), items: [77, 484], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 514), items: [79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 55, 77, 484], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1637)) }, Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (55, true), (77, true), (484, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [], want_response: false }, ItemSet { range: Range(535, 562), items: [541, 544, 552], want_response: false }, ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837], provide: [(687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [541, 544, 552, 782, 785, 799, 715, 779, 781], provide: [(585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (514, true), (528, true), (535, true), (540, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(541, true), (544, true), (552, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 484, 541, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 514, 528, 535, 540, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 55, 77, 484, 687, 705, 861, 947, 971, 541, 544, 552, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 77, 484, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(22, SumMonoid(13603)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5558)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 77), items: [9, 55], want_response: true }, ItemSet { range: Range(77, 514), items: [77, 484], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 77), items: [18, 42, 44, 62], want_response: false }, ItemSet { range: Range(77, 514), items: [79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 55, 77, 484], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (55, true), (77, true), (484, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 562), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [514, 528, 535, 540, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(514, true), (528, true), (535, true), (540, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 77, 484, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 55, 77, 484, 544, 552, 687, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 55, 484, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(21, SumMonoid(13526)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5558)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 484), items: [9, 55], want_response: true }, ItemSet { range: Range(484, 514), items: [484], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 484), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479], want_response: false }, ItemSet { range: Range(484, 514), items: [488, 492], want_response: false }], wants: [9, 55, 484], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (55, true), (484, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 562), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [514, 528, 535, 540, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(514, true), (528, true), (535, true), (540, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 55, 484, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 55, 484, 544, 552, 687, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 484, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(20, SumMonoid(13471)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5558)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 484], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 484], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (484, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 562), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [514, 528, 535, 540, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(514, true), (528, true), (535, true), (540, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 484, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 484, 544, 552, 687, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12987)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5558)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 609), items: [562, 592], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 562), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [514, 528, 535, 540, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(514, true), (528, true), (535, true), (540, true), (585, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 544, 552, 562, 592, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 585, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 687, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 296, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12691)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5681)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 296], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 296], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2277)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1984)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (296, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [687], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 585), items: [562], want_response: true }, ItemSet { range: Range(585, 630), items: [619], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 562), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(562, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 687, 779, 781, 782, 544, 552, 619, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [514, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (687, true), (779, true), (781, true), (782, true), (544, true), (552, true), (619, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(514, true), (528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 296, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 514, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 296, 705, 715, 947, 971, 630, 667, 687, 779, 781, 782, 544, 552, 619, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 296, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 296, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 296, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 444, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12839)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5681)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 444], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 444], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2277)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1984)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (444, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [687], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 585), items: [562], want_response: true }, ItemSet { range: Range(585, 630), items: [619], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 562), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(562, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 687, 779, 781, 782, 544, 552, 619, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [514, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (687, true), (779, true), (781, true), (782, true), (544, true), (552, true), (619, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(514, true), (528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 444, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 514, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 444, 705, 715, 947, 971, 630, 667, 687, 779, 781, 782, 544, 552, 619, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 444, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 444, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 444, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 518, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12913)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5484)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [518, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [518, 544, 552, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [514, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(518, true), (544, true), (552, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(514, true), (528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 518, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 518, 544, 552, 687, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 481, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12876)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5681)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 481], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 481], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2277)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1984)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (481, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [687], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 585), items: [562], want_response: true }, ItemSet { range: Range(585, 630), items: [619], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 562), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(562, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 687, 779, 781, 782, 544, 552, 619, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [514, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (687, true), (779, true), (781, true), (782, true), (544, true), (552, true), (619, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(514, true), (528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 481, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 514, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 481, 705, 715, 947, 971, 630, 667, 687, 779, 781, 782, 544, 552, 619, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 481, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 481, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 481, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 500, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12895)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5681)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 500], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 500], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2277)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1984)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (500, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [687], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 585), items: [562], want_response: true }, ItemSet { range: Range(585, 630), items: [619], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 562), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(562, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 687, 779, 781, 782, 544, 552, 619, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [514, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (687, true), (779, true), (781, true), (782, true), (544, true), (552, true), (619, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(514, true), (528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 500, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 514, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 500, 705, 715, 947, 971, 630, 667, 687, 779, 781, 782, 544, 552, 619, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 500, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 500, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 500, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 509, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12904)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5681)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 509], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 509], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2277)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1984)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (509, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [687], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 585), items: [562], want_response: true }, ItemSet { range: Range(585, 630), items: [619], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 562), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(562, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 687, 779, 781, 782, 544, 552, 619, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [514, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (687, true), (779, true), (781, true), (782, true), (544, true), (552, true), (619, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(514, true), (528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 509, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 514, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 509, 705, 715, 947, 971, 630, 667, 687, 779, 781, 782, 544, 552, 619, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 509, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 509, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 509, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12909)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5480)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 687, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 512, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12907)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5681)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 512], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 512], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2277)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1984)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (512, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [687], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 585), items: [562], want_response: true }, ItemSet { range: Range(585, 630), items: [619], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 562), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(562, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 687, 779, 781, 782, 544, 552, 619, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [514, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (687, true), (779, true), (781, true), (782, true), (544, true), (552, true), (619, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(514, true), (528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 512, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 514, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 512, 705, 715, 947, 971, 630, 667, 687, 779, 781, 782, 544, 552, 619, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 512, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 512, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 512, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 513, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12908)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5681)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 513], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 513], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2277)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1984)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (513, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [687], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 562), items: [544, 552], want_response: true }, ItemSet { range: Range(562, 585), items: [562], want_response: true }, ItemSet { range: Range(585, 630), items: [619], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 562), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(562, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 687, 779, 781, 782, 544, 552, 619, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [514, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (687, true), (779, true), (781, true), (782, true), (544, true), (552, true), (619, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(514, true), (528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 513, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 514, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 513, 705, 715, 947, 971, 630, 667, 687, 779, 781, 782, 544, 552, 619, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 513, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 513, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 513, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12909)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5480)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 687, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 310, 514, 544, 552, 562, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12600)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5576)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 310], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 310], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2172)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1984)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (310, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [687], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 585), items: [552, 562], want_response: true }, ItemSet { range: Range(585, 630), items: [], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 687, 779, 781, 782, 544, 552, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (687, true), (779, true), (781, true), (782, true), (544, true), (552, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 310, 514, 544, 552, 562, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 310, 705, 715, 947, 971, 630, 667, 687, 779, 781, 782, 544, 552, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 310, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 310, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 310, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 465, 514, 544, 552, 562, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12755)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5576)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 465], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 465], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2172)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1984)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (465, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [687], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 585), items: [552, 562], want_response: true }, ItemSet { range: Range(585, 630), items: [], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 687, 779, 781, 782, 544, 552, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (687, true), (779, true), (781, true), (782, true), (544, true), (552, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 465, 514, 544, 552, 562, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 465, 705, 715, 947, 971, 630, 667, 687, 779, 781, 782, 544, 552, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 465, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 465, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 465, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 542, 544, 552, 562, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12832)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5403)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(3, SumMonoid(1600)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(609, 687), items: [630, 667], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 687), items: [609, 645, 662, 674, 683], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [552, 630, 667, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [514], want_response: false }, ItemSet { range: Range(535, 552), items: [542, 544], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 528, 535, 540, 836, 837], provide: [(552, true), (630, true), (667, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [542, 544, 782, 785, 799, 715, 779, 781], provide: [(585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (528, true), (535, true), (540, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(542, true), (544, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 542, 544, 552, 562, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 528, 535, 540, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 552, 630, 667, 687, 705, 861, 947, 971, 542, 544, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 542, 544, 552, 562, 585, 592, 601, 605, 609, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 542, 544, 552, 562, 585, 592, 601, 605, 609, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 542, 544, 552, 562, 585, 592, 601, 605, 609, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 581, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12871)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5442)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1610)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(562, 609), items: [562, 581], want_response: true }, ItemSet { range: Range(609, 687), items: [630, 667], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 687), items: [609, 645, 662, 674, 683], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [581, 630, 667, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [514], want_response: false }, ItemSet { range: Range(535, 562), items: [544, 552], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 528, 535, 540, 836, 837], provide: [(581, true), (630, true), (667, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [544, 552, 782, 785, 799, 715, 779, 781], provide: [(585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (528, true), (535, true), (540, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(544, true), (552, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 581, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 528, 535, 540, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 581, 630, 667, 687, 705, 861, 947, 971, 544, 552, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 581, 585, 592, 601, 605, 609, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 581, 585, 592, 601, 605, 609, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 581, 585, 592, 601, 605, 609, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 600, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12890)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5461)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1610)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(562, 609), items: [562, 600], want_response: true }, ItemSet { range: Range(609, 687), items: [630, 667], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 687), items: [609, 645, 662, 674, 683], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [600, 630, 667, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [514], want_response: false }, ItemSet { range: Range(535, 562), items: [544, 552], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 528, 535, 540, 836, 837], provide: [(600, true), (630, true), (667, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [544, 552, 782, 785, 799, 715, 779, 781], provide: [(585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (528, true), (535, true), (540, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(544, true), (552, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 600, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 528, 535, 540, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 600, 630, 667, 687, 705, 861, 947, 971, 544, 552, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 600, 601, 605, 609, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 600, 601, 605, 609, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 600, 601, 605, 609, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 610, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12900)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5471)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1907)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(609, 667), items: [610, 630], want_response: true }, ItemSet { range: Range(667, 674), items: [667], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 674), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 610, 630, 667, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (610, true), (630, true), (667, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(609, true), (645, true), (662, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 610, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 687, 705, 861, 947, 971, 782, 785, 799, 610, 630, 667, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 610, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 610, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 610, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 615, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12905)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5476)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1912)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(609, 667), items: [615, 630], want_response: true }, ItemSet { range: Range(667, 674), items: [667], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 674), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 615, 630, 667, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (615, true), (630, true), (667, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(609, true), (645, true), (662, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 615, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 687, 705, 861, 947, 971, 782, 785, 799, 615, 630, 667, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 615, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 615, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 615, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 617, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12907)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5478)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1914)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(609, 667), items: [617, 630], want_response: true }, ItemSet { range: Range(667, 674), items: [667], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 674), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 617, 630, 667, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (617, true), (630, true), (667, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(609, true), (645, true), (662, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 617, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 687, 705, 861, 947, 971, 782, 785, 799, 617, 630, 667, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 617, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 617, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 617, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 618, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12908)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5479)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1915)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(609, 667), items: [618, 630], want_response: true }, ItemSet { range: Range(667, 674), items: [667], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 674), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 618, 630, 667, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (618, true), (630, true), (667, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(609, true), (645, true), (662, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 618, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 687, 705, 861, 947, 971, 782, 785, 799, 618, 630, 667, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 618, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 618, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 618, 630, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12909)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5480)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 687, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 315, 514, 544, 552, 562, 619, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12594)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5565)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 315], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 315], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 619), fp: EncodedCountingMonoid(4, SumMonoid(2172)) }, Fingerprint { range: Range(619, 690), fp: EncodedCountingMonoid(3, SumMonoid(1973)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (315, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 619), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(619, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(619, 674), items: [619, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [687], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 585), items: [552, 562], want_response: true }, ItemSet { range: Range(585, 619), items: [], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 619), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [619, 667, 687, 779, 781, 782, 544, 552, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(619, true), (667, true), (687, true), (779, true), (781, true), (782, true), (544, true), (552, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 315, 514, 544, 552, 562, 619, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 315, 705, 715, 947, 971, 619, 667, 687, 779, 781, 782, 544, 552, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 315, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 315, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 315, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 473, 514, 544, 552, 562, 619, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12752)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5565)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 473], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 473], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 619), fp: EncodedCountingMonoid(4, SumMonoid(2172)) }, Fingerprint { range: Range(619, 690), fp: EncodedCountingMonoid(3, SumMonoid(1973)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (473, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 619), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(619, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(619, 674), items: [619, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [687], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 585), items: [552, 562], want_response: true }, ItemSet { range: Range(585, 619), items: [], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 619), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [619, 667, 687, 779, 781, 782, 544, 552, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(619, true), (667, true), (687, true), (779, true), (781, true), (782, true), (544, true), (552, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 473, 514, 544, 552, 562, 619, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 473, 705, 715, 947, 971, 619, 667, 687, 779, 781, 782, 544, 552, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 473, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 473, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 473, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 619, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(18, SumMonoid(12279)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5565)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 619), fp: EncodedCountingMonoid(4, SumMonoid(2172)) }, Fingerprint { range: Range(619, 690), fp: EncodedCountingMonoid(3, SumMonoid(1973)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 619), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(619, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(619, 674), items: [619, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [687], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 585), items: [552, 562], want_response: true }, ItemSet { range: Range(585, 619), items: [], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 619), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [619, 667, 687, 779, 781, 782, 544, 552, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(619, true), (667, true), (687, true), (779, true), (781, true), (782, true), (544, true), (552, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 619, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 705, 715, 947, 971, 619, 667, 687, 779, 781, 782, 544, 552, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 591, 619, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12870)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5441)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1610)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(562, 609), items: [562, 591], want_response: true }, ItemSet { range: Range(609, 687), items: [619, 667], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 687), items: [609, 645, 662, 674, 683], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [591, 619, 667, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [514], want_response: false }, ItemSet { range: Range(535, 562), items: [544, 552], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 528, 535, 540, 836, 837], provide: [(591, true), (619, true), (667, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [544, 552, 782, 785, 799, 715, 779, 781], provide: [(585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (528, true), (535, true), (540, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(544, true), (552, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 591, 619, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 528, 535, 540, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 591, 619, 667, 687, 705, 861, 947, 971, 544, 552, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 591, 592, 601, 605, 609, 619, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 591, 592, 601, 605, 609, 619, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 591, 592, 601, 605, 609, 619, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 611, 619, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12890)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5461)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1897)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(609, 667), items: [611, 619], want_response: true }, ItemSet { range: Range(667, 674), items: [667], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 674), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 611, 619, 667, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (611, true), (619, true), (667, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(609, true), (645, true), (662, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 611, 619, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 687, 705, 861, 947, 971, 782, 785, 799, 611, 619, 667, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 611, 619, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 611, 619, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 611, 619, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 619, 621, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12900)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5471)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1907)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(609, 667), items: [619, 621], want_response: true }, ItemSet { range: Range(667, 674), items: [667], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 674), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 619, 621, 667, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (619, true), (621, true), (667, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(609, true), (645, true), (662, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 619, 621, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 687, 705, 861, 947, 971, 782, 785, 799, 619, 621, 667, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 621, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 621, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 621, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 619, 626, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12905)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5476)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1912)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(609, 667), items: [619, 626], want_response: true }, ItemSet { range: Range(667, 674), items: [667], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 674), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 619, 626, 667, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (619, true), (626, true), (667, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(609, true), (645, true), (662, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 619, 626, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 687, 705, 861, 947, 971, 782, 785, 799, 619, 626, 667, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 626, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 626, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 626, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 619, 628, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12907)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5478)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1914)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(609, 667), items: [619, 628], want_response: true }, ItemSet { range: Range(667, 674), items: [667], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 674), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 619, 628, 667, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (619, true), (628, true), (667, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(609, true), (645, true), (662, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 619, 628, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 687, 705, 861, 947, 971, 782, 785, 799, 619, 628, 667, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 628, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 628, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 628, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 619, 629, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12908)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5479)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1915)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(609, 667), items: [619, 629], want_response: true }, ItemSet { range: Range(667, 674), items: [667], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 674), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 619, 629, 667, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (619, true), (629, true), (667, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(609, true), (645, true), (662, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 619, 629, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 687, 705, 861, 947, 971, 782, 785, 799, 619, 629, 667, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 629, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 629, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 629, 645, 662, 667, 674, 683, 687, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12909)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5480)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 687), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(687, 715), items: [687, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(687, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 687), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 687, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 687), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (687, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 619, 630, 667, 687, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 687, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 344, 514, 544, 552, 562, 619, 630, 667, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12566)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5508)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 344], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 344], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 619), fp: EncodedCountingMonoid(4, SumMonoid(2172)) }, Fingerprint { range: Range(619, 690), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (344, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 619), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(619, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(619, 674), items: [619, 630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 585), items: [552, 562], want_response: true }, ItemSet { range: Range(585, 619), items: [], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 619), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [619, 630, 667, 779, 781, 782, 544, 552, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(619, true), (630, true), (667, true), (779, true), (781, true), (782, true), (544, true), (552, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 344, 514, 544, 552, 562, 619, 630, 667, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 344, 705, 715, 947, 971, 619, 630, 667, 779, 781, 782, 544, 552, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 344, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 344, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 344, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 516, 544, 552, 562, 619, 630, 667, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12738)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5309)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(3, SumMonoid(1574)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(609, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 715), items: [667, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 715), items: [674, 683, 690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [552, 619, 630, 667, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [514, 516], want_response: false }, ItemSet { range: Range(535, 552), items: [544], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 528, 535, 540, 836, 837], provide: [(552, true), (619, true), (630, true), (667, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [516, 544, 782, 785, 799, 715, 779, 781], provide: [(585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (528, true), (535, true), (540, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(516, true), (544, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 516, 544, 552, 562, 619, 630, 667, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 528, 535, 540, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 552, 619, 630, 667, 705, 861, 947, 971, 516, 544, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 516, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 516, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 516, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 602, 619, 630, 667, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12824)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5395)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 562), fp: EncodedCountingMonoid(3, SumMonoid(1610)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(562, 609), items: [562, 602], want_response: true }, ItemSet { range: Range(609, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 715), items: [667, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(562, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 715), items: [674, 683, 690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 562), items: [535, 540], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [602, 619, 630, 667, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [514], want_response: false }, ItemSet { range: Range(535, 562), items: [544, 552], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 528, 535, 540, 836, 837], provide: [(602, true), (619, true), (630, true), (667, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [544, 552, 782, 785, 799, 715, 779, 781], provide: [(585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (528, true), (535, true), (540, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(544, true), (552, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 602, 619, 630, 667, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 528, 535, 540, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 602, 619, 630, 667, 705, 861, 947, 971, 544, 552, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 602, 605, 609, 619, 630, 645, 662, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 602, 605, 609, 619, 630, 645, 662, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 602, 605, 609, 619, 630, 645, 662, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 619, 630, 645, 667, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12867)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5438)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 667), fp: EncodedCountingMonoid(3, SumMonoid(1894)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(667, 715), items: [667, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(667, 715), items: [674, 683, 690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(609, 662), items: [609, 645], want_response: true }, ItemSet { range: Range(662, 667), items: [662], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 667, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 662), items: [619, 630, 645], want_response: false }, ItemSet { range: Range(662, 667), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 609, 662, 836, 837], provide: [(544, true), (552, true), (667, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [619, 630, 782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (609, true), (662, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 619, 630, 645, 667, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 609, 662, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 667, 705, 861, 947, 971, 619, 630, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 619, 630, 666, 667, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12888)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5459)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 667), fp: EncodedCountingMonoid(3, SumMonoid(1915)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(667, 715), items: [667, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(667, 715), items: [674, 683, 690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(609, 662), items: [609, 645], want_response: true }, ItemSet { range: Range(662, 667), items: [662], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 667, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 662), items: [619, 630], want_response: false }, ItemSet { range: Range(662, 667), items: [666], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 609, 645, 662, 836, 837], provide: [(544, true), (552, true), (667, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [619, 630, 666, 782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (609, true), (645, true), (662, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (666, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 619, 630, 666, 667, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 609, 645, 662, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 667, 705, 861, 947, 971, 619, 630, 666, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 666, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 666, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 666, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 619, 630, 667, 677, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12899)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5470)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 677), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(677, 715), items: [677, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(677, 715), items: [683, 690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(609, 662), items: [609, 645], want_response: true }, ItemSet { range: Range(662, 677), items: [662, 674], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 677, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 662), items: [619, 630], want_response: false }, ItemSet { range: Range(662, 677), items: [667], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 609, 645, 662, 674, 836, 837], provide: [(544, true), (552, true), (677, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [619, 630, 667, 782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (683, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (609, true), (645, true), (662, true), (674, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (667, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 619, 630, 667, 677, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 609, 645, 662, 674, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 677, 705, 861, 947, 971, 619, 630, 667, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 677, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 677, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 677, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 619, 630, 667, 682, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12904)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5475)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 682), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(682, 715), items: [682, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(682, 715), items: [683, 690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(609, 662), items: [609, 645], want_response: true }, ItemSet { range: Range(662, 682), items: [662, 674], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 682, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 662), items: [619, 630], want_response: false }, ItemSet { range: Range(662, 682), items: [667], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 609, 645, 662, 674, 836, 837], provide: [(544, true), (552, true), (682, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [619, 630, 667, 782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (683, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (609, true), (645, true), (662, true), (674, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (667, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 619, 630, 667, 682, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 609, 645, 662, 674, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 682, 705, 861, 947, 971, 619, 630, 667, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 682, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 682, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 682, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 619, 630, 667, 685, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12907)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5478)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 685), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(685, 715), items: [685, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(685, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 685), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 685, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 685), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (685, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 619, 630, 667, 685, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 685, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12906)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5477)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 684, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (684, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 684, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 619, 630, 667, 683, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12905)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5476)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 683), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(683, 715), items: [683, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(683, 715), items: [683, 690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(609, 662), items: [609, 645], want_response: true }, ItemSet { range: Range(662, 683), items: [662, 674], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 662), items: [619, 630], want_response: false }, ItemSet { range: Range(662, 683), items: [667], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 609, 645, 662, 674, 836, 837], provide: [(544, true), (552, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [619, 630, 667, 782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (609, true), (645, true), (662, true), (674, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (667, true), (782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 619, 630, 667, 683, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 609, 645, 662, 674, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 705, 861, 947, 971, 619, 630, 667, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 544, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 544, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12906)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5477)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 544], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [544, 552, 684, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(544, true), (552, true), (684, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 544, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 544, 552, 684, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 272, 514, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12634)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5648)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 272], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 272], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2247)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1981)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (272, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [684], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 562), items: [514, 552], want_response: true }, ItemSet { range: Range(562, 585), items: [562], want_response: true }, ItemSet { range: Range(585, 630), items: [619], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 562), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(562, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 684, 779, 781, 782, 552, 619, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (684, true), (779, true), (781, true), (782, true), (552, true), (619, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 272, 514, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 272, 705, 715, 947, 971, 630, 667, 684, 779, 781, 782, 552, 619, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 272, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 272, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 272, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 408, 514, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12770)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5648)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 408], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 408], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2247)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1981)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (408, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [684], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 562), items: [514, 552], want_response: true }, ItemSet { range: Range(562, 585), items: [562], want_response: true }, ItemSet { range: Range(585, 630), items: [619], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 562), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(562, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 684, 779, 781, 782, 552, 619, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (684, true), (779, true), (781, true), (782, true), (552, true), (619, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 408, 514, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 408, 705, 715, 947, 971, 630, 667, 684, 779, 781, 782, 552, 619, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 408, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 408, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 408, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 476, 514, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12838)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5648)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 476], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 476], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2247)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1981)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (476, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [684], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 562), items: [514, 552], want_response: true }, ItemSet { range: Range(562, 585), items: [562], want_response: true }, ItemSet { range: Range(585, 630), items: [619], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 562), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(562, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 684, 779, 781, 782, 552, 619, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (684, true), (779, true), (781, true), (782, true), (552, true), (619, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 476, 514, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 476, 705, 715, 947, 971, 630, 667, 684, 779, 781, 782, 552, 619, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 476, 479, 488, 492, 514, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 476, 479, 488, 492, 514, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 476, 479, 488, 492, 514, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 510, 514, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12872)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5648)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 510], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 510], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2247)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1981)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (510, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [684], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 562), items: [514, 552], want_response: true }, ItemSet { range: Range(562, 585), items: [562], want_response: true }, ItemSet { range: Range(585, 630), items: [619], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 562), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(562, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 684, 779, 781, 782, 552, 619, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (684, true), (779, true), (781, true), (782, true), (552, true), (619, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 510, 514, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 510, 705, 715, 947, 971, 630, 667, 684, 779, 781, 782, 552, 619, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 510, 514, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 510, 514, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 510, 514, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 527, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12889)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5460)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 527], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [527, 552, 684, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(527, true), (552, true), (684, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 527, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 527, 552, 684, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 519, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12881)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5452)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 519], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [519, 552, 684, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(519, true), (552, true), (684, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 519, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 519, 552, 684, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 515, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12877)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5448)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 515], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [515, 552, 684, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(515, true), (552, true), (684, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 515, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 515, 552, 684, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 513, 514, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12875)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5648)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 513], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 513], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2247)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1981)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (513, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [684], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 562), items: [514, 552], want_response: true }, ItemSet { range: Range(562, 585), items: [562], want_response: true }, ItemSet { range: Range(585, 630), items: [619], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 562), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(562, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 684, 779, 781, 782, 552, 619, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (684, true), (779, true), (781, true), (782, true), (552, true), (619, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 513, 514, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 513, 705, 715, 947, 971, 630, 667, 684, 779, 781, 782, 552, 619, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 513, 514, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 513, 514, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 513, 514, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(18, SumMonoid(12362)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5648)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2247)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1981)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [684], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 562), items: [514, 552], want_response: true }, ItemSet { range: Range(562, 585), items: [562], want_response: true }, ItemSet { range: Range(585, 630), items: [619], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 562), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(562, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 684, 779, 781, 782, 552, 619, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (684, true), (779, true), (781, true), (782, true), (552, true), (619, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 528, 535, 540, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 705, 715, 947, 971, 630, 667, 684, 779, 781, 782, 552, 619, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 515, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12877)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5448)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 515], want_response: true }, ItemSet { range: Range(552, 609), items: [552, 562], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [515, 552, 684, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(515, true), (552, true), (684, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 515, 552, 562, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 515, 552, 684, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 281, 514, 515, 552, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12596)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5601)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 281], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 281], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2200)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1981)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (281, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [684], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 552), items: [514, 515], want_response: true }, ItemSet { range: Range(552, 585), items: [552], want_response: true }, ItemSet { range: Range(585, 630), items: [619], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 684, 779, 781, 782, 515, 552, 619, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [528, 535, 540, 562, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (684, true), (779, true), (781, true), (782, true), (515, true), (552, true), (619, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 281, 514, 515, 552, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 528, 535, 540, 562, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 281, 705, 715, 947, 971, 630, 667, 684, 779, 781, 782, 515, 552, 619, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 281, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 281, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 281, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 422, 514, 515, 552, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12737)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5601)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 422], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 422], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2200)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1981)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (422, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [684], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 552), items: [514, 515], want_response: true }, ItemSet { range: Range(552, 585), items: [552], want_response: true }, ItemSet { range: Range(585, 630), items: [619], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 684, 779, 781, 782, 515, 552, 619, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [528, 535, 540, 562, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (684, true), (779, true), (781, true), (782, true), (515, true), (552, true), (619, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 422, 514, 515, 552, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 528, 535, 540, 562, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 422, 705, 715, 947, 971, 630, 667, 684, 779, 781, 782, 515, 552, 619, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 422, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 422, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 422, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 492, 514, 515, 552, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12807)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5601)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 492], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2200)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1981)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [684], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 552), items: [514, 515], want_response: true }, ItemSet { range: Range(552, 585), items: [552], want_response: true }, ItemSet { range: Range(585, 630), items: [619], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 684, 779, 781, 782, 515, 552, 619, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [528, 535, 540, 562, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (684, true), (779, true), (781, true), (782, true), (515, true), (552, true), (619, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 492, 514, 515, 552, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 528, 535, 540, 562, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 705, 715, 947, 971, 630, 667, 684, 779, 781, 782, 515, 552, 619, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 515, 527, 552, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12842)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5413)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 527), items: [514, 515], want_response: true }, ItemSet { range: Range(527, 609), items: [527, 552], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 527), items: [514], want_response: false }, ItemSet { range: Range(527, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [515, 527, 552, 684, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(515, true), (527, true), (552, true), (684, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 515, 527, 552, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 515, 527, 552, 684, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 510, 514, 515, 552, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12825)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5601)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 510], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 510], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2200)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1981)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (510, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [684], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 552), items: [514, 515], want_response: true }, ItemSet { range: Range(552, 585), items: [552], want_response: true }, ItemSet { range: Range(585, 630), items: [619], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 684, 779, 781, 782, 515, 552, 619, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [528, 535, 540, 562, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (684, true), (779, true), (781, true), (782, true), (515, true), (552, true), (619, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 510, 514, 515, 552, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 528, 535, 540, 562, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 510, 705, 715, 947, 971, 630, 667, 684, 779, 781, 782, 515, 552, 619, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 510, 514, 515, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 510, 514, 515, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 510, 514, 515, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 515, 519, 552, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12834)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5405)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 519), items: [514, 515], want_response: true }, ItemSet { range: Range(519, 609), items: [519, 552], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 519), items: [514], want_response: false }, ItemSet { range: Range(519, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [515, 519, 552, 684, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(515, true), (519, true), (552, true), (684, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 515, 519, 552, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 515, 519, 552, 684, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 515, 552, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(18, SumMonoid(12315)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 779), fp: EncodedCountingMonoid(9, SumMonoid(5601)) }, Fingerprint { range: Range(779, 972), fp: EncodedCountingMonoid(8, SumMonoid(6705)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 690), fp: EncodedCountingMonoid(14, SumMonoid(8335)) }, Fingerprint { range: Range(690, 779), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(779, 916), fp: EncodedCountingMonoid(7, SumMonoid(6045)) }, Fingerprint { range: Range(916, 972), fp: EncodedCountingMonoid(6, SumMonoid(5578)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 630), fp: EncodedCountingMonoid(4, SumMonoid(2200)) }, Fingerprint { range: Range(630, 690), fp: EncodedCountingMonoid(3, SumMonoid(1981)) }, Fingerprint { range: Range(779, 785), fp: EncodedCountingMonoid(3, SumMonoid(2342)) }, Fingerprint { range: Range(785, 916), fp: EncodedCountingMonoid(3, SumMonoid(2445)) }], item_sets: [ItemSet { range: Range(690, 779), items: [705, 715], want_response: true }, ItemSet { range: Range(916, 972), items: [947, 971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 630), fp: EncodedCountingMonoid(5, SumMonoid(2992)) }, Fingerprint { range: Range(785, 879), fp: EncodedCountingMonoid(4, SumMonoid(3372)) }, Fingerprint { range: Range(879, 916), fp: EncodedCountingMonoid(3, SumMonoid(2673)) }], item_sets: [ItemSet { range: Range(690, 779), items: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(916, 972), items: [916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: true }, ItemSet { range: Range(674, 690), items: [674, 683], want_response: true }, ItemSet { range: Range(779, 785), items: [], want_response: true }], wants: [705, 715, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(630, 674), items: [630, 667], want_response: false }, ItemSet { range: Range(674, 690), items: [684], want_response: false }, ItemSet { range: Range(779, 785), items: [779, 781, 782], want_response: false }, ItemSet { range: Range(514, 552), items: [514, 515], want_response: true }, ItemSet { range: Range(552, 585), items: [552], want_response: true }, ItemSet { range: Range(585, 630), items: [619], want_response: true }, ItemSet { range: Range(785, 861), items: [785, 799], want_response: true }, ItemSet { range: Range(861, 879), items: [861], want_response: true }, ItemSet { range: Range(879, 916), items: [], want_response: true }], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683], provide: [(705, true), (715, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 552), items: [514, 528, 535, 540], want_response: false }, ItemSet { range: Range(552, 585), items: [562], want_response: false }, ItemSet { range: Range(585, 630), items: [585, 592, 601, 605, 609], want_response: false }, ItemSet { range: Range(785, 861), items: [836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 879), items: [], want_response: false }, ItemSet { range: Range(879, 916), items: [879, 885, 909], want_response: false }], wants: [630, 667, 684, 779, 781, 782, 515, 552, 619, 785, 799, 861], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [528, 535, 540, 562, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909], provide: [(630, true), (667, true), (684, true), (779, true), (781, true), (782, true), (515, true), (552, true), (619, true), (785, true), (799, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 515, 552, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 916, 918, 924, 925, 926, 969, 645, 662, 674, 683, 528, 535, 540, 562, 585, 592, 601, 605, 609, 836, 837, 842, 857, 879, 885, 909]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 705, 715, 947, 971, 630, 667, 684, 779, 781, 782, 515, 552, 619, 785, 799, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [9, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 781, 782, 785, 799, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 515, 517, 552, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12832)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5403)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 517), items: [514, 515], want_response: true }, ItemSet { range: Range(517, 609), items: [517, 552], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 517), items: [514], want_response: false }, ItemSet { range: Range(517, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [515, 517, 552, 684, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(515, true), (517, true), (552, true), (684, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 515, 517, 552, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 515, 517, 552, 684, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12831)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5402)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(9, SumMonoid(7420)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2275)) }, Fingerprint { range: Range(782, 842), fp: EncodedCountingMonoid(3, SumMonoid(2366)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: true }], wants: [515, 516, 552, 684, 705, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(782, 842), items: [782, 785, 799], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 782), items: [779, 781], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837], provide: [(515, true), (516, true), (552, true), (684, true), (705, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [782, 785, 799, 715, 779, 781], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(782, true), (785, true), (799, true), (715, true), (779, true), (781, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 781, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 836, 837, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 515, 516, 552, 684, 705, 861, 947, 971, 782, 785, 799, 715, 779, 781]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 391, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12441)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5402)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(8, SumMonoid(6639)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 391], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 391], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 785), fp: EncodedCountingMonoid(3, SumMonoid(2276)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(785, 842), items: [785, 799], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (391, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 785), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(785, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 552, 684, 705, 785, 799, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 785), items: [779, 782], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (552, true), (684, true), (705, true), (785, true), (799, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 785), items: [741, 748, 758, 769], want_response: false }], wants: [715, 779, 782], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(715, true), (779, true), (782, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 391, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 391, 515, 516, 552, 684, 705, 785, 799, 861, 947, 971, 715, 779, 782]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 196, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12246)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5402)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(8, SumMonoid(6639)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 196], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 196], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 785), fp: EncodedCountingMonoid(3, SumMonoid(2276)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(785, 842), items: [785, 799], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (196, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 785), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(785, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 552, 684, 705, 785, 799, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 785), items: [779, 782], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (552, true), (684, true), (705, true), (785, true), (799, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 785), items: [741, 748, 758, 769], want_response: false }], wants: [715, 779, 782], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(715, true), (779, true), (782, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 196, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 196, 515, 516, 552, 684, 705, 785, 799, 861, 947, 971, 715, 779, 782]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 98, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12148)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5402)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(8, SumMonoid(6639)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 98], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 98], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 785), fp: EncodedCountingMonoid(3, SumMonoid(2276)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(785, 842), items: [785, 799], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (98, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 785), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(785, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 552, 684, 705, 785, 799, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 785), items: [779, 782], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (552, true), (684, true), (705, true), (785, true), (799, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 785), items: [741, 748, 758, 769], want_response: false }], wants: [715, 779, 782], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(715, true), (779, true), (782, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 98, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 98, 515, 516, 552, 684, 705, 785, 799, 861, 947, 971, 715, 779, 782]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 49, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12099)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5402)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(8, SumMonoid(6639)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 49], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 49], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 785), fp: EncodedCountingMonoid(3, SumMonoid(2276)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(785, 842), items: [785, 799], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (49, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 785), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(785, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 552, 684, 705, 785, 799, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 785), items: [779, 782], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (552, true), (684, true), (705, true), (785, true), (799, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 785), items: [741, 748, 758, 769], want_response: false }], wants: [715, 779, 782], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(715, true), (779, true), (782, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 49, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 49, 515, 516, 552, 684, 705, 785, 799, 861, 947, 971, 715, 779, 782]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 25, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12075)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5402)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(8, SumMonoid(6639)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 25], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 25], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 785), fp: EncodedCountingMonoid(3, SumMonoid(2276)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(785, 842), items: [785, 799], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (25, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 785), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(785, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 552, 684, 705, 785, 799, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 785), items: [779, 782], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (552, true), (684, true), (705, true), (785, true), (799, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 785), items: [741, 748, 758, 769], want_response: false }], wants: [715, 779, 782], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(715, true), (779, true), (782, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 25, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 25, 515, 516, 552, 684, 705, 785, 799, 861, 947, 971, 715, 779, 782]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {9, 13, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(9, 972), fp: EncodedCountingMonoid(19, SumMonoid(12063)) }], item_sets: [ItemSet { range: Range(972, 9), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(9, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 9), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5402)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(8, SumMonoid(6639)) }], item_sets: [ItemSet { range: Range(9, 514), items: [9, 13], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(9, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [9, 13], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 785), fp: EncodedCountingMonoid(3, SumMonoid(2276)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(785, 842), items: [785, 799], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(9, true), (13, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 785), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(785, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 552, 684, 705, 785, 799, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 785), items: [779, 782], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (552, true), (684, true), (705, true), (785, true), (799, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 785), items: [741, 748, 758, 769], want_response: false }], wants: [715, 779, 782], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(715, true), (779, true), (782, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {9, 13, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [9, 13, 515, 516, 552, 684, 705, 785, 799, 861, 947, 971, 715, 779, 782]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {7, 9, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(7, 972), fp: EncodedCountingMonoid(19, SumMonoid(12057)) }], item_sets: [ItemSet { range: Range(972, 7), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(7, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 7), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5402)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(8, SumMonoid(6639)) }], item_sets: [ItemSet { range: Range(7, 514), items: [7, 9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(7, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [7, 9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 785), fp: EncodedCountingMonoid(3, SumMonoid(2276)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(785, 842), items: [785, 799], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(7, true), (9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 785), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(785, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 552, 684, 705, 785, 799, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 785), items: [779, 782], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (552, true), (684, true), (705, true), (785, true), (799, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 785), items: [741, 748, 758, 769], want_response: false }], wants: [715, 779, 782], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(715, true), (779, true), (782, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {7, 9, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [7, 9, 515, 516, 552, 684, 705, 785, 799, 861, 947, 971, 715, 779, 782]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {4, 9, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(4, 972), fp: EncodedCountingMonoid(19, SumMonoid(12054)) }], item_sets: [ItemSet { range: Range(972, 4), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(4, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 4), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5402)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(8, SumMonoid(6639)) }], item_sets: [ItemSet { range: Range(4, 514), items: [4, 9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(4, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [4, 9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 785), fp: EncodedCountingMonoid(3, SumMonoid(2276)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(785, 842), items: [785, 799], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(4, true), (9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 785), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(785, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 552, 684, 705, 785, 799, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 785), items: [779, 782], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (552, true), (684, true), (705, true), (785, true), (799, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 785), items: [741, 748, 758, 769], want_response: false }], wants: [715, 779, 782], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(715, true), (779, true), (782, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {4, 9, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [4, 9, 515, 516, 552, 684, 705, 785, 799, 861, 947, 971, 715, 779, 782]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {2, 9, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(2, 972), fp: EncodedCountingMonoid(19, SumMonoid(12052)) }], item_sets: [ItemSet { range: Range(972, 2), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(2, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 2), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5402)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(8, SumMonoid(6639)) }], item_sets: [ItemSet { range: Range(2, 514), items: [2, 9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(2, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [2, 9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 785), fp: EncodedCountingMonoid(3, SumMonoid(2276)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(785, 842), items: [785, 799], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(2, true), (9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 785), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(785, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 552, 684, 705, 785, 799, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 785), items: [779, 782], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (552, true), (684, true), (705, true), (785, true), (799, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 785), items: [741, 748, 758, 769], want_response: false }], wants: [715, 779, 782], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(715, true), (779, true), (782, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {2, 9, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [2, 9, 515, 516, 552, 684, 705, 785, 799, 861, 947, 971, 715, 779, 782]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 9, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(19, SumMonoid(12051)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5402)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(8, SumMonoid(6639)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 785), fp: EncodedCountingMonoid(3, SumMonoid(2276)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(785, 842), items: [785, 799], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 785), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(785, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 552, 684, 705, 785, 799, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 785), items: [779, 782], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (552, true), (684, true), (705, true), (785, true), (799, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 785), items: [741, 748, 758, 769], want_response: false }], wants: [715, 779, 782], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(715, true), (779, true), (782, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 9, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 9, 515, 516, 552, 684, 705, 785, 799, 861, 947, 971, 715, 779, 782]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 5, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(19, SumMonoid(12047)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5402)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(8, SumMonoid(6639)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 5], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 5], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 785), fp: EncodedCountingMonoid(3, SumMonoid(2276)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(785, 842), items: [785, 799], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (5, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 785), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(785, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 552, 684, 705, 785, 799, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 785), items: [779, 782], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (552, true), (684, true), (705, true), (785, true), (799, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 785), items: [741, 748, 758, 769], want_response: false }], wants: [715, 779, 782], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(715, true), (779, true), (782, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 5, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 5, 515, 516, 552, 684, 705, 785, 799, 861, 947, 971, 715, 779, 782]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 3, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(19, SumMonoid(12045)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5402)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(8, SumMonoid(6639)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 3], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 3], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 785), fp: EncodedCountingMonoid(3, SumMonoid(2276)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(785, 842), items: [785, 799], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (3, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 785), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(785, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 552, 684, 705, 785, 799, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 785), items: [779, 782], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (552, true), (684, true), (705, true), (785, true), (799, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 785), items: [741, 748, 758, 769], want_response: false }], wants: [715, 779, 782], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(715, true), (779, true), (782, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 3, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 3, 515, 516, 552, 684, 705, 785, 799, 861, 947, 971, 715, 779, 782]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 2, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(19, SumMonoid(12044)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5402)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(8, SumMonoid(6639)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 2], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 2], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 785), fp: EncodedCountingMonoid(3, SumMonoid(2276)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(785, 842), items: [785, 799], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (2, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 785), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(785, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 552, 684, 705, 785, 799, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 785), items: [779, 782], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (552, true), (684, true), (705, true), (785, true), (799, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 785), items: [741, 748, 758, 769], want_response: false }], wants: [715, 779, 782], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(715, true), (779, true), (782, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 2, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 2, 515, 516, 552, 684, 705, 785, 799, 861, 947, 971, 715, 779, 782]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(18, SumMonoid(12042)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(9, SumMonoid(5402)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(8, SumMonoid(6639)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 785), fp: EncodedCountingMonoid(3, SumMonoid(2276)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 705], want_response: true }, ItemSet { range: Range(785, 842), items: [785, 799], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 785), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(785, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 552, 684, 705, 785, 799, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 785), items: [779, 782], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (552, true), (684, true), (705, true), (785, true), (799, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 785), items: [741, 748, 758, 769], want_response: false }], wants: [715, 779, 782], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(715, true), (779, true), (782, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 799, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 552, 684, 705, 785, 799, 861, 947, 971, 715, 779, 782]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 400, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(18, SumMonoid(11643)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(8, SumMonoid(4697)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 400], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 400], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(609, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 705), items: [667, 684], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (400, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }], wants: [515, 516, 552, 619, 630, 667, 684, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], provide: [(515, true), (516, true), (552, true), (619, true), (630, true), (667, true), (684, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [705, 715, 779], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 400, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 400, 515, 516, 552, 619, 630, 667, 684, 782, 785, 861, 947, 971, 705, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 400, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 400, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 400, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 552, 600, 619, 630, 667, 684, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(18, SumMonoid(11843)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(9, SumMonoid(5297)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 552), fp: EncodedCountingMonoid(3, SumMonoid(1545)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(552, 609), items: [552, 600], want_response: true }, ItemSet { range: Range(609, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 705), items: [667, 684], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(552, 609), items: [562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(514, 535), items: [514, 528], want_response: true }, ItemSet { range: Range(535, 552), items: [535, 540], want_response: true }], wants: [552, 600, 619, 630, 667, 684, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 535), items: [514, 515, 516], want_response: false }, ItemSet { range: Range(535, 552), items: [], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 528, 535, 540], provide: [(552, true), (600, true), (619, true), (630, true), (667, true), (684, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [515, 516, 705, 715, 779], provide: [(562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (528, true), (535, true), (540, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(515, true), (516, true), (705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 552, 600, 619, 630, 667, 684, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 528, 535, 540, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 552, 600, 619, 630, 667, 684, 782, 785, 861, 947, 971, 515, 516, 705, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 552, 562, 585, 592, 600, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 552, 562, 585, 592, 600, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 552, 562, 585, 592, 600, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 552, 619, 630, 667, 684, 700, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(18, SumMonoid(11943)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(9, SumMonoid(5397)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(684, 705), items: [684, 700], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 705), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 552, 684, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (552, true), (684, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [705, 715, 779], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 552, 619, 630, 667, 684, 700, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 552, 684, 782, 785, 861, 947, 971, 705, 715, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 552, 619, 630, 650, 667, 684, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(18, SumMonoid(11893)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(9, SumMonoid(5347)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 667), fp: EncodedCountingMonoid(3, SumMonoid(1899)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(667, 705), items: [667, 684], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(667, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(609, 662), items: [609, 645], want_response: true }, ItemSet { range: Range(662, 667), items: [662], want_response: true }], wants: [515, 516, 552, 667, 684, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 662), items: [619, 630, 650], want_response: false }, ItemSet { range: Range(662, 667), items: [], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 674, 683, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 609, 645, 662], provide: [(515, true), (516, true), (552, true), (667, true), (684, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [619, 630, 650, 705, 715, 779], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (674, true), (683, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (609, true), (645, true), (662, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (650, true), (705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 552, 619, 630, 650, 667, 684, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 674, 683, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 609, 645, 662, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 552, 667, 684, 782, 785, 861, 947, 971, 619, 630, 650, 705, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 650, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 650, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 650, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 552, 619, 630, 667, 675, 684, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(18, SumMonoid(11918)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(9, SumMonoid(5372)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 675), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(675, 705), items: [675, 684], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(675, 705), items: [683, 690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(609, 662), items: [609, 645], want_response: true }, ItemSet { range: Range(662, 675), items: [662, 674], want_response: true }], wants: [515, 516, 552, 675, 684, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 662), items: [619, 630], want_response: false }, ItemSet { range: Range(662, 675), items: [667], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 683, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 609, 645, 662, 674], provide: [(515, true), (516, true), (552, true), (675, true), (684, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [619, 630, 667, 705, 715, 779], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (683, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (609, true), (645, true), (662, true), (674, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (667, true), (705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 552, 619, 630, 667, 675, 684, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 683, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 609, 645, 662, 674, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 552, 675, 684, 782, 785, 861, 947, 971, 619, 630, 667, 705, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 675, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 675, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 675, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 552, 619, 630, 667, 684, 688, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(18, SumMonoid(11931)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(9, SumMonoid(5385)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(684, 705), items: [684, 688], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 705), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 552, 684, 688, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (552, true), (684, true), (688, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [705, 715, 779], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 552, 619, 630, 667, 684, 688, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 552, 684, 688, 782, 785, 861, 947, 971, 705, 715, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 552, 619, 630, 667, 682, 684, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(18, SumMonoid(11925)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(9, SumMonoid(5379)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 682), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(682, 705), items: [682, 684], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(682, 705), items: [683, 690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(609, 662), items: [609, 645], want_response: true }, ItemSet { range: Range(662, 682), items: [662, 674], want_response: true }], wants: [515, 516, 552, 682, 684, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 662), items: [619, 630], want_response: false }, ItemSet { range: Range(662, 682), items: [667], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 683, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 609, 645, 662, 674], provide: [(515, true), (516, true), (552, true), (682, true), (684, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [619, 630, 667, 705, 715, 779], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (683, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (609, true), (645, true), (662, true), (674, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (667, true), (705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 552, 619, 630, 667, 682, 684, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 683, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 609, 645, 662, 674, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 552, 682, 684, 782, 785, 861, 947, 971, 619, 630, 667, 705, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 682, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 682, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 682, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 552, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(18, SumMonoid(11928)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(9, SumMonoid(5382)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(684, 705), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 705), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 552, 684, 685, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (552, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [705, 715, 779], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 552, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 552, 684, 685, 782, 785, 861, 947, 971, 705, 715, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(17, SumMonoid(11243)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(8, SumMonoid(4697)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(609, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 705), items: [667, 684], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 667), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(667, 705), items: [674, 683, 690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }], wants: [515, 516, 552, 619, 630, 667, 684, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], provide: [(515, true), (516, true), (552, true), (619, true), (630, true), (667, true), (684, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [705, 715, 779], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 552, 619, 630, 667, 684, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 552, 619, 630, 667, 684, 782, 785, 861, 947, 971, 705, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 552, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 690, 694, 700, 705, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 971, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 552, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(18, SumMonoid(11928)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(9, SumMonoid(5382)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 552], want_response: true }, ItemSet { range: Range(684, 705), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 705), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 552, 684, 685, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (552, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [705, 715, 779], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 552, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 552, 684, 685, 782, 785, 861, 947, 971, 705, 715, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 276, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(18, SumMonoid(11652)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 276], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 276], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 705), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (276, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 705), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [705, 715, 779], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 276, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 276, 515, 516, 684, 685, 782, 785, 861, 947, 971, 705, 715, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 138, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(18, SumMonoid(11514)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 138], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 138], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 705), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (138, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 705), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [705, 715, 779], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 138, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 138, 515, 516, 684, 685, 782, 785, 861, 947, 971, 705, 715, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 69, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(18, SumMonoid(11445)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 69], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 69], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 705), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (69, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 705), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [705, 715, 779], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 69, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 69, 515, 516, 684, 685, 782, 785, 861, 947, 971, 705, 715, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 35, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(18, SumMonoid(11411)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 35], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 35], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 705), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (35, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 705), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [705, 715, 779], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 35, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 35, 515, 516, 684, 685, 782, 785, 861, 947, 971, 705, 715, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 18, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(18, SumMonoid(11394)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 18], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 705), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 705), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947, 971], provide: [(42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [705, 715, 779], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 18, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 971, 705, 715, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 9, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(18, SumMonoid(11385)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 9], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 9], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 705), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (9, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 705), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [705, 715, 779], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 9, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 9, 515, 516, 684, 685, 782, 785, 861, 947, 971, 705, 715, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 5, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(18, SumMonoid(11381)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 5], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 5], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 705), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (5, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 705), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [705, 715, 779], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 5, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 5, 515, 516, 684, 685, 782, 785, 861, 947, 971, 705, 715, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 3, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(18, SumMonoid(11379)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 3], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 3], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 705), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (3, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 705), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [705, 715, 779], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 3, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 3, 515, 516, 684, 685, 782, 785, 861, 947, 971, 705, 715, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 2, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(18, SumMonoid(11378)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 2], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 2], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 705), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (2, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 705), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [705, 715, 779], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 2, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 2, 515, 516, 684, 685, 782, 785, 861, 947, 971, 705, 715, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(17, SumMonoid(11376)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 705), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(705, 972), fp: EncodedCountingMonoid(8, SumMonoid(6545)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 705), fp: EncodedCountingMonoid(8, SumMonoid(5357)) }, Fingerprint { range: Range(705, 842), fp: EncodedCountingMonoid(12, SumMonoid(9029)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 782), fp: EncodedCountingMonoid(3, SumMonoid(2199)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 705), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(705, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 705), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(705, 738), items: [705, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(705, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [705, 715, 779], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(705, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 705, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 971, 705, 715, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 353, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(17, SumMonoid(11024)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(7, SumMonoid(5840)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 353], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 353], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 685], want_response: true }, ItemSet { range: Range(715, 782), items: [715, 779], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (353, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(715, 782), items: [717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (715, true), (779, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 353, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 353, 515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 177, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(17, SumMonoid(10848)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(7, SumMonoid(5840)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 177], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 177], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 685], want_response: true }, ItemSet { range: Range(715, 782), items: [715, 779], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (177, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(715, 782), items: [717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (715, true), (779, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 177, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 177, 515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 89, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(17, SumMonoid(10760)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(7, SumMonoid(5840)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 89], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 89], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 685], want_response: true }, ItemSet { range: Range(715, 782), items: [715, 779], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (89, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(715, 782), items: [717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (715, true), (779, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 89, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 89, 515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 45, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(17, SumMonoid(10716)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(7, SumMonoid(5840)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 45], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 45], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 685], want_response: true }, ItemSet { range: Range(715, 782), items: [715, 779], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (45, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(715, 782), items: [717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (715, true), (779, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 45, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 45, 515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 23, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(17, SumMonoid(10694)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(7, SumMonoid(5840)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 23], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 23], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 685], want_response: true }, ItemSet { range: Range(715, 782), items: [715, 779], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (23, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(715, 782), items: [717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (715, true), (779, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 23, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 23, 515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 12, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(17, SumMonoid(10683)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(7, SumMonoid(5840)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 12], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 12], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 685], want_response: true }, ItemSet { range: Range(715, 782), items: [715, 779], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (12, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(715, 782), items: [717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (715, true), (779, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 12, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 12, 515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 6, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(17, SumMonoid(10677)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(7, SumMonoid(5840)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 6], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 6], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 685], want_response: true }, ItemSet { range: Range(715, 782), items: [715, 779], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (6, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(715, 782), items: [717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (715, true), (779, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 6, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 6, 515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 3, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(17, SumMonoid(10674)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(7, SumMonoid(5840)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 3], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 3], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 685], want_response: true }, ItemSet { range: Range(715, 782), items: [715, 779], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (3, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(715, 782), items: [717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (715, true), (779, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 3, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 3, 515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 2, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(17, SumMonoid(10673)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(7, SumMonoid(5840)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1, 2], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1, 2], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 685], want_response: true }, ItemSet { range: Range(715, 782), items: [715, 779], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true), (2, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(715, 782), items: [717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (715, true), (779, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 2, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 2, 515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 972), fp: EncodedCountingMonoid(16, SumMonoid(10671)) }], item_sets: [ItemSet { range: Range(972, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(41, SumMonoid(11014)) }, Fingerprint { range: Range(514, 972), fp: EncodedCountingMonoid(40, SumMonoid(29398)) }], item_sets: [ItemSet { range: Range(972, 1), items: [990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 715), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(715, 972), fp: EncodedCountingMonoid(7, SumMonoid(5840)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1], want_response: true }], wants: [990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 609), fp: EncodedCountingMonoid(9, SumMonoid(5062)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 972), fp: EncodedCountingMonoid(11, SumMonoid(9950)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], want_response: false }], wants: [1], provide: [(990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 685], want_response: true }, ItemSet { range: Range(715, 782), items: [715, 779], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 971), items: [861, 947], want_response: true }, ItemSet { range: Range(971, 972), items: [971], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(715, 782), items: [717, 721, 725, 727, 738, 741, 748, 758, 769], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 971), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969], want_response: false }, ItemSet { range: Range(971, 972), items: [], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }], wants: [528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (715, true), (779, true), (782, true), (785, true), (861, true), (947, true), (971, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947, 971} + [990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 674, 683]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 715, 779, 782, 785, 861, 947, 971]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 486, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10186)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(7, SumMonoid(4145)) }, Fingerprint { range: Range(685, 948), fp: EncodedCountingMonoid(7, SumMonoid(5554)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1, 486], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 836), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(836, 948), fp: EncodedCountingMonoid(12, SumMonoid(10654)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1, 486], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(685, 782), fp: EncodedCountingMonoid(3, SumMonoid(2179)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(782, 836), items: [782, 785], want_response: true }, ItemSet { range: Range(836, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true), (486, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(685, 727), fp: EncodedCountingMonoid(7, SumMonoid(4959)) }, Fingerprint { range: Range(727, 782), fp: EncodedCountingMonoid(6, SumMonoid(4481)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(782, 836), items: [], want_response: false }, ItemSet { range: Range(836, 948), items: [836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }], wants: [515, 516, 619, 630, 667, 684, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 727), items: [685, 715], want_response: true }, ItemSet { range: Range(727, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(515, true), (516, true), (619, true), (630, true), (667, true), (684, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 727), items: [690, 694, 700, 712, 717, 721, 725], want_response: false }, ItemSet { range: Range(727, 782), items: [727, 738, 741, 748, 758, 769], want_response: false }], wants: [685, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(685, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 486, 514, 515, 516, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 486, 515, 516, 619, 630, 667, 684, 782, 785, 861, 947, 685, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 486, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 486, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 486, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 715, 729, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10429)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 715), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(715, 948), fp: EncodedCountingMonoid(7, SumMonoid(5598)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 715), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(715, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 782), fp: EncodedCountingMonoid(3, SumMonoid(2223)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 715), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 715), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [715, 729], want_response: true }, ItemSet { range: Range(741, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [715, 729, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(715, true), (729, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 715, 729, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 715, 729, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 608, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10308)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(8, SumMonoid(4753)) }, Fingerprint { range: Range(685, 948), fp: EncodedCountingMonoid(7, SumMonoid(5554)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 836), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(836, 948), fp: EncodedCountingMonoid(12, SumMonoid(10654)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(601, 667), fp: EncodedCountingMonoid(3, SumMonoid(1857)) }, Fingerprint { range: Range(685, 782), fp: EncodedCountingMonoid(3, SumMonoid(2179)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(782, 836), items: [782, 785], want_response: true }, ItemSet { range: Range(836, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(601, 645), fp: EncodedCountingMonoid(3, SumMonoid(1815)) }, Fingerprint { range: Range(685, 727), fp: EncodedCountingMonoid(7, SumMonoid(4959)) }, Fingerprint { range: Range(727, 782), fp: EncodedCountingMonoid(6, SumMonoid(4481)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(782, 836), items: [], want_response: false }, ItemSet { range: Range(836, 948), items: [836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(645, 667), items: [645, 662], want_response: true }], wants: [515, 516, 667, 684, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(645, 667), items: [], want_response: false }, ItemSet { range: Range(601, 630), items: [608, 619], want_response: true }, ItemSet { range: Range(630, 645), items: [630], want_response: true }, ItemSet { range: Range(685, 727), items: [685, 715], want_response: true }, ItemSet { range: Range(727, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 645, 662], provide: [(515, true), (516, true), (667, true), (684, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(601, 630), items: [601, 605, 609], want_response: false }, ItemSet { range: Range(630, 645), items: [], want_response: false }, ItemSet { range: Range(685, 727), items: [690, 694, 700, 712, 717, 721, 725], want_response: false }, ItemSet { range: Range(727, 782), items: [727, 738, 741, 748, 758, 769], want_response: false }], wants: [608, 619, 630, 685, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (674, true), (683, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (645, true), (662, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [601, 605, 609, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(608, true), (619, true), (630, true), (685, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(601, true), (605, true), (609, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 608, 619, 630, 667, 684, 685, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 645, 662, 601, 605, 609, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 667, 684, 782, 785, 861, 947, 608, 619, 630, 685, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 608, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 608, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 608, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 669, 684, 685, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10369)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(8, SumMonoid(4814)) }, Fingerprint { range: Range(685, 948), fp: EncodedCountingMonoid(7, SumMonoid(5554)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 836), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(836, 948), fp: EncodedCountingMonoid(12, SumMonoid(10654)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(601, 669), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(685, 782), fp: EncodedCountingMonoid(3, SumMonoid(2179)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(669, 685), items: [669, 684], want_response: true }, ItemSet { range: Range(782, 836), items: [782, 785], want_response: true }, ItemSet { range: Range(836, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(601, 645), fp: EncodedCountingMonoid(3, SumMonoid(1815)) }, Fingerprint { range: Range(685, 727), fp: EncodedCountingMonoid(7, SumMonoid(4959)) }, Fingerprint { range: Range(727, 782), fp: EncodedCountingMonoid(6, SumMonoid(4481)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(669, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(782, 836), items: [], want_response: false }, ItemSet { range: Range(836, 948), items: [836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(645, 669), items: [645, 662], want_response: true }], wants: [515, 516, 669, 684, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(645, 669), items: [667], want_response: false }, ItemSet { range: Range(601, 645), items: [619, 630], want_response: true }, ItemSet { range: Range(685, 727), items: [685, 715], want_response: true }, ItemSet { range: Range(727, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 645, 662], provide: [(515, true), (516, true), (669, true), (684, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(601, 645), items: [601, 605, 609], want_response: false }, ItemSet { range: Range(685, 727), items: [690, 694, 700, 712, 717, 721, 725], want_response: false }, ItemSet { range: Range(727, 782), items: [727, 738, 741, 748, 758, 769], want_response: false }], wants: [667, 619, 630, 685, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (674, true), (683, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (645, true), (662, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [601, 605, 609, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(667, true), (619, true), (630, true), (685, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(601, true), (605, true), (609, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 669, 684, 685, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 645, 662, 601, 605, 609, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 669, 684, 782, 785, 861, 947, 667, 619, 630, 685, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 669, 674, 683, 684, 685, 690, 694, 700, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 669, 674, 683, 684, 685, 690, 694, 700, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 669, 674, 683, 684, 685, 690, 694, 700, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 699, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10399)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 699), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(699, 948), fp: EncodedCountingMonoid(7, SumMonoid(5568)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 605), fp: EncodedCountingMonoid(9, SumMonoid(4949)) }, Fingerprint { range: Range(605, 699), fp: EncodedCountingMonoid(8, SumMonoid(5262)) }, Fingerprint { range: Range(699, 837), fp: EncodedCountingMonoid(12, SumMonoid(8892)) }, Fingerprint { range: Range(837, 948), fp: EncodedCountingMonoid(11, SumMonoid(9818)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(605, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(699, 782), fp: EncodedCountingMonoid(3, SumMonoid(2193)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 605), items: [516], want_response: true }, ItemSet { range: Range(684, 699), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 837), items: [782, 785], want_response: true }, ItemSet { range: Range(837, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(605, 662), fp: EncodedCountingMonoid(3, SumMonoid(1859)) }, Fingerprint { range: Range(662, 684), fp: EncodedCountingMonoid(3, SumMonoid(2019)) }, Fingerprint { range: Range(699, 738), fp: EncodedCountingMonoid(6, SumMonoid(4302)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 605), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 699), items: [690, 694], want_response: false }, ItemSet { range: Range(782, 837), items: [836], want_response: false }, ItemSet { range: Range(837, 948), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }], wants: [515, 516, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [619, 630], want_response: true }, ItemSet { range: Range(662, 684), items: [667], want_response: true }, ItemSet { range: Range(699, 738), items: [699, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [605, 609, 645], want_response: false }, ItemSet { range: Range(662, 684), items: [662, 674, 683], want_response: false }, ItemSet { range: Range(699, 738), items: [700, 712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [619, 630, 667, 699, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [605, 609, 645, 662, 674, 683, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (667, true), (699, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 699, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 605, 609, 645, 662, 674, 683, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 619, 630, 667, 699, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 699, 700, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 699, 700, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 699, 700, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 714, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10414)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 714), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(714, 948), fp: EncodedCountingMonoid(7, SumMonoid(5583)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 714), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(714, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(714, 782), fp: EncodedCountingMonoid(3, SumMonoid(2208)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 714), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(714, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 714), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(714, 741), items: [714, 715], want_response: true }, ItemSet { range: Range(741, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(714, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [714, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(714, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 714, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 714, 715, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 707, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10407)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 707), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(707, 948), fp: EncodedCountingMonoid(7, SumMonoid(5576)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 605), fp: EncodedCountingMonoid(9, SumMonoid(4949)) }, Fingerprint { range: Range(605, 707), fp: EncodedCountingMonoid(9, SumMonoid(5962)) }, Fingerprint { range: Range(707, 837), fp: EncodedCountingMonoid(11, SumMonoid(8192)) }, Fingerprint { range: Range(837, 948), fp: EncodedCountingMonoid(11, SumMonoid(9818)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(605, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(707, 782), fp: EncodedCountingMonoid(3, SumMonoid(2201)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 605), items: [516], want_response: true }, ItemSet { range: Range(684, 707), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 837), items: [782, 785], want_response: true }, ItemSet { range: Range(837, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(605, 662), fp: EncodedCountingMonoid(3, SumMonoid(1859)) }, Fingerprint { range: Range(662, 684), fp: EncodedCountingMonoid(3, SumMonoid(2019)) }, Fingerprint { range: Range(707, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 605), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 707), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(782, 837), items: [836], want_response: false }, ItemSet { range: Range(837, 948), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }], wants: [515, 516, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [619, 630], want_response: true }, ItemSet { range: Range(662, 684), items: [667], want_response: true }, ItemSet { range: Range(707, 738), items: [707, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [605, 609, 645], want_response: false }, ItemSet { range: Range(662, 684), items: [662, 674, 683], want_response: false }, ItemSet { range: Range(707, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [619, 630, 667, 707, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [605, 609, 645, 662, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (667, true), (707, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 707, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 605, 609, 645, 662, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 619, 630, 667, 707, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 707, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 707, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 707, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 711, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10411)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 711), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(711, 948), fp: EncodedCountingMonoid(7, SumMonoid(5580)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 605), fp: EncodedCountingMonoid(9, SumMonoid(4949)) }, Fingerprint { range: Range(605, 711), fp: EncodedCountingMonoid(9, SumMonoid(5962)) }, Fingerprint { range: Range(711, 837), fp: EncodedCountingMonoid(11, SumMonoid(8192)) }, Fingerprint { range: Range(837, 948), fp: EncodedCountingMonoid(11, SumMonoid(9818)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(605, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(711, 782), fp: EncodedCountingMonoid(3, SumMonoid(2205)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 605), items: [516], want_response: true }, ItemSet { range: Range(684, 711), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 837), items: [782, 785], want_response: true }, ItemSet { range: Range(837, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(605, 662), fp: EncodedCountingMonoid(3, SumMonoid(1859)) }, Fingerprint { range: Range(662, 684), fp: EncodedCountingMonoid(3, SumMonoid(2019)) }, Fingerprint { range: Range(711, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 605), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 711), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(782, 837), items: [836], want_response: false }, ItemSet { range: Range(837, 948), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }], wants: [515, 516, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [619, 630], want_response: true }, ItemSet { range: Range(662, 684), items: [667], want_response: true }, ItemSet { range: Range(711, 738), items: [711, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [605, 609, 645], want_response: false }, ItemSet { range: Range(662, 684), items: [662, 674, 683], want_response: false }, ItemSet { range: Range(711, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [619, 630, 667, 711, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [605, 609, 645, 662, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (667, true), (711, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 711, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 605, 609, 645, 662, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 619, 630, 667, 711, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 711, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 711, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 711, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10413)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 948), fp: EncodedCountingMonoid(7, SumMonoid(5582)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 782), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 741), items: [713, 715], want_response: true }, ItemSet { range: Range(741, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(713, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [713, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(713, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 713, 715, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 712, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10412)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 712), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(712, 948), fp: EncodedCountingMonoid(7, SumMonoid(5581)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 605), fp: EncodedCountingMonoid(9, SumMonoid(4949)) }, Fingerprint { range: Range(605, 712), fp: EncodedCountingMonoid(9, SumMonoid(5962)) }, Fingerprint { range: Range(712, 837), fp: EncodedCountingMonoid(11, SumMonoid(8192)) }, Fingerprint { range: Range(837, 948), fp: EncodedCountingMonoid(11, SumMonoid(9818)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(605, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(712, 782), fp: EncodedCountingMonoid(3, SumMonoid(2206)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 605), items: [516], want_response: true }, ItemSet { range: Range(684, 712), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 837), items: [782, 785], want_response: true }, ItemSet { range: Range(837, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(605, 662), fp: EncodedCountingMonoid(3, SumMonoid(1859)) }, Fingerprint { range: Range(662, 684), fp: EncodedCountingMonoid(3, SumMonoid(2019)) }, Fingerprint { range: Range(712, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 605), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 712), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(782, 837), items: [836], want_response: false }, ItemSet { range: Range(837, 948), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }], wants: [515, 516, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [619, 630], want_response: true }, ItemSet { range: Range(662, 684), items: [667], want_response: true }, ItemSet { range: Range(712, 738), items: [712, 715], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [605, 609, 645], want_response: false }, ItemSet { range: Range(662, 684), items: [662, 674, 683], want_response: false }, ItemSet { range: Range(712, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [619, 630, 667, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [605, 609, 645, 662, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (667, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 712, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 605, 609, 645, 662, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 619, 630, 667, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10413)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 948), fp: EncodedCountingMonoid(7, SumMonoid(5582)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 782), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 741), items: [713, 715], want_response: true }, ItemSet { range: Range(741, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(713, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [713, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(713, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 713, 715, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 334, 514, 515, 516, 619, 630, 684, 685, 713, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10080)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(7, SumMonoid(4163)) }, Fingerprint { range: Range(713, 948), fp: EncodedCountingMonoid(7, SumMonoid(5582)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1, 334], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1, 334], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(713, 782), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(609, 684), items: [619, 630], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true), (334, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 684), items: [609, 645, 662, 674, 683], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }], wants: [515, 516, 619, 630, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(713, 741), items: [713, 715], want_response: true }, ItemSet { range: Range(741, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(515, true), (516, true), (619, true), (630, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(713, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [713, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(713, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 334, 514, 515, 516, 619, 630, 684, 685, 713, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 334, 515, 516, 619, 630, 684, 685, 782, 785, 861, 947, 713, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 334, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 334, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 334, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 501, 514, 515, 516, 619, 630, 684, 685, 713, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10247)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4664)) }, Fingerprint { range: Range(713, 948), fp: EncodedCountingMonoid(7, SumMonoid(5582)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(713, 782), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }], item_sets: [ItemSet { range: Range(492, 515), items: [501, 514], want_response: true }, ItemSet { range: Range(515, 609), items: [515, 516], want_response: true }, ItemSet { range: Range(609, 684), items: [619, 630], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 515), items: [492, 514], want_response: false }, ItemSet { range: Range(515, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 684), items: [609, 645, 662, 674, 683], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }], wants: [501, 515, 516, 619, 630, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(713, 741), items: [713, 715], want_response: true }, ItemSet { range: Range(741, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(501, true), (515, true), (516, true), (619, true), (630, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(713, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [713, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(713, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 501, 514, 515, 516, 619, 630, 684, 685, 713, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 501, 515, 516, 619, 630, 684, 685, 782, 785, 861, 947, 713, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 501, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 501, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 501, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 584, 619, 630, 684, 685, 713, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10330)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4747)) }, Fingerprint { range: Range(713, 948), fp: EncodedCountingMonoid(7, SumMonoid(5582)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(713, 782), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516, 584], want_response: true }, ItemSet { range: Range(609, 684), items: [619, 630], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(609, 684), items: [609, 645, 662, 674, 683], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }], wants: [515, 516, 584, 619, 630, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(713, 741), items: [713, 715], want_response: true }, ItemSet { range: Range(741, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(515, true), (516, true), (584, true), (619, true), (630, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(713, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [713, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(713, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 584, 619, 630, 684, 685, 713, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 584, 619, 630, 684, 685, 782, 785, 861, 947, 713, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 584, 585, 592, 601, 605, 609, 619, 630, 645, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 584, 585, 592, 601, 605, 609, 619, 630, 645, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 584, 585, 592, 601, 605, 609, 619, 630, 645, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 626, 630, 684, 685, 713, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10372)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4789)) }, Fingerprint { range: Range(713, 948), fp: EncodedCountingMonoid(7, SumMonoid(5582)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1875)) }, Fingerprint { range: Range(713, 782), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(609, 630), items: [619, 626], want_response: true }, ItemSet { range: Range(630, 674), items: [630], want_response: true }, ItemSet { range: Range(713, 741), items: [713, 715], want_response: true }, ItemSet { range: Range(741, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 630), items: [609], want_response: false }, ItemSet { range: Range(630, 674), items: [645, 662], want_response: false }, ItemSet { range: Range(713, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [619, 626, 630, 713, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (626, true), (630, true), (713, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(609, true), (645, true), (662, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 626, 630, 684, 685, 713, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683, 609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 619, 626, 630, 713, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 626, 630, 645, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 626, 630, 645, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 626, 630, 645, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 647, 684, 685, 713, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10393)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4810)) }, Fingerprint { range: Range(713, 948), fp: EncodedCountingMonoid(7, SumMonoid(5582)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1896)) }, Fingerprint { range: Range(713, 782), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(609, 647), items: [619, 630], want_response: true }, ItemSet { range: Range(647, 674), items: [647], want_response: true }, ItemSet { range: Range(713, 741), items: [713, 715], want_response: true }, ItemSet { range: Range(741, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 647), items: [609, 645], want_response: false }, ItemSet { range: Range(647, 674), items: [662], want_response: false }, ItemSet { range: Range(713, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [619, 630, 647, 713, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (647, true), (713, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(609, true), (645, true), (662, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 647, 684, 685, 713, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683, 609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 619, 630, 647, 713, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 647, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 647, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 647, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 657, 684, 685, 713, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10403)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4820)) }, Fingerprint { range: Range(713, 948), fp: EncodedCountingMonoid(7, SumMonoid(5582)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1906)) }, Fingerprint { range: Range(713, 782), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(609, 657), items: [619, 630], want_response: true }, ItemSet { range: Range(657, 674), items: [657], want_response: true }, ItemSet { range: Range(713, 741), items: [713, 715], want_response: true }, ItemSet { range: Range(741, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 657), items: [609, 645], want_response: false }, ItemSet { range: Range(657, 674), items: [662], want_response: false }, ItemSet { range: Range(713, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [619, 630, 657, 713, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (657, true), (713, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(609, true), (645, true), (662, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 657, 684, 685, 713, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683, 609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 619, 630, 657, 713, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 657, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 657, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 657, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 662, 684, 685, 713, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10408)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4825)) }, Fingerprint { range: Range(713, 948), fp: EncodedCountingMonoid(7, SumMonoid(5582)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1911)) }, Fingerprint { range: Range(713, 782), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(609, 662), items: [619, 630], want_response: true }, ItemSet { range: Range(662, 674), items: [662], want_response: true }, ItemSet { range: Range(713, 741), items: [713, 715], want_response: true }, ItemSet { range: Range(741, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 662), items: [609, 645], want_response: false }, ItemSet { range: Range(662, 674), items: [662], want_response: false }, ItemSet { range: Range(713, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [619, 630, 713, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [609, 645, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (713, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(609, true), (645, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 662, 684, 685, 713, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683, 609, 645, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 619, 630, 713, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 665, 684, 685, 713, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10411)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4828)) }, Fingerprint { range: Range(713, 948), fp: EncodedCountingMonoid(7, SumMonoid(5582)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1914)) }, Fingerprint { range: Range(713, 782), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(609, 665), items: [619, 630], want_response: true }, ItemSet { range: Range(665, 674), items: [665], want_response: true }, ItemSet { range: Range(713, 741), items: [713, 715], want_response: true }, ItemSet { range: Range(741, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 665), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(665, 674), items: [], want_response: false }, ItemSet { range: Range(713, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [619, 630, 665, 713, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (665, true), (713, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(609, true), (645, true), (662, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 665, 684, 685, 713, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683, 609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 619, 630, 665, 713, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 665, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 665, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 665, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 666, 684, 685, 713, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10412)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4829)) }, Fingerprint { range: Range(713, 948), fp: EncodedCountingMonoid(7, SumMonoid(5582)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1915)) }, Fingerprint { range: Range(713, 782), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(609, 666), items: [619, 630], want_response: true }, ItemSet { range: Range(666, 674), items: [666], want_response: true }, ItemSet { range: Range(713, 741), items: [713, 715], want_response: true }, ItemSet { range: Range(741, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(609, 666), items: [609, 645, 662], want_response: false }, ItemSet { range: Range(666, 674), items: [], want_response: false }, ItemSet { range: Range(713, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [619, 630, 666, 713, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (666, true), (713, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(609, true), (645, true), (662, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 666, 684, 685, 713, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683, 609, 645, 662, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 619, 630, 666, 713, 715, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 666, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 666, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 666, 674, 683, 684, 685, 690, 694, 700, 712, 713, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 715, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10413)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 948), fp: EncodedCountingMonoid(7, SumMonoid(5582)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 782), fp: EncodedCountingMonoid(3, SumMonoid(2207)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 741), items: [713, 715], want_response: true }, ItemSet { range: Range(741, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(713, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [713, 715, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(713, true), (715, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 715, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 713, 715, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 358, 514, 515, 516, 619, 630, 667, 684, 685, 713, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10056)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(7, SumMonoid(4145)) }, Fingerprint { range: Range(685, 948), fp: EncodedCountingMonoid(7, SumMonoid(5552)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1, 358], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 836), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(836, 948), fp: EncodedCountingMonoid(12, SumMonoid(10654)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1, 358], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(685, 782), fp: EncodedCountingMonoid(3, SumMonoid(2177)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(782, 836), items: [782, 785], want_response: true }, ItemSet { range: Range(836, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true), (358, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(685, 727), fp: EncodedCountingMonoid(7, SumMonoid(4959)) }, Fingerprint { range: Range(727, 782), fp: EncodedCountingMonoid(6, SumMonoid(4481)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(782, 836), items: [], want_response: false }, ItemSet { range: Range(836, 948), items: [836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }], wants: [515, 516, 619, 630, 667, 684, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 727), items: [685, 713], want_response: true }, ItemSet { range: Range(727, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(515, true), (516, true), (619, true), (630, true), (667, true), (684, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 727), items: [690, 694, 700, 712, 717, 721, 725], want_response: false }, ItemSet { range: Range(727, 782), items: [727, 738, 741, 748, 758, 769], want_response: false }], wants: [685, 713, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(685, true), (713, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 358, 514, 515, 516, 619, 630, 667, 684, 685, 713, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 358, 515, 516, 619, 630, 667, 684, 782, 785, 861, 947, 685, 713, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 358, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 358, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 358, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 537, 619, 630, 667, 684, 685, 713, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10235)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(8, SumMonoid(4682)) }, Fingerprint { range: Range(685, 948), fp: EncodedCountingMonoid(7, SumMonoid(5552)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 836), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(836, 948), fp: EncodedCountingMonoid(12, SumMonoid(10654)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(685, 782), fp: EncodedCountingMonoid(3, SumMonoid(2177)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516, 537], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(782, 836), items: [782, 785], want_response: true }, ItemSet { range: Range(836, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(685, 727), fp: EncodedCountingMonoid(7, SumMonoid(4959)) }, Fingerprint { range: Range(727, 782), fp: EncodedCountingMonoid(6, SumMonoid(4481)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(782, 836), items: [], want_response: false }, ItemSet { range: Range(836, 948), items: [836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }], wants: [515, 516, 537, 619, 630, 667, 684, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 727), items: [685, 713], want_response: true }, ItemSet { range: Range(727, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(515, true), (516, true), (537, true), (619, true), (630, true), (667, true), (684, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 727), items: [690, 694, 700, 712, 717, 721, 725], want_response: false }, ItemSet { range: Range(727, 782), items: [727, 738, 741, 748, 758, 769], want_response: false }], wants: [685, 713, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(685, true), (713, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 537, 619, 630, 667, 684, 685, 713, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 537, 619, 630, 667, 684, 782, 785, 861, 947, 685, 713, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 537, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 537, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 537, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 626, 630, 667, 684, 685, 713, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10324)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(8, SumMonoid(4771)) }, Fingerprint { range: Range(685, 948), fp: EncodedCountingMonoid(7, SumMonoid(5552)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 836), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(836, 948), fp: EncodedCountingMonoid(12, SumMonoid(10654)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(601, 667), fp: EncodedCountingMonoid(3, SumMonoid(1875)) }, Fingerprint { range: Range(685, 782), fp: EncodedCountingMonoid(3, SumMonoid(2177)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(782, 836), items: [782, 785], want_response: true }, ItemSet { range: Range(836, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(601, 645), fp: EncodedCountingMonoid(3, SumMonoid(1815)) }, Fingerprint { range: Range(685, 727), fp: EncodedCountingMonoid(7, SumMonoid(4959)) }, Fingerprint { range: Range(727, 782), fp: EncodedCountingMonoid(6, SumMonoid(4481)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(782, 836), items: [], want_response: false }, ItemSet { range: Range(836, 948), items: [836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(645, 667), items: [645, 662], want_response: true }], wants: [515, 516, 667, 684, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(645, 667), items: [], want_response: false }, ItemSet { range: Range(601, 630), items: [619, 626], want_response: true }, ItemSet { range: Range(630, 645), items: [630], want_response: true }, ItemSet { range: Range(685, 727), items: [685, 713], want_response: true }, ItemSet { range: Range(727, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 645, 662], provide: [(515, true), (516, true), (667, true), (684, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(601, 630), items: [601, 605, 609], want_response: false }, ItemSet { range: Range(630, 645), items: [], want_response: false }, ItemSet { range: Range(685, 727), items: [690, 694, 700, 712, 717, 721, 725], want_response: false }, ItemSet { range: Range(727, 782), items: [727, 738, 741, 748, 758, 769], want_response: false }], wants: [619, 626, 630, 685, 713, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (674, true), (683, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (645, true), (662, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [601, 605, 609, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (626, true), (630, true), (685, true), (713, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(601, true), (605, true), (609, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 626, 630, 667, 684, 685, 713, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 645, 662, 601, 605, 609, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 667, 684, 782, 785, 861, 947, 619, 626, 630, 685, 713, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 626, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 626, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 626, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 671, 684, 685, 713, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10369)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(8, SumMonoid(4816)) }, Fingerprint { range: Range(685, 948), fp: EncodedCountingMonoid(7, SumMonoid(5552)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 836), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(836, 948), fp: EncodedCountingMonoid(12, SumMonoid(10654)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(601, 671), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(685, 782), fp: EncodedCountingMonoid(3, SumMonoid(2177)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(671, 685), items: [671, 684], want_response: true }, ItemSet { range: Range(782, 836), items: [782, 785], want_response: true }, ItemSet { range: Range(836, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(601, 645), fp: EncodedCountingMonoid(3, SumMonoid(1815)) }, Fingerprint { range: Range(685, 727), fp: EncodedCountingMonoid(7, SumMonoid(4959)) }, Fingerprint { range: Range(727, 782), fp: EncodedCountingMonoid(6, SumMonoid(4481)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(671, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(782, 836), items: [], want_response: false }, ItemSet { range: Range(836, 948), items: [836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(645, 671), items: [645, 662], want_response: true }], wants: [515, 516, 671, 684, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(645, 671), items: [667], want_response: false }, ItemSet { range: Range(601, 645), items: [619, 630], want_response: true }, ItemSet { range: Range(685, 727), items: [685, 713], want_response: true }, ItemSet { range: Range(727, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 645, 662], provide: [(515, true), (516, true), (671, true), (684, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(601, 645), items: [601, 605, 609], want_response: false }, ItemSet { range: Range(685, 727), items: [690, 694, 700, 712, 717, 721, 725], want_response: false }, ItemSet { range: Range(727, 782), items: [727, 738, 741, 748, 758, 769], want_response: false }], wants: [667, 619, 630, 685, 713, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (674, true), (683, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (645, true), (662, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [601, 605, 609, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(667, true), (619, true), (630, true), (685, true), (713, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(601, true), (605, true), (609, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 671, 684, 685, 713, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 645, 662, 601, 605, 609, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 671, 684, 782, 785, 861, 947, 667, 619, 630, 685, 713, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 671, 674, 683, 684, 685, 690, 694, 700, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 671, 674, 683, 684, 685, 690, 694, 700, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 671, 674, 683, 684, 685, 690, 694, 700, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 693, 713, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10391)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 693), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(693, 948), fp: EncodedCountingMonoid(7, SumMonoid(5560)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 693), fp: EncodedCountingMonoid(8, SumMonoid(5169)) }, Fingerprint { range: Range(693, 836), fp: EncodedCountingMonoid(12, SumMonoid(8750)) }, Fingerprint { range: Range(836, 948), fp: EncodedCountingMonoid(12, SumMonoid(10654)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(601, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(693, 782), fp: EncodedCountingMonoid(3, SumMonoid(2185)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(684, 693), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 836), items: [782, 785], want_response: true }, ItemSet { range: Range(836, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(601, 662), fp: EncodedCountingMonoid(4, SumMonoid(2460)) }, Fingerprint { range: Range(662, 684), fp: EncodedCountingMonoid(3, SumMonoid(2019)) }, Fingerprint { range: Range(693, 727), fp: EncodedCountingMonoid(6, SumMonoid(4269)) }, Fingerprint { range: Range(727, 782), fp: EncodedCountingMonoid(6, SumMonoid(4481)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(684, 693), items: [690], want_response: false }, ItemSet { range: Range(782, 836), items: [], want_response: false }, ItemSet { range: Range(836, 948), items: [836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }], wants: [515, 516, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(601, 662), items: [619, 630], want_response: true }, ItemSet { range: Range(662, 684), items: [667], want_response: true }, ItemSet { range: Range(693, 727), items: [693, 713], want_response: true }, ItemSet { range: Range(727, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 690, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(601, 662), items: [601, 605, 609, 645], want_response: false }, ItemSet { range: Range(662, 684), items: [662, 674, 683], want_response: false }, ItemSet { range: Range(693, 727), items: [694, 700, 712, 717, 721, 725], want_response: false }, ItemSet { range: Range(727, 782), items: [727, 738, 741, 748, 758, 769], want_response: false }], wants: [619, 630, 667, 693, 713, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (690, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [601, 605, 609, 645, 662, 674, 683, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (667, true), (693, true), (713, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 693, 713, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 690, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 601, 605, 609, 645, 662, 674, 683, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 619, 630, 667, 693, 713, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 693, 694, 700, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 693, 694, 700, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 693, 694, 700, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 704, 713, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10402)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 704), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(704, 948), fp: EncodedCountingMonoid(7, SumMonoid(5571)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 605), fp: EncodedCountingMonoid(9, SumMonoid(4949)) }, Fingerprint { range: Range(605, 704), fp: EncodedCountingMonoid(9, SumMonoid(5962)) }, Fingerprint { range: Range(704, 837), fp: EncodedCountingMonoid(11, SumMonoid(8192)) }, Fingerprint { range: Range(837, 948), fp: EncodedCountingMonoid(11, SumMonoid(9818)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(605, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(704, 782), fp: EncodedCountingMonoid(3, SumMonoid(2196)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 605), items: [516], want_response: true }, ItemSet { range: Range(684, 704), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 837), items: [782, 785], want_response: true }, ItemSet { range: Range(837, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(605, 662), fp: EncodedCountingMonoid(3, SumMonoid(1859)) }, Fingerprint { range: Range(662, 684), fp: EncodedCountingMonoid(3, SumMonoid(2019)) }, Fingerprint { range: Range(704, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 605), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 704), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(782, 837), items: [836], want_response: false }, ItemSet { range: Range(837, 948), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }], wants: [515, 516, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [619, 630], want_response: true }, ItemSet { range: Range(662, 684), items: [667], want_response: true }, ItemSet { range: Range(704, 738), items: [704, 713], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [605, 609, 645], want_response: false }, ItemSet { range: Range(662, 684), items: [662, 674, 683], want_response: false }, ItemSet { range: Range(704, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [619, 630, 667, 704, 713, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [605, 609, 645, 662, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (667, true), (704, true), (713, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 704, 713, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 605, 609, 645, 662, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 619, 630, 667, 704, 713, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 704, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 704, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 704, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 710, 713, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10408)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 710), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(710, 948), fp: EncodedCountingMonoid(7, SumMonoid(5577)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 605), fp: EncodedCountingMonoid(9, SumMonoid(4949)) }, Fingerprint { range: Range(605, 710), fp: EncodedCountingMonoid(9, SumMonoid(5962)) }, Fingerprint { range: Range(710, 837), fp: EncodedCountingMonoid(11, SumMonoid(8192)) }, Fingerprint { range: Range(837, 948), fp: EncodedCountingMonoid(11, SumMonoid(9818)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(605, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(710, 782), fp: EncodedCountingMonoid(3, SumMonoid(2202)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 605), items: [516], want_response: true }, ItemSet { range: Range(684, 710), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 837), items: [782, 785], want_response: true }, ItemSet { range: Range(837, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(605, 662), fp: EncodedCountingMonoid(3, SumMonoid(1859)) }, Fingerprint { range: Range(662, 684), fp: EncodedCountingMonoid(3, SumMonoid(2019)) }, Fingerprint { range: Range(710, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 782), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 605), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 710), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(782, 837), items: [836], want_response: false }, ItemSet { range: Range(837, 948), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }], wants: [515, 516, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [619, 630], want_response: true }, ItemSet { range: Range(662, 684), items: [667], want_response: true }, ItemSet { range: Range(710, 738), items: [710, 713], want_response: true }, ItemSet { range: Range(738, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [605, 609, 645], want_response: false }, ItemSet { range: Range(662, 684), items: [662, 674, 683], want_response: false }, ItemSet { range: Range(710, 738), items: [712, 717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 782), items: [738, 741, 748, 758, 769], want_response: false }], wants: [619, 630, 667, 710, 713, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [605, 609, 645, 662, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (667, true), (710, true), (713, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 710, 713, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 605, 609, 645, 662, 674, 683, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 619, 630, 667, 710, 713, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 710, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 710, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 710, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(15, SumMonoid(9698)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(7, SumMonoid(4145)) }, Fingerprint { range: Range(685, 948), fp: EncodedCountingMonoid(7, SumMonoid(5552)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 836), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(836, 948), fp: EncodedCountingMonoid(12, SumMonoid(10654)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(685, 782), fp: EncodedCountingMonoid(3, SumMonoid(2177)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(782, 836), items: [782, 785], want_response: true }, ItemSet { range: Range(836, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(685, 727), fp: EncodedCountingMonoid(7, SumMonoid(4959)) }, Fingerprint { range: Range(727, 782), fp: EncodedCountingMonoid(6, SumMonoid(4481)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(782, 836), items: [], want_response: false }, ItemSet { range: Range(836, 948), items: [836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }], wants: [515, 516, 619, 630, 667, 684, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 727), items: [685, 713], want_response: true }, ItemSet { range: Range(727, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(515, true), (516, true), (619, true), (630, true), (667, true), (684, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 727), items: [690, 694, 700, 712, 717, 721, 725], want_response: false }, ItemSet { range: Range(727, 782), items: [727, 738, 741, 748, 758, 769], want_response: false }], wants: [685, 713, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(685, true), (713, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 619, 630, 667, 684, 782, 785, 861, 947, 685, 713, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 785, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 779, 782, 785, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10412)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 948), fp: EncodedCountingMonoid(7, SumMonoid(5581)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 782), fp: EncodedCountingMonoid(3, SumMonoid(2206)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(782, 842), items: [782, 785], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 782), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(782, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 782, 785, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 741), items: [713, 714], want_response: true }, ItemSet { range: Range(741, 782), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (782, true), (785, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(713, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 782), items: [741, 748, 758, 769], want_response: false }], wants: [713, 714, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(713, true), (714, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 779, 782, 785, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 782, 785, 861, 947, 713, 714, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 393, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 779, 782, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10020)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(7, SumMonoid(4145)) }, Fingerprint { range: Range(685, 948), fp: EncodedCountingMonoid(7, SumMonoid(5481)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1, 393], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 836), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(836, 948), fp: EncodedCountingMonoid(12, SumMonoid(10654)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1, 393], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(685, 779), fp: EncodedCountingMonoid(3, SumMonoid(2112)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(779, 836), items: [779, 782], want_response: true }, ItemSet { range: Range(836, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true), (393, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(685, 727), fp: EncodedCountingMonoid(7, SumMonoid(4959)) }, Fingerprint { range: Range(727, 779), fp: EncodedCountingMonoid(6, SumMonoid(4481)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(779, 836), items: [], want_response: false }, ItemSet { range: Range(836, 948), items: [836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }], wants: [515, 516, 619, 630, 667, 684, 779, 782, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 714), items: [685, 713], want_response: true }, ItemSet { range: Range(714, 727), items: [714], want_response: true }, ItemSet { range: Range(727, 779), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(515, true), (516, true), (619, true), (630, true), (667, true), (684, true), (779, true), (782, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 714), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(714, 727), items: [717, 721, 725], want_response: false }, ItemSet { range: Range(727, 779), items: [727, 738, 741, 748, 758, 769], want_response: false }], wants: [685, 713, 714], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(685, true), (713, true), (714, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 393, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 779, 782, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 393, 515, 516, 619, 630, 667, 684, 779, 782, 861, 947, 685, 713, 714]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 393, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 393, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 393, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 589, 619, 630, 667, 684, 685, 713, 714, 779, 782, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10216)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(8, SumMonoid(4734)) }, Fingerprint { range: Range(685, 948), fp: EncodedCountingMonoid(7, SumMonoid(5481)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 836), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(836, 948), fp: EncodedCountingMonoid(12, SumMonoid(10654)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(685, 779), fp: EncodedCountingMonoid(3, SumMonoid(2112)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516, 589], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(779, 836), items: [779, 782], want_response: true }, ItemSet { range: Range(836, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(685, 727), fp: EncodedCountingMonoid(7, SumMonoid(4959)) }, Fingerprint { range: Range(727, 779), fp: EncodedCountingMonoid(6, SumMonoid(4481)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(779, 836), items: [], want_response: false }, ItemSet { range: Range(836, 948), items: [836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }], wants: [515, 516, 589, 619, 630, 667, 684, 779, 782, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 714), items: [685, 713], want_response: true }, ItemSet { range: Range(714, 727), items: [714], want_response: true }, ItemSet { range: Range(727, 779), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(515, true), (516, true), (589, true), (619, true), (630, true), (667, true), (684, true), (779, true), (782, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 714), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(714, 727), items: [717, 721, 725], want_response: false }, ItemSet { range: Range(727, 779), items: [727, 738, 741, 748, 758, 769], want_response: false }], wants: [685, 713, 714], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(685, true), (713, true), (714, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 589, 619, 630, 667, 684, 685, 713, 714, 779, 782, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 589, 619, 630, 667, 684, 779, 782, 861, 947, 685, 713, 714]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 589, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 589, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 589, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 687, 713, 714, 779, 782, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10314)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 687), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(687, 948), fp: EncodedCountingMonoid(7, SumMonoid(5483)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 687), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(687, 836), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(836, 948), fp: EncodedCountingMonoid(12, SumMonoid(10654)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(601, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(687, 779), fp: EncodedCountingMonoid(3, SumMonoid(2114)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(684, 687), items: [684, 685], want_response: true }, ItemSet { range: Range(779, 836), items: [779, 782], want_response: true }, ItemSet { range: Range(836, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(601, 662), fp: EncodedCountingMonoid(4, SumMonoid(2460)) }, Fingerprint { range: Range(662, 684), fp: EncodedCountingMonoid(3, SumMonoid(2019)) }, Fingerprint { range: Range(687, 727), fp: EncodedCountingMonoid(7, SumMonoid(4959)) }, Fingerprint { range: Range(727, 779), fp: EncodedCountingMonoid(6, SumMonoid(4481)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(684, 687), items: [], want_response: false }, ItemSet { range: Range(779, 836), items: [], want_response: false }, ItemSet { range: Range(836, 948), items: [836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }], wants: [515, 516, 684, 685, 779, 782, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(601, 662), items: [619, 630], want_response: true }, ItemSet { range: Range(662, 684), items: [667], want_response: true }, ItemSet { range: Range(687, 714), items: [687, 713], want_response: true }, ItemSet { range: Range(714, 727), items: [714], want_response: true }, ItemSet { range: Range(727, 779), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(515, true), (516, true), (684, true), (685, true), (779, true), (782, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(601, 662), items: [601, 605, 609, 645], want_response: false }, ItemSet { range: Range(662, 684), items: [662, 674, 683], want_response: false }, ItemSet { range: Range(687, 714), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(714, 727), items: [717, 721, 725], want_response: false }, ItemSet { range: Range(727, 779), items: [727, 738, 741, 748, 758, 769], want_response: false }], wants: [619, 630, 667, 687, 713, 714], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (667, true), (687, true), (713, true), (714, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 687, 713, 714, 779, 782, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 779, 782, 861, 947, 619, 630, 667, 687, 713, 714]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 687, 690, 694, 700, 712, 713, 714, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 687, 690, 694, 700, 712, 713, 714, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 687, 690, 694, 700, 712, 713, 714, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 736, 779, 782, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10363)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 948), fp: EncodedCountingMonoid(7, SumMonoid(5532)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 779), fp: EncodedCountingMonoid(3, SumMonoid(2163)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(779, 842), items: [779, 782], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 779), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(779, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 779, 782, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 736), items: [713, 714], want_response: true }, ItemSet { range: Range(736, 741), items: [736], want_response: true }, ItemSet { range: Range(741, 779), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (779, true), (782, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(713, 736), items: [717, 721, 725, 727], want_response: false }, ItemSet { range: Range(736, 741), items: [738], want_response: false }, ItemSet { range: Range(741, 779), items: [741, 748, 758, 769], want_response: false }], wants: [713, 714, 736], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(713, true), (714, true), (736, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 736, 779, 782, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 779, 782, 861, 947, 713, 714, 736]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 712, 713, 714, 779, 782, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10339)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 712), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(712, 948), fp: EncodedCountingMonoid(7, SumMonoid(5508)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 605), fp: EncodedCountingMonoid(9, SumMonoid(4949)) }, Fingerprint { range: Range(605, 712), fp: EncodedCountingMonoid(9, SumMonoid(5962)) }, Fingerprint { range: Range(712, 837), fp: EncodedCountingMonoid(11, SumMonoid(8192)) }, Fingerprint { range: Range(837, 948), fp: EncodedCountingMonoid(11, SumMonoid(9818)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(605, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(712, 779), fp: EncodedCountingMonoid(3, SumMonoid(2139)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 605), items: [516], want_response: true }, ItemSet { range: Range(684, 712), items: [684, 685], want_response: true }, ItemSet { range: Range(779, 837), items: [779, 782], want_response: true }, ItemSet { range: Range(837, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(605, 662), fp: EncodedCountingMonoid(3, SumMonoid(1859)) }, Fingerprint { range: Range(662, 684), fp: EncodedCountingMonoid(3, SumMonoid(2019)) }, Fingerprint { range: Range(712, 738), fp: EncodedCountingMonoid(5, SumMonoid(3602)) }, Fingerprint { range: Range(738, 779), fp: EncodedCountingMonoid(5, SumMonoid(3754)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 605), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 712), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(779, 837), items: [836], want_response: false }, ItemSet { range: Range(837, 948), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }], wants: [515, 516, 684, 685, 779, 782, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [619, 630], want_response: true }, ItemSet { range: Range(662, 684), items: [667], want_response: true }, ItemSet { range: Range(712, 714), items: [712, 713], want_response: true }, ItemSet { range: Range(714, 738), items: [714], want_response: true }, ItemSet { range: Range(738, 779), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(515, true), (516, true), (684, true), (685, true), (779, true), (782, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [605, 609, 645], want_response: false }, ItemSet { range: Range(662, 684), items: [662, 674, 683], want_response: false }, ItemSet { range: Range(712, 714), items: [712], want_response: false }, ItemSet { range: Range(714, 738), items: [717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 779), items: [738, 741, 748, 758, 769], want_response: false }], wants: [619, 630, 667, 713, 714], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (700, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [605, 609, 645, 662, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (667, true), (713, true), (714, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 712, 713, 714, 779, 782, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 605, 609, 645, 662, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 779, 782, 861, 947, 619, 630, 667, 713, 714]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 724, 779, 782, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10351)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 948), fp: EncodedCountingMonoid(7, SumMonoid(5520)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 779), fp: EncodedCountingMonoid(3, SumMonoid(2151)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(779, 842), items: [779, 782], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 779), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(779, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 779, 782, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 724), items: [713, 714], want_response: true }, ItemSet { range: Range(724, 741), items: [724], want_response: true }, ItemSet { range: Range(741, 779), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (779, true), (782, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(713, 724), items: [717, 721], want_response: false }, ItemSet { range: Range(724, 741), items: [725, 727, 738], want_response: false }, ItemSet { range: Range(741, 779), items: [741, 748, 758, 769], want_response: false }], wants: [713, 714, 724], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(713, true), (714, true), (724, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 724, 779, 782, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 779, 782, 861, 947, 713, 714, 724]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 718, 779, 782, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10345)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 948), fp: EncodedCountingMonoid(7, SumMonoid(5514)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 779), fp: EncodedCountingMonoid(3, SumMonoid(2145)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(779, 842), items: [779, 782], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 779), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(779, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 779, 782, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 718), items: [713, 714], want_response: true }, ItemSet { range: Range(718, 741), items: [718], want_response: true }, ItemSet { range: Range(741, 779), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (779, true), (782, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(713, 718), items: [717], want_response: false }, ItemSet { range: Range(718, 741), items: [721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 779), items: [741, 748, 758, 769], want_response: false }], wants: [713, 714, 718], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(713, true), (714, true), (718, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 718, 779, 782, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 779, 782, 861, 947, 713, 714, 718]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10342)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 948), fp: EncodedCountingMonoid(7, SumMonoid(5511)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 779), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(779, 842), items: [779, 782], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 779), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(779, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 779, 782, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 715), items: [713, 714], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 779), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (779, true), (782, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(713, 715), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 779), items: [741, 748, 758, 769], want_response: false }], wants: [713, 714, 715], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(713, true), (714, true), (715, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 779, 782, 861, 947, 713, 714, 715]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 779, 782, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(15, SumMonoid(9627)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(7, SumMonoid(4145)) }, Fingerprint { range: Range(685, 948), fp: EncodedCountingMonoid(7, SumMonoid(5481)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 836), fp: EncodedCountingMonoid(13, SumMonoid(9440)) }, Fingerprint { range: Range(836, 948), fp: EncodedCountingMonoid(12, SumMonoid(10654)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(685, 779), fp: EncodedCountingMonoid(3, SumMonoid(2112)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(779, 836), items: [779, 782], want_response: true }, ItemSet { range: Range(836, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(685, 727), fp: EncodedCountingMonoid(7, SumMonoid(4959)) }, Fingerprint { range: Range(727, 779), fp: EncodedCountingMonoid(6, SumMonoid(4481)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(779, 836), items: [], want_response: false }, ItemSet { range: Range(836, 948), items: [836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }], wants: [515, 516, 619, 630, 667, 684, 779, 782, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 714), items: [685, 713], want_response: true }, ItemSet { range: Range(714, 727), items: [714], want_response: true }, ItemSet { range: Range(727, 779), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926], provide: [(515, true), (516, true), (619, true), (630, true), (667, true), (684, true), (779, true), (782, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 714), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(714, 727), items: [717, 721, 725], want_response: false }, ItemSet { range: Range(727, 779), items: [727, 738, 741, 748, 758, 769], want_response: false }], wants: [685, 713, 714], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(685, true), (713, true), (714, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 779, 782, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 619, 630, 667, 684, 779, 782, 861, 947, 685, 713, 714]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 947, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861, 947}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 948), fp: EncodedCountingMonoid(16, SumMonoid(10342)) }], item_sets: [ItemSet { range: Range(948, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 948), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(948, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 948), fp: EncodedCountingMonoid(7, SumMonoid(5511)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 948), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 779), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(779, 842), items: [779, 782], want_response: true }, ItemSet { range: Range(842, 948), items: [861, 947], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 779), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(779, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 948), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 779, 782, 861, 947], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 715), items: [713, 714], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 779), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (779, true), (782, true), (861, true), (947, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(713, 715), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 779), items: [741, 748, 758, 769], want_response: false }], wants: [713, 714, 715], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(713, true), (714, true), (715, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861, 947} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 779, 782, 861, 947, 713, 714, 715]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 474, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 862), fp: EncodedCountingMonoid(16, SumMonoid(9869)) }], item_sets: [ItemSet { range: Range(862, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 455), fp: EncodedCountingMonoid(36, SumMonoid(8641)) }, Fingerprint { range: Range(455, 862), fp: EncodedCountingMonoid(36, SumMonoid(23520)) }], item_sets: [ItemSet { range: Range(862, 1), items: [879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(455, 685), fp: EncodedCountingMonoid(8, SumMonoid(4619)) }, Fingerprint { range: Range(685, 862), fp: EncodedCountingMonoid(7, SumMonoid(5249)) }], item_sets: [ItemSet { range: Range(1, 455), items: [1], want_response: true }], wants: [879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(455, 585), fp: EncodedCountingMonoid(10, SumMonoid(5052)) }, Fingerprint { range: Range(585, 685), fp: EncodedCountingMonoid(9, SumMonoid(5656)) }, Fingerprint { range: Range(685, 741), fp: EncodedCountingMonoid(9, SumMonoid(6424)) }, Fingerprint { range: Range(741, 862), fp: EncodedCountingMonoid(8, SumMonoid(6388)) }], item_sets: [ItemSet { range: Range(1, 455), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450], want_response: false }], wants: [1], provide: [(879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(455, 515), items: [474, 514], want_response: true }, ItemSet { range: Range(515, 585), items: [515, 516], want_response: true }, ItemSet { range: Range(585, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(685, 714), items: [685, 713], want_response: true }, ItemSet { range: Range(714, 741), items: [714, 715], want_response: true }, ItemSet { range: Range(741, 861), items: [779, 782], want_response: true }, ItemSet { range: Range(861, 862), items: [861], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(455, 515), items: [455, 459, 479, 488, 492, 514], want_response: false }, ItemSet { range: Range(515, 585), items: [528, 535, 540, 562], want_response: false }, ItemSet { range: Range(585, 667), items: [585, 592, 601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(685, 714), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(714, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 861), items: [741, 748, 758, 769, 836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 862), items: [], want_response: false }], wants: [474, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857], provide: [(474, true), (515, true), (516, true), (619, true), (630, true), (667, true), (684, true), (685, true), (713, true), (714, true), (715, true), (779, true), (782, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(455, true), (459, true), (479, true), (488, true), (492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 474, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861} + [879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 474, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 474, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 474, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 474, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 711, 713, 714, 715, 779, 782, 861}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 862), fp: EncodedCountingMonoid(16, SumMonoid(10106)) }], item_sets: [ItemSet { range: Range(862, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 455), fp: EncodedCountingMonoid(36, SumMonoid(8641)) }, Fingerprint { range: Range(455, 862), fp: EncodedCountingMonoid(36, SumMonoid(23520)) }], item_sets: [ItemSet { range: Range(862, 1), items: [879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(455, 711), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(711, 862), fp: EncodedCountingMonoid(7, SumMonoid(5275)) }], item_sets: [ItemSet { range: Range(1, 455), items: [1], want_response: true }], wants: [879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(455, 592), fp: EncodedCountingMonoid(11, SumMonoid(5637)) }, Fingerprint { range: Range(592, 711), fp: EncodedCountingMonoid(11, SumMonoid(7155)) }, Fingerprint { range: Range(711, 748), fp: EncodedCountingMonoid(7, SumMonoid(5081)) }, Fingerprint { range: Range(748, 862), fp: EncodedCountingMonoid(7, SumMonoid(5647)) }], item_sets: [ItemSet { range: Range(1, 455), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450], want_response: false }], wants: [1], provide: [(879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(592, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(455, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 592), items: [516], want_response: true }, ItemSet { range: Range(684, 711), items: [684, 685], want_response: true }, ItemSet { range: Range(711, 714), items: [711, 713], want_response: true }, ItemSet { range: Range(714, 748), items: [714, 715], want_response: true }, ItemSet { range: Range(748, 861), items: [779, 782], want_response: true }, ItemSet { range: Range(861, 862), items: [861], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(592, 645), fp: EncodedCountingMonoid(4, SumMonoid(2407)) }, Fingerprint { range: Range(645, 684), fp: EncodedCountingMonoid(4, SumMonoid(2664)) }], item_sets: [ItemSet { range: Range(455, 516), items: [455, 459, 479, 488, 492, 514], want_response: false }, ItemSet { range: Range(516, 592), items: [528, 535, 540, 562, 585], want_response: false }, ItemSet { range: Range(684, 711), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(711, 714), items: [712], want_response: false }, ItemSet { range: Range(714, 748), items: [717, 721, 725, 727, 738, 741], want_response: false }, ItemSet { range: Range(748, 861), items: [748, 758, 769, 836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 862), items: [], want_response: false }], wants: [515, 516, 684, 685, 711, 713, 714, 715, 779, 782, 861], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(592, 645), items: [619, 630], want_response: true }, ItemSet { range: Range(645, 684), items: [667], want_response: true }], wants: [455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857], provide: [(515, true), (516, true), (684, true), (685, true), (711, true), (713, true), (714, true), (715, true), (779, true), (782, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(592, 645), items: [592, 601, 605, 609], want_response: false }, ItemSet { range: Range(645, 684), items: [645, 662, 674, 683], want_response: false }], wants: [619, 630, 667], provide: [(455, true), (459, true), (479, true), (488, true), (492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [592, 601, 605, 609, 645, 662, 674, 683], provide: [(619, true), (630, true), (667, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 711, 713, 714, 715, 779, 782, 861} + [879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 592, 601, 605, 609, 645, 662, 674, 683]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 711, 713, 714, 715, 779, 782, 861, 619, 630, 667]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 711, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 711, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 711, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 829, 861}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 862), fp: EncodedCountingMonoid(16, SumMonoid(10224)) }], item_sets: [ItemSet { range: Range(862, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 455), fp: EncodedCountingMonoid(36, SumMonoid(8641)) }, Fingerprint { range: Range(455, 862), fp: EncodedCountingMonoid(36, SumMonoid(23520)) }], item_sets: [ItemSet { range: Range(862, 1), items: [879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(455, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 862), fp: EncodedCountingMonoid(7, SumMonoid(5393)) }], item_sets: [ItemSet { range: Range(1, 455), items: [1], want_response: true }], wants: [879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(455, 601), fp: EncodedCountingMonoid(12, SumMonoid(6229)) }, Fingerprint { range: Range(601, 713), fp: EncodedCountingMonoid(11, SumMonoid(7275)) }, Fingerprint { range: Range(713, 758), fp: EncodedCountingMonoid(7, SumMonoid(5117)) }, Fingerprint { range: Range(758, 862), fp: EncodedCountingMonoid(6, SumMonoid(4899)) }], item_sets: [ItemSet { range: Range(1, 455), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450], want_response: false }], wants: [1], provide: [(879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(601, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(455, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(713, 715), items: [713, 714], want_response: true }, ItemSet { range: Range(715, 758), items: [715], want_response: true }, ItemSet { range: Range(758, 829), items: [779, 782], want_response: true }, ItemSet { range: Range(829, 862), items: [829, 861], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(601, 662), fp: EncodedCountingMonoid(4, SumMonoid(2460)) }, Fingerprint { range: Range(662, 684), fp: EncodedCountingMonoid(3, SumMonoid(2019)) }], item_sets: [ItemSet { range: Range(455, 516), items: [455, 459, 479, 488, 492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(713, 715), items: [], want_response: false }, ItemSet { range: Range(715, 758), items: [717, 721, 725, 727, 738, 741, 748], want_response: false }, ItemSet { range: Range(758, 829), items: [758, 769], want_response: false }, ItemSet { range: Range(829, 862), items: [836, 837, 842, 857], want_response: false }], wants: [515, 516, 684, 685, 713, 714, 715, 779, 782, 829, 861], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(601, 662), items: [619, 630], want_response: true }, ItemSet { range: Range(662, 684), items: [667], want_response: true }], wants: [455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857], provide: [(515, true), (516, true), (684, true), (685, true), (713, true), (714, true), (715, true), (779, true), (782, true), (829, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(601, 662), items: [601, 605, 609, 645], want_response: false }, ItemSet { range: Range(662, 684), items: [662, 674, 683], want_response: false }], wants: [619, 630, 667], provide: [(455, true), (459, true), (479, true), (488, true), (492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [601, 605, 609, 645, 662, 674, 683], provide: [(619, true), (630, true), (667, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 829, 861} + [879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 601, 605, 609, 645, 662, 674, 683]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 715, 779, 782, 829, 861, 619, 630, 667]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 829, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 829, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 829, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861, 888}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 889), fp: EncodedCountingMonoid(16, SumMonoid(10283)) }], item_sets: [ItemSet { range: Range(889, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 459), fp: EncodedCountingMonoid(37, SumMonoid(9096)) }, Fingerprint { range: Range(459, 889), fp: EncodedCountingMonoid(37, SumMonoid(24829)) }], item_sets: [ItemSet { range: Range(889, 1), items: [909, 916, 918, 924, 925, 926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(459, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 889), fp: EncodedCountingMonoid(7, SumMonoid(5452)) }], item_sets: [ItemSet { range: Range(1, 459), items: [1], want_response: true }], wants: [909, 916, 918, 924, 925, 926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(459, 601), fp: EncodedCountingMonoid(11, SumMonoid(5774)) }, Fingerprint { range: Range(601, 713), fp: EncodedCountingMonoid(11, SumMonoid(7275)) }, Fingerprint { range: Range(713, 769), fp: EncodedCountingMonoid(8, SumMonoid(5875)) }, Fingerprint { range: Range(769, 889), fp: EncodedCountingMonoid(7, SumMonoid(5905)) }], item_sets: [ItemSet { range: Range(1, 459), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455], want_response: false }], wants: [1], provide: [(909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(601, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(459, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(713, 715), items: [713, 714], want_response: true }, ItemSet { range: Range(715, 769), items: [715], want_response: true }, ItemSet { range: Range(769, 861), items: [779, 782], want_response: true }, ItemSet { range: Range(861, 889), items: [861, 888], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(601, 662), fp: EncodedCountingMonoid(4, SumMonoid(2460)) }, Fingerprint { range: Range(662, 684), fp: EncodedCountingMonoid(3, SumMonoid(2019)) }], item_sets: [ItemSet { range: Range(459, 516), items: [459, 479, 488, 492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(713, 715), items: [], want_response: false }, ItemSet { range: Range(715, 769), items: [717, 721, 725, 727, 738, 741, 748, 758], want_response: false }, ItemSet { range: Range(769, 861), items: [769, 836, 837, 842, 857], want_response: false }, ItemSet { range: Range(861, 889), items: [879, 885], want_response: false }], wants: [515, 516, 684, 685, 713, 714, 715, 779, 782, 861, 888], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(601, 662), items: [619, 630], want_response: true }, ItemSet { range: Range(662, 684), items: [667], want_response: true }], wants: [459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885], provide: [(515, true), (516, true), (684, true), (685, true), (713, true), (714, true), (715, true), (779, true), (782, true), (861, true), (888, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(601, 662), items: [601, 605, 609, 645], want_response: false }, ItemSet { range: Range(662, 684), items: [662, 674, 683], want_response: false }], wants: [619, 630, 667], provide: [(459, true), (479, true), (488, true), (492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [601, 605, 609, 645, 662, 674, 683], provide: [(619, true), (630, true), (667, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861, 888} + [909, 916, 918, 924, 925, 926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 601, 605, 609, 645, 662, 674, 683]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 715, 779, 782, 861, 888, 619, 630, 667]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 888, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 888, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 888, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861, 918}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 919), fp: EncodedCountingMonoid(16, SumMonoid(10313)) }], item_sets: [ItemSet { range: Range(919, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 488), fp: EncodedCountingMonoid(39, SumMonoid(10034)) }, Fingerprint { range: Range(488, 919), fp: EncodedCountingMonoid(38, SumMonoid(26634)) }], item_sets: [ItemSet { range: Range(919, 1), items: [924, 925, 926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(488, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 919), fp: EncodedCountingMonoid(7, SumMonoid(5482)) }], item_sets: [ItemSet { range: Range(1, 488), items: [1], want_response: true }], wants: [924, 925, 926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(488, 605), fp: EncodedCountingMonoid(10, SumMonoid(5437)) }, Fingerprint { range: Range(605, 713), fp: EncodedCountingMonoid(10, SumMonoid(6674)) }, Fingerprint { range: Range(713, 836), fp: EncodedCountingMonoid(9, SumMonoid(6644)) }, Fingerprint { range: Range(836, 919), fp: EncodedCountingMonoid(9, SumMonoid(7879)) }], item_sets: [ItemSet { range: Range(1, 488), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479], want_response: false }], wants: [1], provide: [(924, true), (925, true), (926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(605, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 779), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }], item_sets: [ItemSet { range: Range(488, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 605), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(779, 836), items: [779, 782], want_response: true }, ItemSet { range: Range(836, 919), items: [861, 918], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(605, 662), fp: EncodedCountingMonoid(3, SumMonoid(1859)) }, Fingerprint { range: Range(662, 684), fp: EncodedCountingMonoid(3, SumMonoid(2019)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 779), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(488, 516), items: [488, 492, 514], want_response: false }, ItemSet { range: Range(516, 605), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(779, 836), items: [], want_response: false }, ItemSet { range: Range(836, 919), items: [836, 837, 842, 857, 879, 885, 909, 916, 918], want_response: false }], wants: [515, 516, 684, 685, 779, 782, 861], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [619, 630], want_response: true }, ItemSet { range: Range(662, 684), items: [667], want_response: true }, ItemSet { range: Range(713, 715), items: [713, 714], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 779), items: [], want_response: true }], wants: [488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916], provide: [(515, true), (516, true), (684, true), (685, true), (779, true), (782, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [605, 609, 645], want_response: false }, ItemSet { range: Range(662, 684), items: [662, 674, 683], want_response: false }, ItemSet { range: Range(713, 715), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 779), items: [741, 748, 758, 769], want_response: false }], wants: [619, 630, 667, 713, 714, 715], provide: [(488, true), (492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [605, 609, 645, 662, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (667, true), (713, true), (714, true), (715, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861, 918} + [924, 925, 926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 605, 609, 645, 662, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 779, 782, 861, 619, 630, 667, 713, 714, 715]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861, 933}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 934), fp: EncodedCountingMonoid(16, SumMonoid(10328)) }], item_sets: [ItemSet { range: Range(934, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 934), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(934, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 934), fp: EncodedCountingMonoid(7, SumMonoid(5497)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 934), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 779), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(779, 842), items: [779, 782], want_response: true }, ItemSet { range: Range(842, 934), items: [861, 933], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 779), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(779, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 934), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 779, 782, 861, 933], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 715), items: [713, 714], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 779), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (779, true), (782, true), (861, true), (933, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(713, 715), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 779), items: [741, 748, 758, 769], want_response: false }], wants: [713, 714, 715], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (926, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(713, true), (714, true), (715, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861, 933} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 779, 782, 861, 933, 713, 714, 715]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861, 926}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 927), fp: EncodedCountingMonoid(16, SumMonoid(10321)) }], item_sets: [ItemSet { range: Range(927, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 927), fp: EncodedCountingMonoid(40, SumMonoid(28921)) }], item_sets: [ItemSet { range: Range(927, 1), items: [969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 927), fp: EncodedCountingMonoid(7, SumMonoid(5490)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(11, SumMonoid(8317)) }, Fingerprint { range: Range(842, 927), fp: EncodedCountingMonoid(10, SumMonoid(8981)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 779), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(779, 842), items: [779, 782], want_response: true }, ItemSet { range: Range(842, 927), items: [861, 926], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 779), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(779, 842), items: [836, 837], want_response: false }, ItemSet { range: Range(842, 927), items: [842, 857, 879, 885, 909, 916, 918, 924, 925, 926], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 779, 782, 861], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 715), items: [713, 714], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 779), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (779, true), (782, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(713, 715), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 779), items: [741, 748, 758, 769], want_response: false }], wants: [713, 714, 715], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (925, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(713, true), (714, true), (715, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861, 926} + [969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 779, 782, 861, 713, 714, 715]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861, 922}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 923), fp: EncodedCountingMonoid(16, SumMonoid(10317)) }], item_sets: [ItemSet { range: Range(923, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 488), fp: EncodedCountingMonoid(39, SumMonoid(10034)) }, Fingerprint { range: Range(488, 923), fp: EncodedCountingMonoid(38, SumMonoid(26634)) }], item_sets: [ItemSet { range: Range(923, 1), items: [924, 925, 926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(488, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 923), fp: EncodedCountingMonoid(7, SumMonoid(5486)) }], item_sets: [ItemSet { range: Range(1, 488), items: [1], want_response: true }], wants: [924, 925, 926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(488, 605), fp: EncodedCountingMonoid(10, SumMonoid(5437)) }, Fingerprint { range: Range(605, 713), fp: EncodedCountingMonoid(10, SumMonoid(6674)) }, Fingerprint { range: Range(713, 836), fp: EncodedCountingMonoid(9, SumMonoid(6644)) }, Fingerprint { range: Range(836, 923), fp: EncodedCountingMonoid(9, SumMonoid(7879)) }], item_sets: [ItemSet { range: Range(1, 488), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479], want_response: false }], wants: [1], provide: [(924, true), (925, true), (926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(605, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 779), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }], item_sets: [ItemSet { range: Range(488, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 605), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(779, 836), items: [779, 782], want_response: true }, ItemSet { range: Range(836, 923), items: [861, 922], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(605, 662), fp: EncodedCountingMonoid(3, SumMonoid(1859)) }, Fingerprint { range: Range(662, 684), fp: EncodedCountingMonoid(3, SumMonoid(2019)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 779), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(488, 516), items: [488, 492, 514], want_response: false }, ItemSet { range: Range(516, 605), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(779, 836), items: [], want_response: false }, ItemSet { range: Range(836, 923), items: [836, 837, 842, 857, 879, 885, 909, 916, 918], want_response: false }], wants: [515, 516, 684, 685, 779, 782, 861, 922], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [619, 630], want_response: true }, ItemSet { range: Range(662, 684), items: [667], want_response: true }, ItemSet { range: Range(713, 715), items: [713, 714], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 779), items: [], want_response: true }], wants: [488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918], provide: [(515, true), (516, true), (684, true), (685, true), (779, true), (782, true), (861, true), (922, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [605, 609, 645], want_response: false }, ItemSet { range: Range(662, 684), items: [662, 674, 683], want_response: false }, ItemSet { range: Range(713, 715), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 779), items: [741, 748, 758, 769], want_response: false }], wants: [619, 630, 667, 713, 714, 715], provide: [(488, true), (492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [605, 609, 645, 662, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (667, true), (713, true), (714, true), (715, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861, 922} + [924, 925, 926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 605, 609, 645, 662, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 779, 782, 861, 922, 619, 630, 667, 713, 714, 715]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 922, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 922, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 922, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861, 924}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 925), fp: EncodedCountingMonoid(16, SumMonoid(10319)) }], item_sets: [ItemSet { range: Range(925, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 488), fp: EncodedCountingMonoid(39, SumMonoid(10034)) }, Fingerprint { range: Range(488, 925), fp: EncodedCountingMonoid(39, SumMonoid(27558)) }], item_sets: [ItemSet { range: Range(925, 1), items: [925, 926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(488, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 925), fp: EncodedCountingMonoid(7, SumMonoid(5488)) }], item_sets: [ItemSet { range: Range(1, 488), items: [1], want_response: true }], wants: [925, 926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(488, 605), fp: EncodedCountingMonoid(10, SumMonoid(5437)) }, Fingerprint { range: Range(605, 713), fp: EncodedCountingMonoid(10, SumMonoid(6674)) }, Fingerprint { range: Range(713, 837), fp: EncodedCountingMonoid(10, SumMonoid(7480)) }, Fingerprint { range: Range(837, 925), fp: EncodedCountingMonoid(9, SumMonoid(7967)) }], item_sets: [ItemSet { range: Range(1, 488), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479], want_response: false }], wants: [1], provide: [(925, true), (926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(605, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 779), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }], item_sets: [ItemSet { range: Range(488, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 605), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(779, 837), items: [779, 782], want_response: true }, ItemSet { range: Range(837, 925), items: [861, 924], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(605, 662), fp: EncodedCountingMonoid(3, SumMonoid(1859)) }, Fingerprint { range: Range(662, 684), fp: EncodedCountingMonoid(3, SumMonoid(2019)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 779), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(488, 516), items: [488, 492, 514], want_response: false }, ItemSet { range: Range(516, 605), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(779, 837), items: [836], want_response: false }, ItemSet { range: Range(837, 925), items: [837, 842, 857, 879, 885, 909, 916, 918, 924], want_response: false }], wants: [515, 516, 684, 685, 779, 782, 861], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [619, 630], want_response: true }, ItemSet { range: Range(662, 684), items: [667], want_response: true }, ItemSet { range: Range(713, 715), items: [713, 714], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 779), items: [], want_response: true }], wants: [488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918], provide: [(515, true), (516, true), (684, true), (685, true), (779, true), (782, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [605, 609, 645], want_response: false }, ItemSet { range: Range(662, 684), items: [662, 674, 683], want_response: false }, ItemSet { range: Range(713, 715), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 779), items: [741, 748, 758, 769], want_response: false }], wants: [619, 630, 667, 713, 714, 715], provide: [(488, true), (492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [605, 609, 645, 662, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(619, true), (630, true), (667, true), (713, true), (714, true), (715, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861, 924} + [925, 926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 605, 609, 645, 662, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 779, 782, 861, 619, 630, 667, 713, 714, 715]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 782, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10320)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5489)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 837), fp: EncodedCountingMonoid(10, SumMonoid(7480)) }, Fingerprint { range: Range(837, 926), fp: EncodedCountingMonoid(10, SumMonoid(8892)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 779), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(779, 837), items: [779, 782], want_response: true }, ItemSet { range: Range(837, 926), items: [861, 925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 779), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(779, 837), items: [836], want_response: false }, ItemSet { range: Range(837, 926), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }], wants: [515, 516, 684, 685, 779, 782, 861], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 715), items: [713, 714], want_response: true }, ItemSet { range: Range(715, 741), items: [715], want_response: true }, ItemSet { range: Range(741, 779), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (779, true), (782, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(713, 715), items: [], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 779), items: [741, 748, 758, 769], want_response: false }], wants: [713, 714, 715], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(713, true), (714, true), (715, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 782, 861, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 779, 782, 861, 713, 714, 715]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 391, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(9929)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(7, SumMonoid(4145)) }, Fingerprint { range: Range(685, 926), fp: EncodedCountingMonoid(7, SumMonoid(5392)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1, 391], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 769), fp: EncodedCountingMonoid(12, SumMonoid(8671)) }, Fingerprint { range: Range(769, 926), fp: EncodedCountingMonoid(12, SumMonoid(10497)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1, 391], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(685, 714), items: [685, 713], want_response: true }, ItemSet { range: Range(714, 769), items: [714, 715], want_response: true }, ItemSet { range: Range(769, 925), items: [779, 861], want_response: true }, ItemSet { range: Range(925, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true), (391, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(685, 714), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(714, 769), items: [717, 721, 725, 727, 738, 741, 748, 758], want_response: false }, ItemSet { range: Range(769, 925), items: [769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924], want_response: false }, ItemSet { range: Range(925, 926), items: [925], want_response: false }], wants: [515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924], provide: [(515, true), (516, true), (619, true), (630, true), (667, true), (684, true), (685, true), (713, true), (714, true), (715, true), (779, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 391, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 391, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 391, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 391, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 391, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 587, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10125)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(8, SumMonoid(4732)) }, Fingerprint { range: Range(685, 926), fp: EncodedCountingMonoid(7, SumMonoid(5392)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 769), fp: EncodedCountingMonoid(12, SumMonoid(8671)) }, Fingerprint { range: Range(769, 926), fp: EncodedCountingMonoid(12, SumMonoid(10497)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516, 587], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(685, 714), items: [685, 713], want_response: true }, ItemSet { range: Range(714, 769), items: [714, 715], want_response: true }, ItemSet { range: Range(769, 925), items: [779, 861], want_response: true }, ItemSet { range: Range(925, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(685, 714), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(714, 769), items: [717, 721, 725, 727, 738, 741, 748, 758], want_response: false }, ItemSet { range: Range(769, 925), items: [769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924], want_response: false }, ItemSet { range: Range(925, 926), items: [925], want_response: false }], wants: [515, 516, 587, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924], provide: [(515, true), (516, true), (587, true), (619, true), (630, true), (667, true), (684, true), (685, true), (713, true), (714, true), (715, true), (779, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 587, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 587, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 587, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 587, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 587, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(15, SumMonoid(9538)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(7, SumMonoid(4145)) }, Fingerprint { range: Range(685, 926), fp: EncodedCountingMonoid(7, SumMonoid(5392)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 769), fp: EncodedCountingMonoid(12, SumMonoid(8671)) }, Fingerprint { range: Range(769, 926), fp: EncodedCountingMonoid(12, SumMonoid(10497)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(685, 714), items: [685, 713], want_response: true }, ItemSet { range: Range(714, 769), items: [714, 715], want_response: true }, ItemSet { range: Range(769, 925), items: [779, 861], want_response: true }, ItemSet { range: Range(925, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(685, 714), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(714, 769), items: [717, 721, 725, 727, 738, 741, 748, 758], want_response: false }, ItemSet { range: Range(769, 925), items: [769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924], want_response: false }, ItemSet { range: Range(925, 926), items: [925], want_response: false }], wants: [515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924], provide: [(515, true), (516, true), (619, true), (630, true), (667, true), (684, true), (685, true), (713, true), (714, true), (715, true), (779, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 734, 779, 861, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10272)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5441)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 837), fp: EncodedCountingMonoid(10, SumMonoid(7480)) }, Fingerprint { range: Range(837, 926), fp: EncodedCountingMonoid(10, SumMonoid(8892)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 734), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(734, 837), items: [734, 779], want_response: true }, ItemSet { range: Range(837, 926), items: [861, 925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(734, 837), items: [738, 741, 748, 758, 769, 836], want_response: false }, ItemSet { range: Range(837, 926), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 725), items: [717, 721], want_response: true }, ItemSet { range: Range(725, 734), items: [725, 727], want_response: true }], wants: [515, 516, 684, 685, 734, 779, 861], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 725), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(725, 734), items: [], want_response: false }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 717, 721, 725, 727], provide: [(515, true), (516, true), (684, true), (685, true), (734, true), (779, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [713, 714, 715], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true), (717, true), (721, true), (725, true), (727, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(713, true), (714, true), (715, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 734, 779, 861, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 717, 721, 725, 727]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 734, 779, 861, 713, 714, 715]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 710, 713, 714, 715, 779, 861, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10248)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 710), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(710, 926), fp: EncodedCountingMonoid(7, SumMonoid(5417)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 605), fp: EncodedCountingMonoid(9, SumMonoid(4949)) }, Fingerprint { range: Range(605, 710), fp: EncodedCountingMonoid(9, SumMonoid(5962)) }, Fingerprint { range: Range(710, 837), fp: EncodedCountingMonoid(11, SumMonoid(8192)) }, Fingerprint { range: Range(837, 926), fp: EncodedCountingMonoid(10, SumMonoid(8892)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(605, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(710, 715), fp: EncodedCountingMonoid(3, SumMonoid(2137)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 605), items: [516], want_response: true }, ItemSet { range: Range(684, 710), items: [684, 685], want_response: true }, ItemSet { range: Range(715, 837), items: [715, 779], want_response: true }, ItemSet { range: Range(837, 926), items: [861, 925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(605, 662), fp: EncodedCountingMonoid(3, SumMonoid(1859)) }, Fingerprint { range: Range(662, 684), fp: EncodedCountingMonoid(3, SumMonoid(2019)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 605), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 710), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(715, 837), items: [717, 721, 725, 727, 738, 741, 748, 758, 769, 836], want_response: false }, ItemSet { range: Range(837, 926), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(710, 715), items: [712], want_response: true }], wants: [515, 516, 684, 685, 715, 779, 861], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(710, 715), items: [710, 713, 714], want_response: false }, ItemSet { range: Range(605, 662), items: [619, 630], want_response: true }, ItemSet { range: Range(662, 684), items: [667], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 712], provide: [(515, true), (516, true), (684, true), (685, true), (715, true), (779, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [605, 609, 645], want_response: false }, ItemSet { range: Range(662, 684), items: [662, 674, 683], want_response: false }], wants: [710, 713, 714, 619, 630, 667], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (700, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (712, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [605, 609, 645, 662, 674, 683], provide: [(710, true), (713, true), (714, true), (619, true), (630, true), (667, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(605, true), (609, true), (645, true), (662, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 710, 713, 714, 715, 779, 861, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 712, 605, 609, 645, 662, 674, 683]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 715, 779, 861, 710, 713, 714, 619, 630, 667]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 710, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 710, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 710, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 722, 779, 861, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10260)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5429)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 837), fp: EncodedCountingMonoid(10, SumMonoid(7480)) }, Fingerprint { range: Range(837, 926), fp: EncodedCountingMonoid(10, SumMonoid(8892)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 722), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(722, 837), items: [722, 779], want_response: true }, ItemSet { range: Range(837, 926), items: [861, 925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(722, 837), items: [725, 727, 738, 741, 748, 758, 769, 836], want_response: false }, ItemSet { range: Range(837, 926), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 722), items: [717, 721], want_response: true }], wants: [515, 516, 684, 685, 722, 779, 861], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 722), items: [713, 714, 715], want_response: false }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 717, 721], provide: [(515, true), (516, true), (684, true), (685, true), (722, true), (779, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [713, 714, 715], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true), (717, true), (721, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(713, true), (714, true), (715, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 722, 779, 861, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 717, 721]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 722, 779, 861, 713, 714, 715]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 779, 861, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10254)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5423)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 837), fp: EncodedCountingMonoid(10, SumMonoid(7480)) }, Fingerprint { range: Range(837, 926), fp: EncodedCountingMonoid(10, SumMonoid(8892)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(716, 837), items: [716, 779], want_response: true }, ItemSet { range: Range(837, 926), items: [861, 925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(716, 837), items: [717, 721, 725, 727, 738, 741, 748, 758, 769, 836], want_response: false }, ItemSet { range: Range(837, 926), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685, 716, 779, 861], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (716, true), (779, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [713, 714, 715], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(713, true), (714, true), (715, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 779, 861, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 716, 779, 861, 713, 714, 715]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(15, SumMonoid(9538)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(7, SumMonoid(4145)) }, Fingerprint { range: Range(685, 926), fp: EncodedCountingMonoid(7, SumMonoid(5392)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 769), fp: EncodedCountingMonoid(12, SumMonoid(8671)) }, Fingerprint { range: Range(769, 926), fp: EncodedCountingMonoid(12, SumMonoid(10497)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(685, 714), items: [685, 713], want_response: true }, ItemSet { range: Range(714, 769), items: [714, 715], want_response: true }, ItemSet { range: Range(769, 925), items: [779, 861], want_response: true }, ItemSet { range: Range(925, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(685, 714), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(714, 769), items: [717, 721, 725, 727, 738, 741, 748, 758], want_response: false }, ItemSet { range: Range(769, 925), items: [769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924], want_response: false }, ItemSet { range: Range(925, 926), items: [925], want_response: false }], wants: [515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924], provide: [(515, true), (516, true), (619, true), (630, true), (667, true), (684, true), (685, true), (713, true), (714, true), (715, true), (779, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(15, SumMonoid(9538)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(7, SumMonoid(4145)) }, Fingerprint { range: Range(685, 926), fp: EncodedCountingMonoid(7, SumMonoid(5392)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 769), fp: EncodedCountingMonoid(12, SumMonoid(8671)) }, Fingerprint { range: Range(769, 926), fp: EncodedCountingMonoid(12, SumMonoid(10497)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(685, 714), items: [685, 713], want_response: true }, ItemSet { range: Range(714, 769), items: [714, 715], want_response: true }, ItemSet { range: Range(769, 925), items: [779, 861], want_response: true }, ItemSet { range: Range(925, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(685, 714), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(714, 769), items: [717, 721, 725, 727, 738, 741, 748, 758], want_response: false }, ItemSet { range: Range(769, 925), items: [769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924], want_response: false }, ItemSet { range: Range(925, 926), items: [925], want_response: false }], wants: [515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924], provide: [(515, true), (516, true), (619, true), (630, true), (667, true), (684, true), (685, true), (713, true), (714, true), (715, true), (779, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 779, 861]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 861, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 779, 861, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10254)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5423)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 837), fp: EncodedCountingMonoid(10, SumMonoid(7480)) }, Fingerprint { range: Range(837, 926), fp: EncodedCountingMonoid(10, SumMonoid(8892)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(716, 837), items: [716, 779], want_response: true }, ItemSet { range: Range(837, 926), items: [861, 925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(716, 837), items: [717, 721, 725, 727, 738, 741, 748, 758, 769, 836], want_response: false }, ItemSet { range: Range(837, 926), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685, 716, 779, 861], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true), (716, true), (779, true), (861, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [713, 714, 715], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(713, true), (714, true), (715, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 779, 861, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 716, 779, 861, 713, 714, 715]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 431, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 779, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(9824)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(7, SumMonoid(4145)) }, Fingerprint { range: Range(685, 926), fp: EncodedCountingMonoid(7, SumMonoid(5247)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1, 431], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 769), fp: EncodedCountingMonoid(12, SumMonoid(8671)) }, Fingerprint { range: Range(769, 926), fp: EncodedCountingMonoid(12, SumMonoid(10497)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1, 431], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(685, 715), fp: EncodedCountingMonoid(3, SumMonoid(2112)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(715, 769), items: [715, 716], want_response: true }, ItemSet { range: Range(769, 926), items: [779, 925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true), (431, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(715, 769), items: [717, 721, 725, 727, 738, 741, 748, 758], want_response: false }, ItemSet { range: Range(769, 926), items: [769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(685, 700), items: [690, 694], want_response: true }, ItemSet { range: Range(700, 715), items: [700, 712], want_response: true }], wants: [515, 516, 619, 630, 667, 684, 715, 716, 779], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 700), items: [685], want_response: false }, ItemSet { range: Range(700, 715), items: [713, 714], want_response: false }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 690, 694, 700, 712], provide: [(515, true), (516, true), (619, true), (630, true), (667, true), (684, true), (715, true), (716, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [685, 713, 714], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (690, true), (694, true), (700, true), (712, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(685, true), (713, true), (714, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 431, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 779, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 690, 694, 700, 712]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 431, 515, 516, 619, 630, 667, 684, 715, 716, 779, 685, 713, 714]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 431, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 431, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 431, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 646, 667, 684, 685, 713, 714, 715, 716, 779, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10039)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(8, SumMonoid(4791)) }, Fingerprint { range: Range(685, 926), fp: EncodedCountingMonoid(7, SumMonoid(5247)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 769), fp: EncodedCountingMonoid(12, SumMonoid(8671)) }, Fingerprint { range: Range(769, 926), fp: EncodedCountingMonoid(12, SumMonoid(10497)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(601, 667), fp: EncodedCountingMonoid(3, SumMonoid(1895)) }, Fingerprint { range: Range(685, 715), fp: EncodedCountingMonoid(3, SumMonoid(2112)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(715, 769), items: [715, 716], want_response: true }, ItemSet { range: Range(769, 926), items: [779, 925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(601, 645), fp: EncodedCountingMonoid(3, SumMonoid(1815)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(715, 769), items: [717, 721, 725, 727, 738, 741, 748, 758], want_response: false }, ItemSet { range: Range(769, 926), items: [769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(645, 667), items: [645, 662], want_response: true }, ItemSet { range: Range(685, 700), items: [690, 694], want_response: true }, ItemSet { range: Range(700, 715), items: [700, 712], want_response: true }], wants: [515, 516, 667, 684, 715, 716, 779], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(645, 667), items: [646], want_response: false }, ItemSet { range: Range(685, 700), items: [685], want_response: false }, ItemSet { range: Range(700, 715), items: [713, 714], want_response: false }, ItemSet { range: Range(601, 645), items: [619, 630], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 645, 662, 690, 694, 700, 712], provide: [(515, true), (516, true), (667, true), (684, true), (715, true), (716, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(601, 645), items: [601, 605, 609], want_response: false }], wants: [646, 685, 713, 714, 619, 630], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (674, true), (683, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (645, true), (662, true), (690, true), (694, true), (700, true), (712, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [601, 605, 609], provide: [(646, true), (685, true), (713, true), (714, true), (619, true), (630, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(601, true), (605, true), (609, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 646, 667, 684, 685, 713, 714, 715, 716, 779, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 645, 662, 690, 694, 700, 712, 601, 605, 609]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 667, 684, 715, 716, 779, 646, 685, 713, 714, 619, 630]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 646, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 646, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 646, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 754, 779, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10147)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5316)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 837), fp: EncodedCountingMonoid(10, SumMonoid(7480)) }, Fingerprint { range: Range(837, 926), fp: EncodedCountingMonoid(10, SumMonoid(8892)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(716, 837), fp: EncodedCountingMonoid(3, SumMonoid(2249)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(837, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(716, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 837), fp: EncodedCountingMonoid(5, SumMonoid(3852)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(837, 926), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(716, 741), items: [716], want_response: true }, ItemSet { range: Range(741, 837), items: [754, 779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(716, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 837), items: [741, 748, 758, 769, 836], want_response: false }], wants: [713, 714, 715, 716, 754, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769, 836], provide: [(713, true), (714, true), (715, true), (716, true), (754, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 754, 779, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 715, 716, 754, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 700, 713, 714, 715, 716, 779, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10093)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 700), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(700, 926), fp: EncodedCountingMonoid(7, SumMonoid(5262)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 605), fp: EncodedCountingMonoid(9, SumMonoid(4949)) }, Fingerprint { range: Range(605, 700), fp: EncodedCountingMonoid(8, SumMonoid(5262)) }, Fingerprint { range: Range(700, 836), fp: EncodedCountingMonoid(11, SumMonoid(8056)) }, Fingerprint { range: Range(836, 926), fp: EncodedCountingMonoid(11, SumMonoid(9728)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(605, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(700, 715), fp: EncodedCountingMonoid(3, SumMonoid(2127)) }, Fingerprint { range: Range(715, 836), fp: EncodedCountingMonoid(3, SumMonoid(2210)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 605), items: [516], want_response: true }, ItemSet { range: Range(684, 700), items: [684, 685], want_response: true }, ItemSet { range: Range(836, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(605, 662), fp: EncodedCountingMonoid(3, SumMonoid(1859)) }, Fingerprint { range: Range(662, 684), fp: EncodedCountingMonoid(3, SumMonoid(2019)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 836), fp: EncodedCountingMonoid(4, SumMonoid(3016)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 605), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 700), items: [690, 694], want_response: false }, ItemSet { range: Range(836, 926), items: [836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(700, 715), items: [700, 712], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(700, 715), items: [700, 713, 714], want_response: false }, ItemSet { range: Range(605, 662), items: [619, 630], want_response: true }, ItemSet { range: Range(662, 684), items: [667], want_response: true }, ItemSet { range: Range(715, 741), items: [715, 716], want_response: true }, ItemSet { range: Range(741, 836), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 712], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [605, 609, 645], want_response: false }, ItemSet { range: Range(662, 684), items: [662, 674, 683], want_response: false }, ItemSet { range: Range(715, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 836), items: [741, 748, 758, 769], want_response: false }], wants: [713, 714, 619, 630, 667, 715, 716, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (712, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [605, 609, 645, 662, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769], provide: [(713, true), (714, true), (619, true), (630, true), (667, true), (715, true), (716, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 700, 713, 714, 715, 716, 779, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 712, 605, 609, 645, 662, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 619, 630, 667, 715, 716, 779]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 727, 779, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10120)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5289)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 837), fp: EncodedCountingMonoid(10, SumMonoid(7480)) }, Fingerprint { range: Range(837, 926), fp: EncodedCountingMonoid(10, SumMonoid(8892)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(716, 837), fp: EncodedCountingMonoid(3, SumMonoid(2222)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(837, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(716, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 837), fp: EncodedCountingMonoid(5, SumMonoid(3852)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(837, 926), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(716, 741), items: [716, 727], want_response: true }, ItemSet { range: Range(741, 837), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(716, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 837), items: [741, 748, 758, 769, 836], want_response: false }], wants: [713, 714, 715, 716, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 738, 741, 748, 758, 769, 836], provide: [(713, true), (714, true), (715, true), (716, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 727, 779, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 717, 721, 725, 738, 741, 748, 758, 769, 836]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 715, 716, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 779, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(15, SumMonoid(9393)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(7, SumMonoid(4145)) }, Fingerprint { range: Range(685, 926), fp: EncodedCountingMonoid(7, SumMonoid(5247)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 769), fp: EncodedCountingMonoid(12, SumMonoid(8671)) }, Fingerprint { range: Range(769, 926), fp: EncodedCountingMonoid(12, SumMonoid(10497)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(685, 715), fp: EncodedCountingMonoid(3, SumMonoid(2112)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(715, 769), items: [715, 716], want_response: true }, ItemSet { range: Range(769, 926), items: [779, 925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(715, 769), items: [717, 721, 725, 727, 738, 741, 748, 758], want_response: false }, ItemSet { range: Range(769, 926), items: [769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(685, 700), items: [690, 694], want_response: true }, ItemSet { range: Range(700, 715), items: [700, 712], want_response: true }], wants: [515, 516, 619, 630, 667, 684, 715, 716, 779], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 700), items: [685], want_response: false }, ItemSet { range: Range(700, 715), items: [713, 714], want_response: false }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 690, 694, 700, 712], provide: [(515, true), (516, true), (619, true), (630, true), (667, true), (684, true), (715, true), (716, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [685, 713, 714], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (690, true), (694, true), (700, true), (712, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(685, true), (713, true), (714, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 779, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 690, 694, 700, 712]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 619, 630, 667, 684, 715, 716, 779, 685, 713, 714]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 721, 779, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10114)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5283)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 837), fp: EncodedCountingMonoid(10, SumMonoid(7480)) }, Fingerprint { range: Range(837, 926), fp: EncodedCountingMonoid(10, SumMonoid(8892)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(716, 837), fp: EncodedCountingMonoid(3, SumMonoid(2216)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(837, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(716, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 837), fp: EncodedCountingMonoid(5, SumMonoid(3852)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(837, 926), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(716, 741), items: [716, 721], want_response: true }, ItemSet { range: Range(741, 837), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(716, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 837), items: [741, 748, 758, 769, 836], want_response: false }], wants: [713, 714, 715, 716, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 725, 727, 738, 741, 748, 758, 769, 836], provide: [(713, true), (714, true), (715, true), (716, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 721, 779, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 717, 725, 727, 738, 741, 748, 758, 769, 836]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 715, 716, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 718, 779, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10111)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5280)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 837), fp: EncodedCountingMonoid(10, SumMonoid(7480)) }, Fingerprint { range: Range(837, 926), fp: EncodedCountingMonoid(10, SumMonoid(8892)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(716, 837), fp: EncodedCountingMonoid(3, SumMonoid(2213)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(837, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(716, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 837), fp: EncodedCountingMonoid(5, SumMonoid(3852)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(837, 926), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(716, 741), items: [716, 718], want_response: true }, ItemSet { range: Range(741, 837), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(716, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 837), items: [741, 748, 758, 769, 836], want_response: false }], wants: [713, 714, 715, 716, 718, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [717, 721, 725, 727, 738, 741, 748, 758, 769, 836], provide: [(713, true), (714, true), (715, true), (716, true), (718, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 718, 779, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 715, 716, 718, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 779, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(15, SumMonoid(9393)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(7, SumMonoid(4145)) }, Fingerprint { range: Range(685, 926), fp: EncodedCountingMonoid(7, SumMonoid(5247)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 769), fp: EncodedCountingMonoid(12, SumMonoid(8671)) }, Fingerprint { range: Range(769, 926), fp: EncodedCountingMonoid(12, SumMonoid(10497)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(685, 715), fp: EncodedCountingMonoid(3, SumMonoid(2112)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(715, 769), items: [715, 716], want_response: true }, ItemSet { range: Range(769, 926), items: [779, 925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(715, 769), items: [717, 721, 725, 727, 738, 741, 748, 758], want_response: false }, ItemSet { range: Range(769, 926), items: [769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(685, 700), items: [690, 694], want_response: true }, ItemSet { range: Range(700, 715), items: [700, 712], want_response: true }], wants: [515, 516, 619, 630, 667, 684, 715, 716, 779], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 700), items: [685], want_response: false }, ItemSet { range: Range(700, 715), items: [713, 714], want_response: false }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 690, 694, 700, 712], provide: [(515, true), (516, true), (619, true), (630, true), (667, true), (684, true), (715, true), (716, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [685, 713, 714], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (717, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (690, true), (694, true), (700, true), (712, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [(685, true), (713, true), (714, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 779, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 690, 694, 700, 712]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 619, 630, 667, 684, 715, 716, 779, 685, 713, 714]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 779, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 779, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10110)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5279)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 837), fp: EncodedCountingMonoid(10, SumMonoid(7480)) }, Fingerprint { range: Range(837, 926), fp: EncodedCountingMonoid(10, SumMonoid(8892)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(716, 837), fp: EncodedCountingMonoid(3, SumMonoid(2212)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(837, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(716, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 837), fp: EncodedCountingMonoid(5, SumMonoid(3852)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(837, 926), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(716, 741), items: [716, 717], want_response: true }, ItemSet { range: Range(741, 837), items: [779], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(716, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 837), items: [741, 748, 758, 769, 836], want_response: false }], wants: [713, 714, 715, 716, 779], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [721, 725, 727, 738, 741, 748, 758, 769, 836], provide: [(713, true), (714, true), (715, true), (716, true), (779, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 779, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 721, 725, 727, 738, 741, 748, 758, 769, 836]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 715, 716, 779]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 390, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(9721)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(7, SumMonoid(4145)) }, Fingerprint { range: Range(685, 926), fp: EncodedCountingMonoid(7, SumMonoid(5185)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1, 390], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 769), fp: EncodedCountingMonoid(12, SumMonoid(8671)) }, Fingerprint { range: Range(769, 926), fp: EncodedCountingMonoid(12, SumMonoid(10497)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(685, 715), fp: EncodedCountingMonoid(3, SumMonoid(2112)) }, Fingerprint { range: Range(715, 769), fp: EncodedCountingMonoid(3, SumMonoid(2148)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(769, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(715, 738), fp: EncodedCountingMonoid(4, SumMonoid(2890)) }, Fingerprint { range: Range(738, 769), fp: EncodedCountingMonoid(4, SumMonoid(2985)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(769, 926), items: [769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(685, 700), items: [690, 694], want_response: true }, ItemSet { range: Range(700, 715), items: [700, 712], want_response: true }], wants: [515, 516, 619, 630, 667, 684], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 700), items: [685], want_response: false }, ItemSet { range: Range(700, 715), items: [713, 714], want_response: false }, ItemSet { range: Range(715, 717), items: [715, 716], want_response: true }, ItemSet { range: Range(717, 738), items: [717], want_response: true }, ItemSet { range: Range(738, 769), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 690, 694, 700, 712], provide: [(515, true), (516, true), (619, true), (630, true), (667, true), (684, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 717), items: [], want_response: false }, ItemSet { range: Range(717, 738), items: [717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 769), items: [738, 741, 748, 758], want_response: false }], wants: [685, 713, 714, 715, 716], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (690, true), (694, true), (700, true), (712, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [721, 725, 727, 738, 741, 748, 758], provide: [(685, true), (713, true), (714, true), (715, true), (716, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 390, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 585, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(9916)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(8, SumMonoid(4730)) }, Fingerprint { range: Range(685, 926), fp: EncodedCountingMonoid(7, SumMonoid(5185)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 769), fp: EncodedCountingMonoid(12, SumMonoid(8671)) }, Fingerprint { range: Range(769, 926), fp: EncodedCountingMonoid(12, SumMonoid(10497)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(685, 715), fp: EncodedCountingMonoid(3, SumMonoid(2112)) }, Fingerprint { range: Range(715, 769), fp: EncodedCountingMonoid(3, SumMonoid(2148)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516, 585], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(769, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(715, 738), fp: EncodedCountingMonoid(4, SumMonoid(2890)) }, Fingerprint { range: Range(738, 769), fp: EncodedCountingMonoid(4, SumMonoid(2985)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(769, 926), items: [769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(685, 700), items: [690, 694], want_response: true }, ItemSet { range: Range(700, 715), items: [700, 712], want_response: true }], wants: [515, 516, 619, 630, 667, 684], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 700), items: [685], want_response: false }, ItemSet { range: Range(700, 715), items: [713, 714], want_response: false }, ItemSet { range: Range(715, 717), items: [715, 716], want_response: true }, ItemSet { range: Range(717, 738), items: [717], want_response: true }, ItemSet { range: Range(738, 769), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 592, 601, 605, 609, 645, 662, 674, 683, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 690, 694, 700, 712], provide: [(515, true), (516, true), (619, true), (630, true), (667, true), (684, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 717), items: [], want_response: false }, ItemSet { range: Range(717, 738), items: [717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 769), items: [738, 741, 748, 758], want_response: false }], wants: [685, 713, 714, 715, 716], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (690, true), (694, true), (700, true), (712, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [721, 725, 727, 738, 741, 748, 758], provide: [(685, true), (713, true), (714, true), (715, true), (716, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 585, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 592, 601, 605, 609, 645, 662, 674, 683, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 682, 684, 685, 713, 714, 715, 716, 717, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10013)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(8, SumMonoid(4827)) }, Fingerprint { range: Range(685, 926), fp: EncodedCountingMonoid(7, SumMonoid(5185)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 769), fp: EncodedCountingMonoid(12, SumMonoid(8671)) }, Fingerprint { range: Range(769, 926), fp: EncodedCountingMonoid(12, SumMonoid(10497)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(601, 682), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(685, 715), fp: EncodedCountingMonoid(3, SumMonoid(2112)) }, Fingerprint { range: Range(715, 769), fp: EncodedCountingMonoid(3, SumMonoid(2148)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(682, 685), items: [682, 684], want_response: true }, ItemSet { range: Range(769, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(601, 645), fp: EncodedCountingMonoid(3, SumMonoid(1815)) }, Fingerprint { range: Range(645, 682), fp: EncodedCountingMonoid(3, SumMonoid(1981)) }, Fingerprint { range: Range(715, 738), fp: EncodedCountingMonoid(4, SumMonoid(2890)) }, Fingerprint { range: Range(738, 769), fp: EncodedCountingMonoid(4, SumMonoid(2985)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(682, 685), items: [683], want_response: false }, ItemSet { range: Range(769, 926), items: [769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(685, 700), items: [690, 694], want_response: true }, ItemSet { range: Range(700, 715), items: [700, 712], want_response: true }], wants: [515, 516, 682, 684], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 700), items: [685], want_response: false }, ItemSet { range: Range(700, 715), items: [713, 714], want_response: false }, ItemSet { range: Range(601, 645), items: [619, 630], want_response: true }, ItemSet { range: Range(645, 682), items: [667], want_response: true }, ItemSet { range: Range(715, 717), items: [715, 716], want_response: true }, ItemSet { range: Range(717, 738), items: [717], want_response: true }, ItemSet { range: Range(738, 769), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 683, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 690, 694, 700, 712], provide: [(515, true), (516, true), (682, true), (684, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(601, 645), items: [601, 605, 609], want_response: false }, ItemSet { range: Range(645, 682), items: [645, 662, 674], want_response: false }, ItemSet { range: Range(715, 717), items: [], want_response: false }, ItemSet { range: Range(717, 738), items: [717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 769), items: [738, 741, 748, 758], want_response: false }], wants: [685, 713, 714, 619, 630, 667, 715, 716], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (683, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (690, true), (694, true), (700, true), (712, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [601, 605, 609, 645, 662, 674, 721, 725, 727, 738, 741, 748, 758], provide: [(685, true), (713, true), (714, true), (619, true), (630, true), (667, true), (715, true), (716, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 682, 684, 685, 713, 714, 715, 716, 717, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 683, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 690, 694, 700, 712, 601, 605, 609, 645, 662, 674, 721, 725, 727, 738, 741, 748, 758]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 682, 684, 685, 713, 714, 619, 630, 667, 715, 716]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 682, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 682, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 682, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 731, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10062)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5231)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 837), fp: EncodedCountingMonoid(10, SumMonoid(7480)) }, Fingerprint { range: Range(837, 926), fp: EncodedCountingMonoid(10, SumMonoid(8892)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(716, 837), fp: EncodedCountingMonoid(3, SumMonoid(2164)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(837, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(716, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 837), fp: EncodedCountingMonoid(5, SumMonoid(3852)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(837, 926), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(716, 731), items: [716, 717], want_response: true }, ItemSet { range: Range(731, 741), items: [731], want_response: true }, ItemSet { range: Range(741, 837), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(716, 731), items: [717, 721, 725, 727], want_response: false }, ItemSet { range: Range(731, 741), items: [738], want_response: false }, ItemSet { range: Range(741, 837), items: [741, 748, 758, 769, 836], want_response: false }], wants: [713, 714, 715, 716, 731], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [721, 725, 727, 738, 741, 748, 758, 769, 836], provide: [(713, true), (714, true), (715, true), (716, true), (731, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 731, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 721, 725, 727, 738, 741, 748, 758, 769, 836]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 715, 716, 731]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 707, 713, 714, 715, 716, 717, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10038)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 707), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(707, 926), fp: EncodedCountingMonoid(7, SumMonoid(5207)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 605), fp: EncodedCountingMonoid(9, SumMonoid(4949)) }, Fingerprint { range: Range(605, 707), fp: EncodedCountingMonoid(9, SumMonoid(5962)) }, Fingerprint { range: Range(707, 837), fp: EncodedCountingMonoid(11, SumMonoid(8192)) }, Fingerprint { range: Range(837, 926), fp: EncodedCountingMonoid(10, SumMonoid(8892)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(605, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(707, 715), fp: EncodedCountingMonoid(3, SumMonoid(2134)) }, Fingerprint { range: Range(715, 837), fp: EncodedCountingMonoid(3, SumMonoid(2148)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 605), items: [516], want_response: true }, ItemSet { range: Range(684, 707), items: [684, 685], want_response: true }, ItemSet { range: Range(837, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(605, 662), fp: EncodedCountingMonoid(3, SumMonoid(1859)) }, Fingerprint { range: Range(662, 684), fp: EncodedCountingMonoid(3, SumMonoid(2019)) }, Fingerprint { range: Range(715, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 837), fp: EncodedCountingMonoid(5, SumMonoid(3852)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 605), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 707), items: [690, 694, 700], want_response: false }, ItemSet { range: Range(837, 926), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(707, 715), items: [712], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(707, 715), items: [707, 713, 714], want_response: false }, ItemSet { range: Range(605, 662), items: [619, 630], want_response: true }, ItemSet { range: Range(662, 684), items: [667], want_response: true }, ItemSet { range: Range(715, 717), items: [715, 716], want_response: true }, ItemSet { range: Range(717, 741), items: [717], want_response: true }, ItemSet { range: Range(741, 837), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 837, 842, 857, 879, 885, 909, 916, 918, 924, 712], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(605, 662), items: [605, 609, 645], want_response: false }, ItemSet { range: Range(662, 684), items: [662, 674, 683], want_response: false }, ItemSet { range: Range(715, 717), items: [], want_response: false }, ItemSet { range: Range(717, 741), items: [717, 721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 837), items: [741, 748, 758, 769, 836], want_response: false }], wants: [707, 713, 714, 619, 630, 667, 715, 716], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (700, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (712, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [605, 609, 645, 662, 674, 683, 721, 725, 727, 738, 741, 748, 758, 769, 836], provide: [(707, true), (713, true), (714, true), (619, true), (630, true), (667, true), (715, true), (716, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 707, 713, 714, 715, 716, 717, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 837, 842, 857, 879, 885, 909, 916, 918, 924, 712, 605, 609, 645, 662, 674, 683, 721, 725, 727, 738, 741, 748, 758, 769, 836]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 707, 713, 714, 619, 630, 667, 715, 716]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 707, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 707, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 707, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 719, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10050)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5219)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 837), fp: EncodedCountingMonoid(10, SumMonoid(7480)) }, Fingerprint { range: Range(837, 926), fp: EncodedCountingMonoid(10, SumMonoid(8892)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(716, 837), fp: EncodedCountingMonoid(3, SumMonoid(2152)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(837, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(716, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 837), fp: EncodedCountingMonoid(5, SumMonoid(3852)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(837, 926), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(716, 719), items: [716, 717], want_response: true }, ItemSet { range: Range(719, 741), items: [719], want_response: true }, ItemSet { range: Range(741, 837), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(716, 719), items: [717], want_response: false }, ItemSet { range: Range(719, 741), items: [721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 837), items: [741, 748, 758, 769, 836], want_response: false }], wants: [713, 714, 715, 716, 719], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [721, 725, 727, 738, 741, 748, 758, 769, 836], provide: [(713, true), (714, true), (715, true), (716, true), (719, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 719, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 721, 725, 727, 738, 741, 748, 758, 769, 836]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 715, 716, 719]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(15, SumMonoid(9331)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(7, SumMonoid(4145)) }, Fingerprint { range: Range(685, 926), fp: EncodedCountingMonoid(7, SumMonoid(5185)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 769), fp: EncodedCountingMonoid(12, SumMonoid(8671)) }, Fingerprint { range: Range(769, 926), fp: EncodedCountingMonoid(12, SumMonoid(10497)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(685, 715), fp: EncodedCountingMonoid(3, SumMonoid(2112)) }, Fingerprint { range: Range(715, 769), fp: EncodedCountingMonoid(3, SumMonoid(2148)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(769, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(715, 738), fp: EncodedCountingMonoid(4, SumMonoid(2890)) }, Fingerprint { range: Range(738, 769), fp: EncodedCountingMonoid(4, SumMonoid(2985)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(769, 926), items: [769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(685, 700), items: [690, 694], want_response: true }, ItemSet { range: Range(700, 715), items: [700, 712], want_response: true }], wants: [515, 516, 619, 630, 667, 684], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 700), items: [685], want_response: false }, ItemSet { range: Range(700, 715), items: [713, 714], want_response: false }, ItemSet { range: Range(715, 717), items: [715, 716], want_response: true }, ItemSet { range: Range(717, 738), items: [717], want_response: true }, ItemSet { range: Range(738, 769), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 690, 694, 700, 712], provide: [(515, true), (516, true), (619, true), (630, true), (667, true), (684, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 717), items: [], want_response: false }, ItemSet { range: Range(717, 738), items: [717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 769), items: [738, 741, 748, 758], want_response: false }], wants: [685, 713, 714, 715, 716], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (690, true), (694, true), (700, true), (712, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [721, 725, 727, 738, 741, 748, 758], provide: [(685, true), (713, true), (714, true), (715, true), (716, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(15, SumMonoid(9331)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(7, SumMonoid(4145)) }, Fingerprint { range: Range(685, 926), fp: EncodedCountingMonoid(7, SumMonoid(5185)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 769), fp: EncodedCountingMonoid(12, SumMonoid(8671)) }, Fingerprint { range: Range(769, 926), fp: EncodedCountingMonoid(12, SumMonoid(10497)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(685, 715), fp: EncodedCountingMonoid(3, SumMonoid(2112)) }, Fingerprint { range: Range(715, 769), fp: EncodedCountingMonoid(3, SumMonoid(2148)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(769, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(715, 738), fp: EncodedCountingMonoid(4, SumMonoid(2890)) }, Fingerprint { range: Range(738, 769), fp: EncodedCountingMonoid(4, SumMonoid(2985)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(769, 926), items: [769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(685, 700), items: [690, 694], want_response: true }, ItemSet { range: Range(700, 715), items: [700, 712], want_response: true }], wants: [515, 516, 619, 630, 667, 684], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 700), items: [685], want_response: false }, ItemSet { range: Range(700, 715), items: [713, 714], want_response: false }, ItemSet { range: Range(715, 717), items: [715, 716], want_response: true }, ItemSet { range: Range(717, 738), items: [717], want_response: true }, ItemSet { range: Range(738, 769), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 690, 694, 700, 712], provide: [(515, true), (516, true), (619, true), (630, true), (667, true), (684, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 717), items: [], want_response: false }, ItemSet { range: Range(717, 738), items: [717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 769), items: [738, 741, 748, 758], want_response: false }], wants: [685, 713, 714, 715, 716], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (690, true), (694, true), (700, true), (712, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [721, 725, 727, 738, 741, 748, 758], provide: [(685, true), (713, true), (714, true), (715, true), (716, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10049)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5218)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 837), fp: EncodedCountingMonoid(10, SumMonoid(7480)) }, Fingerprint { range: Range(837, 926), fp: EncodedCountingMonoid(10, SumMonoid(8892)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(716, 837), fp: EncodedCountingMonoid(3, SumMonoid(2151)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(837, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(716, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 837), fp: EncodedCountingMonoid(5, SumMonoid(3852)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(837, 926), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(716, 718), items: [716, 717], want_response: true }, ItemSet { range: Range(718, 741), items: [718], want_response: true }, ItemSet { range: Range(741, 837), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(716, 718), items: [717], want_response: false }, ItemSet { range: Range(718, 741), items: [721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 837), items: [741, 748, 758, 769, 836], want_response: false }], wants: [713, 714, 715, 716, 718], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [721, 725, 727, 738, 741, 748, 758, 769, 836], provide: [(713, true), (714, true), (715, true), (716, true), (718, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 721, 725, 727, 738, 741, 748, 758, 769, 836]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 715, 716, 718]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(15, SumMonoid(9331)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 685), fp: EncodedCountingMonoid(7, SumMonoid(4145)) }, Fingerprint { range: Range(685, 926), fp: EncodedCountingMonoid(7, SumMonoid(5185)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 601), fp: EncodedCountingMonoid(8, SumMonoid(4348)) }, Fingerprint { range: Range(601, 685), fp: EncodedCountingMonoid(7, SumMonoid(4479)) }, Fingerprint { range: Range(685, 769), fp: EncodedCountingMonoid(12, SumMonoid(8671)) }, Fingerprint { range: Range(769, 926), fp: EncodedCountingMonoid(12, SumMonoid(10497)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(685, 715), fp: EncodedCountingMonoid(3, SumMonoid(2112)) }, Fingerprint { range: Range(715, 769), fp: EncodedCountingMonoid(3, SumMonoid(2148)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(601, 667), items: [619, 630], want_response: true }, ItemSet { range: Range(667, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(769, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(715, 738), fp: EncodedCountingMonoid(4, SumMonoid(2890)) }, Fingerprint { range: Range(738, 769), fp: EncodedCountingMonoid(4, SumMonoid(2985)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(601, 667), items: [601, 605, 609, 645, 662], want_response: false }, ItemSet { range: Range(667, 685), items: [674, 683], want_response: false }, ItemSet { range: Range(769, 926), items: [769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(685, 700), items: [690, 694], want_response: true }, ItemSet { range: Range(700, 715), items: [700, 712], want_response: true }], wants: [515, 516, 619, 630, 667, 684], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(685, 700), items: [685], want_response: false }, ItemSet { range: Range(700, 715), items: [713, 714], want_response: false }, ItemSet { range: Range(715, 717), items: [715, 716], want_response: true }, ItemSet { range: Range(717, 738), items: [717], want_response: true }, ItemSet { range: Range(738, 769), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 690, 694, 700, 712], provide: [(515, true), (516, true), (619, true), (630, true), (667, true), (684, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(715, 717), items: [], want_response: false }, ItemSet { range: Range(717, 738), items: [717, 721, 725, 727], want_response: false }, ItemSet { range: Range(738, 769), items: [738, 741, 748, 758], want_response: false }], wants: [685, 713, 714, 715, 716], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (609, true), (645, true), (662, true), (674, true), (683, true), (769, true), (836, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (690, true), (694, true), (700, true), (712, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [721, 725, 727, 738, 741, 748, 758], provide: [(685, true), (713, true), (714, true), (715, true), (716, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 605, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10049)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(40, SumMonoid(10522)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(39, SumMonoid(27995)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5218)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(10, SumMonoid(5554)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 837), fp: EncodedCountingMonoid(10, SumMonoid(7480)) }, Fingerprint { range: Range(837, 926), fp: EncodedCountingMonoid(10, SumMonoid(8892)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(716, 837), fp: EncodedCountingMonoid(3, SumMonoid(2151)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(837, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(716, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 837), fp: EncodedCountingMonoid(5, SumMonoid(3852)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601, 605], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(837, 926), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(716, 718), items: [716, 717], want_response: true }, ItemSet { range: Range(718, 741), items: [718], want_response: true }, ItemSet { range: Range(741, 837), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(716, 718), items: [717], want_response: false }, ItemSet { range: Range(718, 741), items: [721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 837), items: [741, 748, 758, 769, 836], want_response: false }], wants: [713, 714, 715, 716, 718], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (605, true), (690, true), (694, true), (700, true), (712, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [721, 725, 727, 738, 741, 748, 758, 769, 836], provide: [(713, true), (714, true), (715, true), (716, true), (718, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 605, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 721, 725, 727, 738, 741, 748, 758, 769, 836]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 605, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 715, 716, 718]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10049)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 488), fp: EncodedCountingMonoid(39, SumMonoid(10034)) }, Fingerprint { range: Range(488, 926), fp: EncodedCountingMonoid(39, SumMonoid(27878)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(488, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5218)) }], item_sets: [ItemSet { range: Range(1, 488), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(488, 609), fp: EncodedCountingMonoid(10, SumMonoid(5437)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 837), fp: EncodedCountingMonoid(10, SumMonoid(7480)) }, Fingerprint { range: Range(837, 926), fp: EncodedCountingMonoid(10, SumMonoid(8892)) }], item_sets: [ItemSet { range: Range(1, 488), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(716, 837), fp: EncodedCountingMonoid(3, SumMonoid(2151)) }], item_sets: [ItemSet { range: Range(488, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(837, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(716, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 837), fp: EncodedCountingMonoid(5, SumMonoid(3852)) }], item_sets: [ItemSet { range: Range(488, 516), items: [488, 492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(837, 926), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (143, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(716, 718), items: [716, 717], want_response: true }, ItemSet { range: Range(718, 741), items: [718], want_response: true }, ItemSet { range: Range(741, 837), items: [], want_response: true }], wants: [488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(716, 718), items: [717], want_response: false }, ItemSet { range: Range(718, 741), items: [721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 837), items: [741, 748, 758, 769, 836], want_response: false }], wants: [713, 714, 715, 716, 718], provide: [(488, true), (492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (700, true), (712, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [721, 725, 727, 738, 741, 748, 758, 769, 836], provide: [(713, true), (714, true), (715, true), (716, true), (718, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 721, 725, 727, 738, 741, 748, 758, 769, 836]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 143, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 715, 716, 718]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10049)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(39, SumMonoid(10379)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(38, SumMonoid(27390)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5218)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(9, SumMonoid(4949)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 837), fp: EncodedCountingMonoid(10, SumMonoid(7480)) }, Fingerprint { range: Range(837, 926), fp: EncodedCountingMonoid(10, SumMonoid(8892)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(716, 837), fp: EncodedCountingMonoid(3, SumMonoid(2151)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(837, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(716, 741), fp: EncodedCountingMonoid(5, SumMonoid(3628)) }, Fingerprint { range: Range(741, 837), fp: EncodedCountingMonoid(5, SumMonoid(3852)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(837, 926), items: [837, 842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(716, 718), items: [716, 717], want_response: true }, ItemSet { range: Range(718, 741), items: [718], want_response: true }, ItemSet { range: Range(741, 837), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(716, 718), items: [717], want_response: false }, ItemSet { range: Range(718, 741), items: [721, 725, 727, 738], want_response: false }, ItemSet { range: Range(741, 837), items: [741, 748, 758, 769, 836], want_response: false }], wants: [713, 714, 715, 716, 718], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (700, true), (712, true), (837, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [721, 725, 727, 738, 741, 748, 758, 769, 836], provide: [(713, true), (714, true), (715, true), (716, true), (718, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 837, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 721, 725, 727, 738, 741, 748, 758, 769, 836]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 674, 683, 690, 694, 700, 712, 717, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 715, 716, 718]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 674, 683, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10049)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 488), fp: EncodedCountingMonoid(38, SumMonoid(9891)) }, Fingerprint { range: Range(488, 926), fp: EncodedCountingMonoid(38, SumMonoid(27161)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(488, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5218)) }], item_sets: [ItemSet { range: Range(1, 488), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(488, 609), fp: EncodedCountingMonoid(10, SumMonoid(5437)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(10, SumMonoid(7600)) }, Fingerprint { range: Range(842, 926), fp: EncodedCountingMonoid(9, SumMonoid(8055)) }], item_sets: [ItemSet { range: Range(1, 488), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(716, 842), fp: EncodedCountingMonoid(3, SumMonoid(2151)) }], item_sets: [ItemSet { range: Range(488, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(842, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(716, 748), fp: EncodedCountingMonoid(5, SumMonoid(3652)) }, Fingerprint { range: Range(748, 842), fp: EncodedCountingMonoid(5, SumMonoid(3948)) }], item_sets: [ItemSet { range: Range(488, 516), items: [488, 492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 926), items: [842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(716, 718), items: [716, 717], want_response: true }, ItemSet { range: Range(718, 748), items: [718], want_response: true }, ItemSet { range: Range(748, 842), items: [], want_response: true }], wants: [488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(716, 718), items: [], want_response: false }, ItemSet { range: Range(718, 748), items: [721, 725, 727, 738, 741], want_response: false }, ItemSet { range: Range(748, 842), items: [748, 758, 769, 836, 837], want_response: false }], wants: [713, 714, 715, 716, 717, 718], provide: [(488, true), (492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [721, 725, 727, 738, 741, 748, 758, 769, 836, 837], provide: [(713, true), (714, true), (715, true), (716, true), (717, true), (718, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 674, 683, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 715, 716, 717, 718]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 683, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10049)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 488), fp: EncodedCountingMonoid(38, SumMonoid(9891)) }, Fingerprint { range: Range(488, 926), fp: EncodedCountingMonoid(37, SumMonoid(26487)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(488, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5218)) }], item_sets: [ItemSet { range: Range(1, 488), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(488, 601), fp: EncodedCountingMonoid(9, SumMonoid(4836)) }, Fingerprint { range: Range(601, 713), fp: EncodedCountingMonoid(9, SumMonoid(5996)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(10, SumMonoid(7600)) }, Fingerprint { range: Range(842, 926), fp: EncodedCountingMonoid(9, SumMonoid(8055)) }], item_sets: [ItemSet { range: Range(1, 488), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(601, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(716, 842), fp: EncodedCountingMonoid(3, SumMonoid(2151)) }], item_sets: [ItemSet { range: Range(488, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 601), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(842, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(601, 662), fp: EncodedCountingMonoid(3, SumMonoid(1855)) }, Fingerprint { range: Range(716, 748), fp: EncodedCountingMonoid(5, SumMonoid(3652)) }, Fingerprint { range: Range(748, 842), fp: EncodedCountingMonoid(5, SumMonoid(3948)) }], item_sets: [ItemSet { range: Range(488, 516), items: [488, 492, 514], want_response: false }, ItemSet { range: Range(516, 601), items: [528, 535, 540, 562, 585, 592], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 926), items: [842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(662, 684), items: [662, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(662, 684), items: [667], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(601, 662), items: [619, 630], want_response: true }, ItemSet { range: Range(716, 718), items: [716, 717], want_response: true }, ItemSet { range: Range(718, 748), items: [718], want_response: true }, ItemSet { range: Range(748, 842), items: [], want_response: true }], wants: [488, 492, 528, 535, 540, 562, 585, 592, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 662, 683], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(601, 662), items: [601, 609, 645], want_response: false }, ItemSet { range: Range(716, 718), items: [], want_response: false }, ItemSet { range: Range(718, 748), items: [721, 725, 727, 738, 741], want_response: false }, ItemSet { range: Range(748, 842), items: [748, 758, 769, 836, 837], want_response: false }], wants: [667, 713, 714, 715, 619, 630, 716, 717, 718], provide: [(488, true), (492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (662, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [601, 609, 645, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837], provide: [(667, true), (713, true), (714, true), (715, true), (619, true), (630, true), (716, true), (717, true), (718, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(601, true), (609, true), (645, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 662, 683, 601, 609, 645, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 683, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 667, 713, 714, 715, 619, 630, 716, 717, 718]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 609, 619, 630, 645, 662, 667, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 718, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 609, 619, 630, 645, 662, 667, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 718, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 609, 619, 630, 645, 662, 667, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 718, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 674, 683, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10049)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 488), fp: EncodedCountingMonoid(38, SumMonoid(9891)) }, Fingerprint { range: Range(488, 926), fp: EncodedCountingMonoid(38, SumMonoid(27161)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(488, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5218)) }], item_sets: [ItemSet { range: Range(1, 488), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(488, 609), fp: EncodedCountingMonoid(10, SumMonoid(5437)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(10, SumMonoid(7600)) }, Fingerprint { range: Range(842, 926), fp: EncodedCountingMonoid(9, SumMonoid(8055)) }], item_sets: [ItemSet { range: Range(1, 488), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(716, 842), fp: EncodedCountingMonoid(3, SumMonoid(2151)) }], item_sets: [ItemSet { range: Range(488, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(842, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(716, 748), fp: EncodedCountingMonoid(5, SumMonoid(3652)) }, Fingerprint { range: Range(748, 842), fp: EncodedCountingMonoid(5, SumMonoid(3948)) }], item_sets: [ItemSet { range: Range(488, 516), items: [488, 492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 926), items: [842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(716, 718), items: [716, 717], want_response: true }, ItemSet { range: Range(718, 748), items: [718], want_response: true }, ItemSet { range: Range(748, 842), items: [], want_response: true }], wants: [488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(716, 718), items: [], want_response: false }, ItemSet { range: Range(718, 748), items: [721, 725, 727, 738, 741], want_response: false }, ItemSet { range: Range(748, 842), items: [748, 758, 769, 836, 837], want_response: false }], wants: [713, 714, 715, 716, 717, 718], provide: [(488, true), (492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [721, 725, 727, 738, 741, 748, 758, 769, 836, 837], provide: [(713, true), (714, true), (715, true), (716, true), (717, true), (718, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 674, 683, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 715, 716, 717, 718]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 674, 683, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10049)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 488), fp: EncodedCountingMonoid(38, SumMonoid(9891)) }, Fingerprint { range: Range(488, 926), fp: EncodedCountingMonoid(38, SumMonoid(27161)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(488, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5218)) }], item_sets: [ItemSet { range: Range(1, 488), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(488, 609), fp: EncodedCountingMonoid(10, SumMonoid(5437)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(10, SumMonoid(7600)) }, Fingerprint { range: Range(842, 926), fp: EncodedCountingMonoid(9, SumMonoid(8055)) }], item_sets: [ItemSet { range: Range(1, 488), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(716, 842), fp: EncodedCountingMonoid(3, SumMonoid(2151)) }], item_sets: [ItemSet { range: Range(488, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(842, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(716, 748), fp: EncodedCountingMonoid(5, SumMonoid(3652)) }, Fingerprint { range: Range(748, 842), fp: EncodedCountingMonoid(5, SumMonoid(3948)) }], item_sets: [ItemSet { range: Range(488, 516), items: [488, 492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 926), items: [842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (455, true), (459, true), (479, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(716, 718), items: [716, 717], want_response: true }, ItemSet { range: Range(718, 748), items: [718], want_response: true }, ItemSet { range: Range(748, 842), items: [], want_response: true }], wants: [488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(716, 718), items: [], want_response: false }, ItemSet { range: Range(718, 748), items: [721, 725, 727, 738, 741], want_response: false }, ItemSet { range: Range(748, 842), items: [748, 758, 769, 836, 837], want_response: false }], wants: [713, 714, 715, 716, 717, 718], provide: [(488, true), (492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [721, 725, 727, 738, 741, 748, 758, 769, 836, 837], provide: [(713, true), (714, true), (715, true), (716, true), (717, true), (718, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 455, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 674, 683, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 715, 716, 717, 718]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 674, 683, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10049)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(38, SumMonoid(9924)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(37, SumMonoid(26673)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5218)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(9, SumMonoid(4949)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(10, SumMonoid(7600)) }, Fingerprint { range: Range(842, 926), fp: EncodedCountingMonoid(9, SumMonoid(8055)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(716, 842), fp: EncodedCountingMonoid(3, SumMonoid(2151)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(842, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(716, 748), fp: EncodedCountingMonoid(5, SumMonoid(3652)) }, Fingerprint { range: Range(748, 842), fp: EncodedCountingMonoid(5, SumMonoid(3948)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 926), items: [842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (79, true), (88, true), (93, true), (96, true), (101, true), (142, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(716, 718), items: [716, 717], want_response: true }, ItemSet { range: Range(718, 748), items: [718], want_response: true }, ItemSet { range: Range(748, 842), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(716, 718), items: [], want_response: false }, ItemSet { range: Range(718, 748), items: [721, 725, 727, 738, 741], want_response: false }, ItemSet { range: Range(748, 842), items: [748, 758, 769, 836, 837], want_response: false }], wants: [713, 714, 715, 716, 717, 718], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [721, 725, 727, 738, 741, 748, 758, 769, 836, 837], provide: [(713, true), (714, true), (715, true), (716, true), (717, true), (718, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837]
[INFO] [stdout] b all: {18, 42, 44, 62, 79, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 674, 683, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 715, 716, 717, 718]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 674, 683, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10049)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(37, SumMonoid(9845)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(37, SumMonoid(26673)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5218)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(9, SumMonoid(4949)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(10, SumMonoid(7600)) }, Fingerprint { range: Range(842, 926), fp: EncodedCountingMonoid(9, SumMonoid(8055)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(716, 842), fp: EncodedCountingMonoid(3, SumMonoid(2151)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(842, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(716, 748), fp: EncodedCountingMonoid(5, SumMonoid(3652)) }, Fingerprint { range: Range(748, 842), fp: EncodedCountingMonoid(5, SumMonoid(3948)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 926), items: [842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (88, true), (93, true), (96, true), (101, true), (142, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(716, 718), items: [716, 717], want_response: true }, ItemSet { range: Range(718, 748), items: [718], want_response: true }, ItemSet { range: Range(748, 842), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(716, 718), items: [], want_response: false }, ItemSet { range: Range(718, 748), items: [721, 725, 727, 738, 741], want_response: false }, ItemSet { range: Range(748, 842), items: [748, 758, 769, 836, 837], want_response: false }], wants: [713, 714, 715, 716, 717, 718], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [721, 725, 727, 738, 741, 748, 758, 769, 836, 837], provide: [(713, true), (714, true), (715, true), (716, true), (717, true), (718, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837]
[INFO] [stdout] b all: {18, 42, 44, 62, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 674, 683, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 715, 716, 717, 718]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 88, 93, 96, 101, 142, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 674, 683, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10049)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 514), fp: EncodedCountingMonoid(37, SumMonoid(10175)) }, Fingerprint { range: Range(514, 926), fp: EncodedCountingMonoid(36, SumMonoid(26181)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5218)) }], item_sets: [ItemSet { range: Range(1, 514), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 645), fp: EncodedCountingMonoid(9, SumMonoid(5066)) }, Fingerprint { range: Range(645, 713), fp: EncodedCountingMonoid(8, SumMonoid(5460)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(10, SumMonoid(7600)) }, Fingerprint { range: Range(842, 926), fp: EncodedCountingMonoid(9, SumMonoid(8055)) }], item_sets: [ItemSet { range: Range(1, 514), items: [18, 42, 44, 62, 88, 93, 96, 101, 142, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488, 492], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(514, 619), fp: EncodedCountingMonoid(3, SumMonoid(1545)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(716, 842), fp: EncodedCountingMonoid(3, SumMonoid(2151)) }], item_sets: [ItemSet { range: Range(619, 645), items: [619, 630], want_response: true }, ItemSet { range: Range(645, 685), items: [667, 684], want_response: true }, ItemSet { range: Range(685, 713), items: [685], want_response: true }, ItemSet { range: Range(842, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 88, 93, 96, 101, 142, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488, 492], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(514, 585), fp: EncodedCountingMonoid(5, SumMonoid(2679)) }, Fingerprint { range: Range(585, 619), fp: EncodedCountingMonoid(4, SumMonoid(2387)) }, Fingerprint { range: Range(716, 748), fp: EncodedCountingMonoid(5, SumMonoid(3652)) }, Fingerprint { range: Range(748, 842), fp: EncodedCountingMonoid(5, SumMonoid(3948)) }], item_sets: [ItemSet { range: Range(619, 645), items: [], want_response: false }, ItemSet { range: Range(645, 685), items: [645, 662, 674, 683], want_response: false }, ItemSet { range: Range(685, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 926), items: [842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [619, 630, 667, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (88, true), (93, true), (96, true), (101, true), (142, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (459, true), (479, true), (488, true), (492, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(514, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 585), items: [516], want_response: true }, ItemSet { range: Range(585, 619), items: [], want_response: true }, ItemSet { range: Range(716, 718), items: [716, 717], want_response: true }, ItemSet { range: Range(718, 748), items: [718], want_response: true }, ItemSet { range: Range(748, 842), items: [], want_response: true }], wants: [645, 662, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924], provide: [(619, true), (630, true), (667, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(514, 516), items: [514], want_response: false }, ItemSet { range: Range(516, 585), items: [528, 535, 540, 562], want_response: false }, ItemSet { range: Range(585, 619), items: [585, 592, 601, 609], want_response: false }, ItemSet { range: Range(716, 718), items: [], want_response: false }, ItemSet { range: Range(718, 748), items: [721, 725, 727, 738, 741], want_response: false }, ItemSet { range: Range(748, 842), items: [748, 758, 769, 836, 837], want_response: false }], wants: [713, 714, 715, 515, 516, 716, 717, 718], provide: [(645, true), (662, true), (674, true), (683, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [528, 535, 540, 562, 585, 592, 601, 609, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837], provide: [(713, true), (714, true), (715, true), (515, true), (516, true), (716, true), (717, true), (718, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (609, true), (721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 88, 93, 96, 101, 142, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488, 492, 645, 662, 674, 683, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 528, 535, 540, 562, 585, 592, 601, 609, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837]
[INFO] [stdout] b all: {18, 42, 44, 62, 88, 93, 96, 101, 142, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 674, 683, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 619, 630, 667, 684, 685, 713, 714, 715, 515, 516, 716, 717, 718]
[INFO] [stdout] 
[INFO] [stdout]   all vec: [1, 18, 42, 44, 62, 88, 93, 96, 101, 142, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 718, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999]
[INFO] [stdout] 
[INFO] [stdout] a all vec: [1, 18, 42, 44, 62, 88, 93, 96, 101, 142, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 718, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] b all vec: [1, 18, 42, 44, 62, 88, 93, 96, 101, 142, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488, 492, 514, 515, 516, 528, 535, 540, 562, 585, 592, 601, 609, 619, 630, 645, 662, 667, 674, 683, 684, 685, 690, 694, 700, 712, 713, 714, 715, 716, 717, 718, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999], true true
[INFO] [stdout] 
[INFO] [stdout] true, true
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 674, 683, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10049)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(37, SumMonoid(9845)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(37, SumMonoid(26673)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5218)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(9, SumMonoid(4949)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(10, SumMonoid(7600)) }, Fingerprint { range: Range(842, 926), fp: EncodedCountingMonoid(9, SumMonoid(8055)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(609, 684), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(713, 716), fp: EncodedCountingMonoid(3, SumMonoid(2142)) }, Fingerprint { range: Range(716, 842), fp: EncodedCountingMonoid(3, SumMonoid(2151)) }], item_sets: [ItemSet { range: Range(492, 516), items: [514, 515], want_response: true }, ItemSet { range: Range(516, 609), items: [516], want_response: true }, ItemSet { range: Range(684, 713), items: [684, 685], want_response: true }, ItemSet { range: Range(842, 926), items: [925], want_response: true }], wants: [18, 42, 44, 62, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488], provide: [(1, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(609, 674), fp: EncodedCountingMonoid(3, SumMonoid(1916)) }, Fingerprint { range: Range(716, 748), fp: EncodedCountingMonoid(5, SumMonoid(3652)) }, Fingerprint { range: Range(748, 842), fp: EncodedCountingMonoid(5, SumMonoid(3948)) }], item_sets: [ItemSet { range: Range(492, 516), items: [492, 514], want_response: false }, ItemSet { range: Range(516, 609), items: [528, 535, 540, 562, 585, 592, 601], want_response: false }, ItemSet { range: Range(684, 713), items: [690, 694, 700, 712], want_response: false }, ItemSet { range: Range(842, 926), items: [842, 857, 879, 885, 909, 916, 918, 924, 925], want_response: false }, ItemSet { range: Range(674, 684), items: [674, 683], want_response: true }, ItemSet { range: Range(713, 716), items: [], want_response: true }], wants: [515, 516, 684, 685], provide: [(18, true), (42, true), (44, true), (62, true), (88, true), (93, true), (96, true), (101, true), (142, true), (162, true), (185, true), (192, true), (199, true), (223, true), (239, true), (243, true), (253, true), (257, true), (261, true), (270, true), (302, true), (314, true), (327, true), (329, true), (340, true), (350, true), (363, true), (371, true), (390, true), (394, true), (434, true), (439, true), (446, true), (450, true), (459, true), (479, true), (488, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [ItemSet { range: Range(674, 684), items: [], want_response: false }, ItemSet { range: Range(713, 716), items: [713, 714, 715], want_response: false }, ItemSet { range: Range(716, 718), items: [716, 717], want_response: true }, ItemSet { range: Range(718, 748), items: [718], want_response: true }, ItemSet { range: Range(748, 842), items: [], want_response: true }], wants: [492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683], provide: [(515, true), (516, true), (684, true), (685, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [ItemSet { range: Range(716, 718), items: [], want_response: false }, ItemSet { range: Range(718, 748), items: [721, 725, 727, 738, 741], want_response: false }, ItemSet { range: Range(748, 842), items: [748, 758, 769, 836, 837], want_response: false }], wants: [713, 714, 715, 716, 717, 718], provide: [(492, true), (528, true), (535, true), (540, true), (562, true), (585, true), (592, true), (601, true), (690, true), (694, true), (700, true), (712, true), (842, true), (857, true), (879, true), (885, true), (909, true), (916, true), (918, true), (924, true), (674, true), (683, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [721, 725, 727, 738, 741, 748, 758, 769, 836, 837], provide: [(713, true), (714, true), (715, true), (716, true), (717, true), (718, true)] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [], item_sets: [], wants: [], provide: [(721, true), (725, true), (727, true), (738, true), (741, true), (748, true), (758, true), (769, true), (836, true), (837, true)] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [], item_sets: [], wants: [], provide: [] }
[INFO] [stdout] a all: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925} + [926, 969, 990, 999, 18, 42, 44, 62, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488, 492, 528, 535, 540, 562, 585, 592, 601, 690, 694, 700, 712, 842, 857, 879, 885, 909, 916, 918, 924, 674, 683, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837]
[INFO] [stdout] b all: {18, 42, 44, 62, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 674, 683, 690, 694, 700, 712, 721, 725, 727, 738, 741, 748, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999} + [1, 515, 516, 684, 685, 713, 714, 715, 716, 717, 718]
[INFO] [stdout] ---test run---
[INFO] [stdout] a items: {1, 514, 515, 516, 619, 630, 667, 684, 685, 713, 714, 715, 716, 717, 718, 925}
[INFO] [stdout] b items: {18, 42, 44, 62, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488, 492, 514, 528, 535, 540, 562, 585, 592, 601, 609, 645, 662, 674, 683, 690, 694, 700, 712, 721, 725, 727, 738, 741, 758, 769, 836, 837, 842, 857, 879, 885, 909, 916, 918, 924, 925, 926, 969, 990, 999}
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(1, 926), fp: EncodedCountingMonoid(16, SumMonoid(10049)) }], item_sets: [ItemSet { range: Range(926, 1), items: [], want_response: true }], wants: [], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(1, 492), fp: EncodedCountingMonoid(37, SumMonoid(9845)) }, Fingerprint { range: Range(492, 926), fp: EncodedCountingMonoid(36, SumMonoid(25925)) }], item_sets: [ItemSet { range: Range(926, 1), items: [926, 969, 990, 999], want_response: false }], wants: [], provide: [] }
[INFO] [stdout] a-----
[INFO] [stdout] a msg: Message { fps: [Fingerprint { range: Range(492, 713), fp: EncodedCountingMonoid(8, SumMonoid(4830)) }, Fingerprint { range: Range(713, 926), fp: EncodedCountingMonoid(7, SumMonoid(5218)) }], item_sets: [ItemSet { range: Range(1, 492), items: [1], want_response: true }], wants: [926, 969, 990, 999], provide: [] }
[INFO] [stdout] b-----
[INFO] [stdout] b msg: Message { fps: [Fingerprint { range: Range(492, 609), fp: EncodedCountingMonoid(9, SumMonoid(4949)) }, Fingerprint { range: Range(609, 713), fp: EncodedCountingMonoid(9, SumMonoid(6069)) }, Fingerprint { range: Range(713, 842), fp: EncodedCountingMonoid(9, SumMonoid(6852)) }, Fingerprint { range: Range(842, 926), fp: EncodedCountingMonoid(9, SumMonoid(8055)) }], item_sets: [ItemSet { range: Range(1, 492), items: [18, 42, 44, 62, 88, 93, 96, 101, 142, 162, 185, 192, 199, 223, 239, 243, 253, 257, 261, 270, 302, 314, 327, 329, 340, 350, 363, 371, 390, 394, 434, 439, 446, 450, 459, 479, 488], want_response: false }], wants: [1], provide: [(926, true), (969, true), (990, true), (999, true)] }
[WARN] too many lines in the log, truncating it
