two passes of MapReduce