updated mapper and boilerplate