Index: src/work/marci/bfs_iterator.h
===================================================================
--- src/work/marci/bfs_iterator.h	(revision 414)
+++ src/work/marci/bfs_iterator.h	(revision 415)
@@ -128,7 +128,8 @@
     Bfs<Graph, ReachedMap, PredMap, DistMap> operator++() {
       Parent::operator++();
-      if (this->graph->valid(this->actual_edge) && this->b_node_newly_reached) {
-	pred.set(s, actual_edge);
-	dist.set(s, dist[this->aNode()]);
+      if (this->graph->valid(this->actual_edge) && this->b_node_newly_reached) 
+      {
+	pred.set(this->bNode(), this->actual_edge);
+	dist.set(this->bNode(), dist[this->aNode()]);
       }
       return *this;
Index: src/work/marci/edmonds_karp_demo.cc
===================================================================
--- src/work/marci/edmonds_karp_demo.cc	(revision 390)
+++ src/work/marci/edmonds_karp_demo.cc	(revision 415)
@@ -4,5 +4,5 @@
 
 #include <list_graph.h>
-//#include <smart_graph.h>
+#include <smart_graph.h>
 #include <dimacs.h>
 #include <edmonds_karp.h>
@@ -38,6 +38,6 @@
   typedef ListGraph MutableGraph;
 
-//  typedef SmartGraph Graph;
-  typedef ListGraph Graph;
+  typedef SmartGraph Graph;
+  //  typedef ListGraph Graph;
   typedef Graph::Node Node;
   typedef Graph::EdgeIt EdgeIt;
