Index: test/bpgraph_test.cc
===================================================================
--- test/bpgraph_test.cc	(revision 1193)
+++ test/bpgraph_test.cc	(revision 1194)
@@ -102,6 +102,6 @@
 
   checkGraphNodeMap(G);
-  checkGraphRedMap(G);
-  checkGraphBlueMap(G);
+  checkGraphRedNodeMap(G);
+  checkGraphBlueNodeMap(G);
   checkGraphArcMap(G);
   checkGraphEdgeMap(G);
@@ -261,6 +261,6 @@
 
   checkGraphNodeMap(G);
-  checkGraphRedMap(G);
-  checkGraphBlueMap(G);
+  checkGraphRedNodeMap(G);
+  checkGraphBlueNodeMap(G);
   checkGraphArcMap(G);
   checkGraphEdgeMap(G);
@@ -370,5 +370,5 @@
   checkGraphArcList(G, 2 * redNum * blueNum);
 
-  for (RedIt n(G); n != INVALID; ++n) {
+  for (RedNodeIt n(G); n != INVALID; ++n) {
     checkGraphOutArcList(G, n, blueNum);
     checkGraphInArcList(G, n, blueNum);
@@ -376,5 +376,5 @@
   }
 
-  for (BlueIt n(G); n != INVALID; ++n) {
+  for (BlueNodeIt n(G); n != INVALID; ++n) {
     checkGraphOutArcList(G, n, redNum);
     checkGraphInArcList(G, n, redNum);
@@ -394,6 +394,6 @@
 
   checkGraphNodeMap(G);
-  checkGraphRedMap(G);
-  checkGraphBlueMap(G);
+  checkGraphRedNodeMap(G);
+  checkGraphBlueNodeMap(G);
   checkGraphArcMap(G);
   checkGraphEdgeMap(G);
Index: test/graph_copy_test.cc
===================================================================
--- test/graph_copy_test.cc	(revision 1193)
+++ test/graph_copy_test.cc	(revision 1194)
@@ -217,6 +217,6 @@
   SmartBpGraph from;
   SmartBpGraph::NodeMap<int> fnm(from);
-  SmartBpGraph::RedMap<int> frnm(from);
-  SmartBpGraph::BlueMap<int> fbnm(from);
+  SmartBpGraph::RedNodeMap<int> frnm(from);
+  SmartBpGraph::BlueNodeMap<int> fbnm(from);
   SmartBpGraph::ArcMap<int> fam(from);
   SmartBpGraph::EdgeMap<int> fem(from);
@@ -262,6 +262,6 @@
   GR to;
   typename GR::template NodeMap<int> tnm(to);
-  typename GR::template RedMap<int> trnm(to);
-  typename GR::template BlueMap<int> tbnm(to);
+  typename GR::template RedNodeMap<int> trnm(to);
+  typename GR::template BlueNodeMap<int> tbnm(to);
   typename GR::template ArcMap<int> tam(to);
   typename GR::template EdgeMap<int> tem(to);
@@ -273,17 +273,18 @@
 
   SmartBpGraph::NodeMap<typename GR::Node> nr(from);
-  SmartBpGraph::RedMap<typename GR::RedNode> rnr(from);
-  SmartBpGraph::BlueMap<typename GR::BlueNode> bnr(from);
+  SmartBpGraph::RedNodeMap<typename GR::RedNode> rnr(from);
+  SmartBpGraph::BlueNodeMap<typename GR::BlueNode> bnr(from);
   SmartBpGraph::ArcMap<typename GR::Arc> ar(from);
   SmartBpGraph::EdgeMap<typename GR::Edge> er(from);
 
   typename GR::template NodeMap<SmartBpGraph::Node> ncr(to);
-  typename GR::template RedMap<SmartBpGraph::RedNode> rncr(to);
-  typename GR::template BlueMap<SmartBpGraph::BlueNode> bncr(to);
+  typename GR::template RedNodeMap<SmartBpGraph::RedNode> rncr(to);
+  typename GR::template BlueNodeMap<SmartBpGraph::BlueNode> bncr(to);
   typename GR::template ArcMap<SmartBpGraph::Arc> acr(to);
   typename GR::template EdgeMap<SmartBpGraph::Edge> ecr(to);
 
   bpGraphCopy(from, to).
-    nodeMap(fnm, tnm).redMap(frnm, trnm).blueMap(fbnm, tbnm).
+    nodeMap(fnm, tnm).
+    redNodeMap(frnm, trnm).blueNodeMap(fbnm, tbnm).
     arcMap(fam, tam).edgeMap(fem, tem).
     nodeRef(nr).redRef(rnr).blueRef(bnr).
@@ -305,5 +306,5 @@
   }
 
-  for (SmartBpGraph::RedIt it(from); it != INVALID; ++it) {
+  for (SmartBpGraph::RedNodeIt it(from); it != INVALID; ++it) {
     check(ncr[nr[it]] == it, "Wrong copy.");
     check(fnm[it] == tnm[nr[it]], "Wrong copy.");
@@ -314,5 +315,5 @@
   }
 
-  for (SmartBpGraph::BlueIt it(from); it != INVALID; ++it) {
+  for (SmartBpGraph::BlueNodeIt it(from); it != INVALID; ++it) {
     check(ncr[nr[it]] == it, "Wrong copy.");
     check(fnm[it] == tnm[nr[it]], "Wrong copy.");
@@ -344,9 +345,9 @@
     check(nr[ncr[it]] == it, "Wrong copy.");
   }
-  for (typename GR::RedIt it(to); it != INVALID; ++it) {
+  for (typename GR::RedNodeIt it(to); it != INVALID; ++it) {
     check(rncr[it] == ncr[it], "Wrong copy.");
     check(rnr[rncr[it]] == it, "Wrong copy.");
   }
-  for (typename GR::BlueIt it(to); it != INVALID; ++it) {
+  for (typename GR::BlueNodeIt it(to); it != INVALID; ++it) {
     check(bncr[it] == ncr[it], "Wrong copy.");
     check(bnr[bncr[it]] == it, "Wrong copy.");
Index: test/graph_test.h
===================================================================
--- test/graph_test.h	(revision 1193)
+++ test/graph_test.h	(revision 1194)
@@ -44,5 +44,5 @@
   void checkGraphRedNodeList(const Graph &G, int cnt)
   {
-    typename Graph::RedIt n(G);
+    typename Graph::RedNodeIt n(G);
     for(int i=0;i<cnt;i++) {
       check(n!=INVALID,"Wrong red Node list linking.");
@@ -66,5 +66,5 @@
   void checkGraphBlueNodeList(const Graph &G, int cnt)
   {
-    typename Graph::BlueIt n(G);
+    typename Graph::BlueNodeIt n(G);
     for(int i=0;i<cnt;i++) {
       check(n!=INVALID,"Wrong blue Node list linking.");
@@ -226,5 +226,5 @@
     typedef typename Graph::RedNode RedNode;
     std::set<int> values;
-    for (typename Graph::RedIt n(G); n != INVALID; ++n) {
+    for (typename Graph::RedNodeIt n(G); n != INVALID; ++n) {
       check(G.red(n), "Wrong partition");
       check(values.find(G.id(n)) == values.end(), "Wrong id");
@@ -239,5 +239,5 @@
     typedef typename Graph::BlueNode BlueNode;
     std::set<int> values;
-    for (typename Graph::BlueIt n(G); n != INVALID; ++n) {
+    for (typename Graph::BlueNodeIt n(G); n != INVALID; ++n) {
       check(G.blue(n), "Wrong partition");
       check(values.find(G.id(n)) == values.end(), "Wrong id");
@@ -305,15 +305,15 @@
 
   template <typename Graph>
-  void checkGraphRedMap(const Graph& G) {
+  void checkGraphRedNodeMap(const Graph& G) {
     typedef typename Graph::Node Node;
-    typedef typename Graph::RedIt RedIt;
-
-    typedef typename Graph::template RedMap<int> IntRedMap;
-    IntRedMap map(G, 42);
-    for (RedIt it(G); it != INVALID; ++it) {
+    typedef typename Graph::RedNodeIt RedNodeIt;
+
+    typedef typename Graph::template RedNodeMap<int> IntRedNodeMap;
+    IntRedNodeMap map(G, 42);
+    for (RedNodeIt it(G); it != INVALID; ++it) {
       check(map[it] == 42, "Wrong map constructor.");
     }
     int s = 0;
-    for (RedIt it(G); it != INVALID; ++it) {
+    for (RedNodeIt it(G); it != INVALID; ++it) {
       map[it] = 0;
       check(map[it] == 0, "Wrong operator[].");
@@ -323,5 +323,5 @@
     }
     s = s * (s - 1) / 2;
-    for (RedIt it(G); it != INVALID; ++it) {
+    for (RedNodeIt it(G); it != INVALID; ++it) {
       s -= map[it];
     }
@@ -335,15 +335,15 @@
 
   template <typename Graph>
-  void checkGraphBlueMap(const Graph& G) {
+  void checkGraphBlueNodeMap(const Graph& G) {
     typedef typename Graph::Node Node;
-    typedef typename Graph::BlueIt BlueIt;
-
-    typedef typename Graph::template BlueMap<int> IntBlueMap;
-    IntBlueMap map(G, 42);
-    for (BlueIt it(G); it != INVALID; ++it) {
+    typedef typename Graph::BlueNodeIt BlueNodeIt;
+
+    typedef typename Graph::template BlueNodeMap<int> IntBlueNodeMap;
+    IntBlueNodeMap map(G, 42);
+    for (BlueNodeIt it(G); it != INVALID; ++it) {
       check(map[it] == 42, "Wrong map constructor.");
     }
     int s = 0;
-    for (BlueIt it(G); it != INVALID; ++it) {
+    for (BlueNodeIt it(G); it != INVALID; ++it) {
       map[it] = 0;
       check(map[it] == 0, "Wrong operator[].");
@@ -353,5 +353,5 @@
     }
     s = s * (s - 1) / 2;
-    for (BlueIt it(G); it != INVALID; ++it) {
+    for (BlueNodeIt it(G); it != INVALID; ++it) {
       s -= map[it];
     }
