when going downstream, comparison is based on feature end
when going upstream, comparison is based on feature start