Add mapper and restructure