Optimal algorithms for approximate clustering | Synapse