DRYed up mapping types