Index: src/work/johanna/kruskal.h
===================================================================
--- src/work/johanna/kruskal.h	(revision 737)
+++ src/work/johanna/kruskal.h	(revision 755)
@@ -118,5 +118,5 @@
   ///
   template<typename Graph, typename Map>
-  class KruskalPairVec
+  class KruskalMapInput
     : public std::vector< std::pair<typename Graph::Edge,
 				    typename Map::ValueType> > {
@@ -144,5 +144,5 @@
 
     // FIXME: kell ez?
-    // KruskalPairVec(Parent const& p) : Parent(p) {}
+    // KruskalMapInput(Parent const& p) : Parent(p) {}
     
     void sort() {
@@ -151,5 +151,5 @@
 
     // FIXME: nem nagyon illik ez ide...
-    KruskalPairVec(Graph const& G, Map const& m) {
+    KruskalMapInput(Graph const& G, Map const& m) {
       typedef typename Graph::EdgeIt EdgeIt;
       
@@ -170,19 +170,44 @@
 
 
-//   template <typename Map>
-//   class KruskalMapVec : public std::vector<typename Map::KeyType> {
+//   template<typename Graph, typename Map>
+//   class KruskalMapVec {
 //   public:
     
-//     typedef typename Map::KeyType KeyType;
-//     typedef typename Map::ValueType ValueType;
-
-//     typedef typename std::vector<KeyType> Parent;
-//     typedef typename Parent::iterator iterator;
-//     typedef typename Parent::const_iterator const_iterator;
-
+//     typedef std::pair<typename Map::KeyType, Map::ValueType> value_type;
+    
+//     typedef std::vector<KeyType> Container;
+//     Container container;
+//     std::vector<typename Map::KeyType> container
+//     const Map &m;
+    
+    
+//     class iterator
+//     {
+//       Container::iterator i;
+//     public:
+//       iterator &operator ++() {++i;return *this;}
+//       valuetype operator *() {return value_type(container(i),m[container(i)]);}
+//       bool operator==(iterator b) {return i==b.i;}
+//       iterator() {}
+//       iterator(Container::iterator _i) i(_i) {}
+//     };
+//     class const_iterator
+//     {
+//       Container::const_iterator i;
+//     public:
+//       iterator &operator ++() {++i;return *this;}
+//       valuetype operator *() {return value_type(container(i),m[container(i)]);}
+//       bool operator==(iterator b) {return i==b.i;}
+//       const_iterator() {}
+//       const_iterator(Container::iterator _i) i(_i) {}
+//     };
+
+//     iterator begin() { return iterator(container.begin());}
+//     const_iterator begin() const { return iterator(container.begin());}
+//     iterator end() { return iterator(container.end());}
+//     const_iterator end() const { return iterator(container.end());}
+    
 //   private:
-
-//     const Map &m;
-
+    
 //     class compareKeys {
 //       const Map &m;
@@ -222,4 +247,5 @@
 //   };
 
+
   /* ** ** Wrapper fuggvenyek ** ** */
 
@@ -237,5 +263,5 @@
 			RetEdgeBoolMap &ret_bool_map) {
     
-    typedef KruskalPairVec<Graph,EdgeCostMap> InputVec;
+    typedef KruskalMapInput<Graph,EdgeCostMap> InputVec;
     
     InputVec iv(G, edge_costs);
@@ -261,5 +287,5 @@
     OutMap out(ret_iterator);
 
-    typedef KruskalPairVec<Graph, EdgeCostMap> InputVec;
+    typedef KruskalMapInput<Graph, EdgeCostMap> InputVec;
 
     InputVec iv(G, edge_costs);
