     }
     return clustering;
   }
-
+*/
+
+
+
+/* TODO: remove
   std::vector<unsigned int>
   lumped_clusters__old(std::vector<unsigned int> clustering
                 , std::vector<unsigned int> ref_states

                         , 0);
    check_error("getting max shared mem size");
    unsigned int shared_mem = 2 * BSIZE_SCR * n_cols * sizeof(float);
    unsigned int block_rng, i_from, i_to, i, i_gpu;
    // lump microstates until nothing changes
    bool microstates_lumped = true;

    // dynamic shared mem for ref coords
    extern __shared__ float smem_coords[];

//TODO shared mem for all comparisons N^2 + 2N to perform lumping
//     why size?: N^2 comparisons in compare block   j_1 - j_N
//              + N comparisons against prior match  j_N+1
//              + N for results                      j_N+2

//TODO rewrite

    // static shared mem for cluster ids
    __shared__ unsigned int smem_ref_states[BSIZE_SCR];
