don't assume mapValues mixed in