done with knn