Do you think this is better than mapping using a function? Is that over-engineered? If so we should probably change the other stuff that uses `.toReal` and `.toUI` to do the same thing as this