also accumulate value which seems like a good idea