search and cluster