added nearest neighbour with some FP intrinsic support