further reduce map calls