worked on rangeRoads. still needs testing to figure out if all cases work properly