class RGL::EdmondsKarpAlgorithm::EdmondsKarpBFSIterator

def follow_edge?(u, v)

def follow_edge?(u, v)
  # follow only edges with positive residual capacity
  super && @residual_capacities[u, v] > 0
end

def handle_tree_edge(u, v)

def handle_tree_edge(u, v)
  super
  @parents_map[v] = u
end

def initialize(graph, start, stop, residual_capacities)

def initialize(graph, start, stop, residual_capacities)
  super(graph, start)
  @residual_capacities = residual_capacities
  @stop_vertex = stop
end

def reset

def reset
  super
  @parents_map = {}
end