Index: src/work/marci_graph_concept.txt
===================================================================
--- src/work/marci_graph_concept.txt	(revision 19)
+++ src/work/marci_graph_concept.txt	(revision 30)
@@ -1,7 +1,7 @@
 ETIK-OL-NOLIB-NEGRES graph concept-ek.
 
- Ebben a dokumentacioban graph concept tervek es azok megvalositastarol irok. 
+ Ebben a dokumentacioban graph concept tervek es azok megvalositasarol irok. 
 A felsorolt rutinok, osztalyok egyaltalan nem kikristalyosodottak, 1-1 elemi 
-operacio elegzesere gyakran tobb mod is rendelkezesre all. A tervezesi fazisban pont annak kell kiderulnie, hogy milyen metodusok tavolithatok el, s milyen 
+operacio elvegzesere gyakran tobb mod is rendelkezesre all. A tervezesi fazisban pont annak kell kiderulnie, hogy milyen metodusok tavolithatok el, s milyen 
 ujakra van szukseg. 
 
@@ -27,6 +27,11 @@
 trivialis node iterator, csak cimezni lehet vele, pl property vectort
 
+<<<<<<< marci_graph_concept.txt
+class each_node_iterator
+node iterator a graf pontjainak bejarasara, node_iterator-ra konvertalhato
+=======
 class each_node_iterator;
 node iterator a graf pontjainak bejarasara, node_iterator-a konvertalhato
+>>>>>>> 1.3
 
 class edge_iterator;
@@ -36,12 +41,28 @@
 edge iterator a graf osszes elenek bejarasara
 
+<<<<<<< marci_graph_concept.txt
+class out_edge_iterator
+edge iterator 1 pont ki eleinek bejarasara, edge_iterator-ra konvertalhato
+=======
 class out_edge_iterator;
 edge iterator 1 pont ki eleinek bejarasara, edge_iterator-a konvertalhato
-
+>>>>>>> 1.3
+
+<<<<<<< marci_graph_concept.txt
+class in_edge_iterator
+edge iterator 1 pont be eleinek bejarasara, edge_iterator-ra konvertalhato
+=======
 class in_edge_iterator;
 edge iterator 1 pont be eleinek bejarasara, edge_iterator-a konvertalhato
+>>>>>>> 1.3
       
+<<<<<<< marci_graph_concept.txt
+class sym_edge_iterator
+edge iterator 1 pont be es ki eleinek bejarasara, edge_iterator-ra
+konvertalhato 
+=======
 class sym_edge_iterator;
 edge iterator 1 pont be es ki eleinek bejarasara, edge_iterator-a konvertalhato
+>>>>>>> 1.3
 
 default constructor:
Index: src/work/preflow_push_hl.hh
===================================================================
--- src/work/preflow_push_hl.hh	(revision 20)
+++ src/work/preflow_push_hl.hh	(revision 30)
@@ -84,5 +84,5 @@
       reverse_bfs<list_graph> bfs(G, t);
       bfs.run();
