everything done except knn graphs