implemented dual version of mapper