accumulate data into a map