struct Interval{
Interval(size_t f,size_t s,bool o = false):first(f),second(s),oriented(o){}
bool operator==(const Interval& i){
return first == i.first && second == i.second && oriented == i.oriented;
}
struct Interval{
Interval(size_t f,size_t s,bool o = false):first(f),second(s),oriented(o){}
bool operator==(const Interval& i){
return first == i.first && second == i.second && oriented == i.oriented;
}