fixed proposal, appears to work on small datasets