Move map() to the lowest level in type hierarchy to preserve types.