-      for(each_node_iterator v=G.first_node(); v.is_valid(); ++v) {
+      for(each_node_iterator v=G.first_node(); v.valid(); ++v) {
 	level.put(v, bfs.dist(v)); 
 	//std::cout << "the level of " << v << " is " << bfs.dist(v);
@@ -98,5 +98,5 @@
       /* Starting flow. It is everywhere 0 at the moment. */
      
-      for(out_edge_iterator i=G.first_out_edge(s); i.is_valid(); ++i) 
+      for(out_edge_iterator i=G.first_out_edge(s); i.valid(); ++i) 
 	{
 	  node_iterator w=G.head(i);
@@ -130,5 +130,5 @@
 	  int newlevel=2*n-2;                   //In newlevel we maintain the next level of w.
 	
-	  for(out_edge_iterator e=G.first_out_edge(w); e.is_valid(); ++e) {
+	  for(out_edge_iterator e=G.first_out_edge(w); e.valid(); ++e) {
 	    node_iterator v=G.head(e);
 	    /*e is the edge wv.*/
@@ -171,9 +171,9 @@
 	    } //if (flow.get(e)<capacity.get(e))
 	 
-	  } //for(out_edge_iterator e=G.first_out_edge(w); e.is_valid(); ++e) 
+	  } //for(out_edge_iterator e=G.first_out_edge(w); e.valid(); ++e) 
 	  
 
 
-	  for(in_edge_iterator e=G.first_in_edge(w); e.is_valid(); ++e) {
+	  for(in_edge_iterator e=G.first_in_edge(w); e.valid(); ++e) {
 	    node_iterator v=G.tail(e);
 	    /*e is the edge vw.*/
@@ -289,5 +289,5 @@
 	queue.pop();
 
-	for(in_edge_iterator e=G.first_in_edge(w) ; e.is_valid(); ++e) {
+	for(in_edge_iterator e=G.first_in_edge(w) ; e.valid(); ++e) {
 	  node_iterator v=G.tail(e);
 	  if (mincutvector.get(v) && flow.get(e) < capacity.get(e) ) {
@@ -297,5 +297,5 @@
 	} // for
 
-	for(out_edge_iterator e=G.first_out_edge(w) ; e.is_valid(); ++e) {
+	for(out_edge_iterator e=G.first_out_edge(w) ; e.valid(); ++e) {
 	  node_iterator v=G.head(e);
 	  if (mincutvector.get(v) && flow.get(e) > 0 ) {
Index: src/work/preflow_push_max_flow.hh
===================================================================
--- src/work/preflow_push_max_flow.hh	(revision 21)
+++ src/work/preflow_push_max_flow.hh	(revision 30)
@@ -81,5 +81,5 @@
       reverse_bfs<list_graph> bfs(G, t);
       bfs.run();
-      for(each_node_iterator v=G.first_node(); v.is_valid(); ++v) 
+      for(each_node_iterator v=G.first_node(); v.valid(); ++v) 
 	{
 	  int dist=bfs.dist(v);
@@ -94,5 +94,5 @@
       /* Starting flow. It is everywhere 0 at the moment. */
      
-      for(out_edge_iterator i=G.first_out_edge(s); i.is_valid(); ++i) 
+      for(out_edge_iterator i=G.first_out_edge(s); i.valid(); ++i) 
 	{
 	  node_iterator w=G.head(i);
@@ -127,5 +127,5 @@
 	  int newlevel=2*n-2;                //In newlevel we maintain the next level of w.
 	
-	  for(out_edge_iterator e=G.first_out_edge(w); e.is_valid(); ++e) {
+	  for(out_edge_iterator e=G.first_out_edge(w); e.valid(); ++e) {
 	    node_iterator v=G.head(e);
 	    /*e is the edge wv.*/
@@ -168,9 +168,9 @@
 	    } //if (flow.get(e)<capacity.get(e))
 	 
-	  } //for(out_edge_iterator e=G.first_out_edge(w); e.is_valid(); ++e) 
+	  } //for(out_edge_iterator e=G.first_out_edge(w); e.valid(); ++e) 
 	  
 
 
-	  for(in_edge_iterator e=G.first_in_edge(w); e.is_valid(); ++e) {
+	  for(in_edge_iterator e=G.first_in_edge(w); e.valid(); ++e) {
 	    node_iterator v=G.tail(e);
 	    /*e is the edge vw.*/
@@ -244,5 +244,5 @@
 		/*If the level of w gets empty.*/
 	      
-		for (each_node_iterator v=G.first_node() ; v.is_valid() ; ++v) {
+		for (each_node_iterator v=G.first_node() ; v.valid() ; ++v) {
 		  if (level.get(v) >= l ) { 
 		    level.put(v,n);  
@@ -278,5 +278,5 @@
 	else break;
       } 
-      for (each_node_iterator v=G.first_node(); v.is_valid(); ++v) {
+      for (each_node_iterator v=G.first_node(); v.valid(); ++v) {
 	if (level.get(v) > e) mincutvector.put(v, true);
       }
Index: src/work/proba.cc
===================================================================
--- src/work/proba.cc	(revision 23)
+++ src/work/proba.cc	(revision 30)
@@ -9,4 +9,5 @@
 #include <preflow_push_max_flow.hh>
 #include <reverse_bfs.hh>
+//#include <dijkstra.hh>
 
 using namespace marci;
@@ -25,5 +26,5 @@
   list_graph flow_test;
  
-  //Ahuja könyv példája, maxflowvalue=13
+  /*  //Ahuja könyv példája, maxflowvalue=13
   node_iterator s=flow_test.add_node();
   node_iterator v1=flow_test.add_node();
@@ -46,12 +47,10 @@
   edge_iterator s_v2=flow_test.add_edge(s, v2);
   edge_iterator s_v3=flow_test.add_edge(s, v3);
-  
   edge_iterator v2_v4=flow_test.add_edge(v2, v4);
   edge_iterator v2_v5=flow_test.add_edge(v2, v5);
-
   edge_iterator v3_v5=flow_test.add_edge(v3, v5);
-
   edge_iterator v4_t=flow_test.add_edge(v4, t);
   edge_iterator v5_t=flow_test.add_edge(v5, t);
+  edge_iterator v2_s=flow_test.add_edge(v2, s);
   
   edge_property_vector<list_graph, int> cap(flow_test);  
@@ -64,9 +63,10 @@
   cap.put(v4_t, 8);
   cap.put(v5_t, 8);
-
+  cap.put(v2_s, 0);
+*/
 
   
   //Marci példája, maxflowvalue=23
-  /*   node_iterator s=flow_test.add_node();
+     node_iterator s=flow_test.add_node();
   node_iterator v1=flow_test.add_node();
   node_iterator v2=flow_test.add_node();
@@ -98,4 +98,5 @@
   edge_iterator v3_v3=flow_test.add_edge(v3, v3);
   edge_iterator s_w=flow_test.add_edge(s, w);
+  edge_iterator v2_s=flow_test.add_edge(v2, s);
   
 
@@ -114,5 +115,5 @@
   cap.put(v3_v3, 4);
   cap.put(s_w, 4);
-  */
+  cap.put(v2_s, 0);
 
 
@@ -156,5 +157,5 @@
   bfs_test.run();
 
-  for (each_node_iterator w=flow_test.first_node(); w.is_valid(); ++w) {
+  for (each_node_iterator w=flow_test.first_node(); w.valid(); ++w) {
     std::cout <<"The distance of " << w << " is " << bfs_test.dist(w) <<std::endl;
     }
@@ -175,5 +176,5 @@
 
   edge_property_vector<list_graph, int> flow=preflow_push_test.allflow();  
-  for (each_edge_iterator e=flow_test.first_edge(); e.is_valid(); ++e) {
+  for (each_edge_iterator e=flow_test.first_edge(); e.valid(); ++e) {
     std::cout <<"Flow on edge " << flow_test.tail(e) <<"-" << flow_test.head(e)<< " is " <<flow.get(e) <<std::endl;
     }
@@ -182,5 +183,5 @@
   node_property_vector<list_graph, bool> mincut=preflow_push_test.mincut();
 
-  for (each_node_iterator v=flow_test.first_node(); v.is_valid(); ++v) {
+  for (each_node_iterator v=flow_test.first_node(); v.valid(); ++v) {
       if (mincut.get(v)) std::cout <<node_name.get(v)<< " ";
     }
@@ -202,5 +203,5 @@
   node_property_vector<list_graph, bool> mincut2=max_flow_test.mincut();
 
-  for (each_node_iterator v=flow_test.first_node(); v.is_valid(); ++v) {
+  for (each_node_iterator v=flow_test.first_node(); v.valid(); ++v) {
     if (mincut2.get(v)) std::cout <<node_name.get(v)<< " ";
   }
@@ -210,4 +211,17 @@
 
 
+//    std::cout << "Testing dijkstra..." << std::endl;
+  
+//    dijkstra<list_graph, int> dijkstra_test(flow_test, s, cap);
+
+//    dijkstra_test.run();
+
+//    for (each_node_iterator w=flow_test.first_node(); w.valid(); ++w) {
+//      std::cout <<"The distance of " << w << " is " << dijkstra_test.dist(w) <<std::endl;
+//      }
+
+
+
+
   return 0;
 }
Index: src/work/reverse_bfs.hh
===================================================================
--- src/work/reverse_bfs.hh	(revision 22)
+++ src/work/reverse_bfs.hh	(revision 30)
@@ -68,5 +68,5 @@
 	bfs_queue.pop();
 
-	for(in_edge_iterator e=G.first_in_edge(v); e.is_valid(); ++e) {
+	for(in_edge_iterator e=G.first_in_edge(v); e.valid(); ++e) {
 	  node_iterator w=G.tail(e);
 	  if (!reached.get(w)) {
