```rust
let mut segments = vec![]; for i in 0..10 { let n = (i5, 5i+5, i); //(leftbound,rightbound,segment_id); inclusive bounds segments.push( n ); }
let t : treez::seg::TreeSeg = treez::seg::TreeSeg::init( segments.asslice() ); let querysegs: HashSet<_> = t.getsegsfrom_bound( (15,20) ).iter().cloned().collect();
let check: HashSet<_> = [ 2, 3, 4 ].iter().cloned().collect(); println!( "query segs: {:?}", querysegs ); assert!( check.intersection(&querysegs).count() == check.len() );
```