tor iter;
  };

  template &lt;class G&gt;
  struct MutableBidirectionalGraphConcept
  {
    void constraints() {
      BOOST_CONCEPT_ASSERT(( MutableIncidenceGraph&lt;G&gt; ));
      remove_in_edge_if(u, p, g);
    }
    G g;
    typedef typename boost::graph_traits&lt;G&gt;::edge_descriptor edge_descriptor;
    dummy_edge_predicate&lt;edge_descriptor&gt; p;
    typename boost::graph_traits&lt;G&gt;::vertex_descriptor u;
  };

  template &lt;class G&gt;
  struct MutableEdgeListGraphConcept
  {
    void con