The (r,c).map function dives into the Operations (the Op[Raster] and Op[Int]) and performs a map function. The way it was, the map function which took the raw values and performed the addition (with r.dualMap) was contained directly in the (Op[Raster], Op[Int]) version. These changes needed a (Raster,Int) version, so I pulled that out into it's own function and had the (Op[Raster],Op[Int]) version delegate to it.