implement and/or as fold_by_size
file