Optimization? `putAll` should not be expensive if there's nothing to put...