combine => mapPairs