Index: src/hugo/max_flow.h
===================================================================
--- src/hugo/max_flow.h	(revision 735)
+++ src/hugo/max_flow.h	(revision 745)
@@ -141,5 +141,5 @@
     ///
     MaxFlow(const Graph& _G, Node _s, Node _t,
-		   const CapMap& _capacity, FlowMap& _flow) :
+	    const CapMap& _capacity, FlowMap& _flow) :
       g(&_G), s(_s), t(_t), capacity(&_capacity),
       flow(&_flow), n(_G.nodeNum()), level(_G), excess(_G,0), 
@@ -218,5 +218,4 @@
       VecFirst first(n, INVALID);
       NNMap next(*g, INVALID); //maybe INVALID is not needed
-      //    VecStack active(n);
 
       NNMap left(*g, INVALID);
@@ -255,5 +254,4 @@
 		first[lev]=v;
 	      }
-	    //	  active[lev].push(v);
 	  }
 	  break;
@@ -281,5 +279,5 @@
       }
 
-      preflowPreproc(fe, next, first,/*active*/ level_list, left, right);
+      preflowPreproc(fe, next, first, level_list, left, right);
       //End of preprocessing
 
@@ -294,13 +292,11 @@
 	}
 
-	if ( !g->valid(first[b])/*active[b].empty()*/ ) --b;
+	if ( !g->valid(first[b]) ) --b;
 	else {
 	  end=false;
 	  Node w=first[b];
 	  first[b]=next[w];
-	  /*	Node w=active[b].top();
-		active[b].pop();*/
-	  int newlevel=push(w,/*active*/next, first);
-	  if ( excess[w] > 0 ) relabel(w, newlevel, /*active*/next, first, level_list,
+	  int newlevel=push(w, next, first);
+	  if ( excess[w] > 0 ) relabel(w, newlevel, next, first, level_list,
 				       left, right, b, k, what_heur);
 
@@ -341,5 +337,4 @@
       VecFirst first(n, INVALID);
       NNMap next(*g, INVALID); //maybe INVALID is not needed
-      //    VecStack active(n);
       level.set(s,0);
       std::queue<Node> bfs_queue;
@@ -362,5 +357,4 @@
 	      next.set(u,first[l]);
 	      first[l]=u;
-	      //active[l].push(u);
 	    }
 	  }
@@ -377,5 +371,4 @@
 	      next.set(u,first[l]);
 	      first[l]=u;
-	      //active[l].push(u);
 	    }
 	  }
@@ -388,11 +381,9 @@
 	if ( b == 0 ) break;
 
-	if ( !g->valid(first[b])/*active[b].empty()*/ ) --b;
+	if ( !g->valid(first[b]) ) --b;
 	else {
 
 	  Node w=first[b];
 	  first[b]=next[w];
-	  /*	Node w=active[b].top();
-		active[b].pop();*/
 	  int newlevel=push(w,next, first/*active*/);
 
@@ -402,5 +393,4 @@
 	    next.set(w,first[newlevel]);
 	    first[newlevel]=w;
-	    //active[newlevel].push(w);
 	    b=newlevel;
 	  }
@@ -421,6 +411,15 @@
       for(InEdgeIt e(*g,t);g->valid(e);g->next(e)) a+=(*flow)[e];
       for(OutEdgeIt e(*g,t);g->valid(e);g->next(e)) a-=(*flow)[e];
-
+      return a;
       //marci figyu: excess[t] epp ezt adja preflow 1. fazisa utan   
+    }
+    Num flowValue2() const {
+      return excess[t];
+//       Num a=0;
+//       for(InEdgeIt e(*g,t);g->valid(e);g->next(e)) a+=(*flow)[e];
+//       for(OutEdgeIt e(*g,t);g->valid(e);g->next(e)) a-=(*flow)[e];
+//       return a;
+//       //marci figyu: excess[t] epp ezt adja preflow 1. fazisa utan  
+      
     }
 
@@ -452,4 +451,6 @@
       case AFTER_PRE_FLOW_PHASE_2:
       case AFTER_NOTHING:
+      case AFTER_AUGMENTING:
+      case AFTER_FAST_AUGMENTING:
 	minMinCut(M);
 	break;
@@ -592,6 +593,4 @@
 	    next.set(v,first[level[v]]);
 	    first[level[v]]=v;
-	    //	    int lev_v=level[v];
-	    //active[lev_v].push(v);
 	  }
 
@@ -627,6 +626,4 @@
 	      next.set(v,first[level[v]]);
 	      first[level[v]]=v;
-	      //int lev_v=level[v];
-	      //active[lev_v].push(v);
 	    }
 
@@ -701,5 +698,4 @@
 		    next.set(w,first[level[w]]);
 		    first[level[w]]=w;
-		    //active[level[w]].push(w);
 		  }
 		flow->set(e, c);
@@ -766,5 +762,4 @@
 		    next.set(w,first[level[w]]);
 		    first[level[w]]=w;
-		    //active[level[w]].push(w);
 		  }   
 		flow->set(e, (*capacity)[e]);
@@ -783,5 +778,4 @@
 		    next.set(w,first[level[w]]);
 		    first[level[w]]=w;
-		    //active[level[w]].push(w);
 		  }   
 		excess.set(w, excess[w]+(*flow)[f]);
@@ -835,9 +829,4 @@
 	  level_list[i]=INVALID;
 	  if ( !what_heur ) first[i]=INVALID;
-	  /*{
-	    while ( !active[i].empty() ) {
-	    active[i].pop();    //FIXME: ezt szebben kene
-	    }
-	    }*/
 	}
 
@@ -854,5 +843,4 @@
 	  next.set(w,first[newlevel]);
 	  first[newlevel]=w;
-	  //	  active[newlevel].push(w);
 	  if ( what_heur ) b=newlevel;
 	  if ( k < newlevel ) ++k;      //now k=newlevel
