updated for thoughts on varying cluster size