added mapper interface (causes import cycle)