copy, don't mutate the data.

if the maps are being passed through channels, we have to treat them as
immutable.