Semantically this seems like a better fit as we're using Map like methods to iterate and update values anyway.