working HalfDBScan