class IntervalSkipList::Node

def demote_outbound_markers(path)

def demote_outbound_markers(path)
  demoted = []
  new_demoted = []
  top_level.downto(0) do |i|
    forward_markers[i].each do |marker|
      new_demoted.push(marker) unless path[i].forward_markers[i].include?(marker)
    end
    demoted.each do |marker|
      forward[i].place_marker_on_outbound_path(marker, i, forward[i + 1])
      new_demoted.push(marker) unless path[i].forward_markers[i].include?(marker)
    end
    demoted = new_demoted
    new_demoted = []
  end
end