Index: src/work/edmonds_karp.h
===================================================================
--- src/work/edmonds_karp.h	(revision 194)
+++ src/work/edmonds_karp.h	(revision 196)
@@ -564,10 +564,12 @@
       typename AugGraph::NodeMap<AugEdge> pred(res_graph); 
       for(NodeIt s=G->template first<NodeIt>(); G->valid(s); G->next(s)) {
-	Number f=0;
-	for(OutEdgeIt e=G->template first<OutEdgeIt>(s); G->valid(e); G->next(e))
-	  f+=flow->get(e);
-	if (f<1) {
-	  res_bfs.pushAndSetReached(s);
-	  pred.set(s, AugEdge(INVALID));
+	if (S->get(s)) {
+	  Number f=0;
+	  for(OutEdgeIt e=G->template first<OutEdgeIt>(s); G->valid(e); G->next(e))
+	    f+=flow->get(e);
+	  if (f<1) {
+	    res_bfs.pushAndSetReached(s);
+	    pred.set(s, AugEdge(INVALID));
+	  }
 	}
       }
Index: src/work/marci/makefile
===================================================================
--- src/work/marci/makefile	(revision 194)
+++ src/work/marci/makefile	(revision 196)
@@ -4,12 +4,12 @@
 CXX3 := $(shell type -p g++-3.3 || type -p g++-3.2 || type -p g++-3.0 || type -p g++-3 || echo g++)
 #CXXFLAGS = -W -Wall -ansi -pedantic -I. -I.. -I../alpar
-LEDAROOT ?= /ledasrc/LEDA-4.1
+#LEDAROOT ?= /ledasrc/LEDA-4.1
 BOOSTROOT ?= /home/marci/boost
 INCLUDEDIRS ?= -I../../include -I.. -I. -I../{marci,jacint,alpar,klao,akos,athos} -I$(LEDAROOT)/incl -I$(BOOSTROOT)
 CXXFLAGS = -g -O -W -Wall $(INCLUDEDIRS) -ansi -pedantic
 
-
-BINARIES = edmonds_karp_demo preflow_demo_leda lg_vs_sg leda_graph_demo leda_bfs_dfs max_bipartite_matching_demo
-#preflow_demo_boost edmonds_karp_demo_boost preflow_demo_jacint preflow_demo_athos edmonds_karp_demo_alpar
+LEDABINARIES = lg_vs_sg leda_graph_demo leda_bfs_dfs
+BINARIES = edmonds_karp_demo max_bipartite_matching_demo
+#preflow_demo_boost edmonds_karp_demo_boost preflow_demo_jacint preflow_demo_athos edmonds_karp_demo_alpar preflow_demo_leda
 
 all: $(BINARIES)
Index: src/work/marci/max_bipartite_matching_demo.cc
===================================================================
--- src/work/marci/max_bipartite_matching_demo.cc	(revision 195)
+++ src/work/marci/max_bipartite_matching_demo.cc	(revision 196)
@@ -5,6 +5,7 @@
 #include <cstdlib>
 
-#include <LEDA/graph.h>
-#include <leda_graph_wrapper.h>
+//#include <LEDA/graph.h>
+//#include <leda_graph_wrapper.h>
+#include <list_graph.h>
 #include <dimacs.h>
 #include <time_measure.h>
@@ -39,7 +40,9 @@
 
 int main() {
-  leda::graph g;
-  typedef LedaGraphWrapper<leda::graph> Graph;
-  Graph G(g);
+//   leda::graph g;
+//   typedef LedaGraphWrapper<leda::graph> Graph;
+//   Graph G(g);
+  typedef ListGraph Graph;
+  Graph G;
 
   typedef Graph::Node Node;
@@ -62,15 +65,15 @@
     t_nodes.push_back(G.addNode());
   }
-//   random_init();
-//   for(int i=0; i<6; ++i) {
-//     G.addEdge(s_nodes[random(4)], t_nodes[random(4)]);
-//   }
+  random_init();
+  for(int i=0; i<6; ++i) {
+    G.addEdge(s_nodes[random(4)], t_nodes[random(4)]);
+  }
   
-  G.addEdge(s_nodes[2], t_nodes[4-4]);
-  G.addEdge(s_nodes[2], t_nodes[7-4]);
-  G.addEdge(s_nodes[2], t_nodes[4-4]);
-  G.addEdge(s_nodes[3], t_nodes[6-4]);
-  G.addEdge(s_nodes[3], t_nodes[5-4]);
-  G.addEdge(s_nodes[3], t_nodes[5-4]);
+//   G.addEdge(s_nodes[2], t_nodes[4-4]);
+//   G.addEdge(s_nodes[2], t_nodes[7-4]);
+//   G.addEdge(s_nodes[2], t_nodes[4-4]);
+//   G.addEdge(s_nodes[3], t_nodes[6-4]);
+//   G.addEdge(s_nodes[3], t_nodes[5-4]);
+//   G.addEdge(s_nodes[3], t_nodes[5-4]);
 
 
