//mapper class
map(key1, value1) // map input
//Process the map function
map(key2, value2) // map output
//Reducer class
reduce(key2, list) // reduce input
for each(value in value2)
//process the reduce function
end for
reduce(key2, value3) // reduce output