moved mappers and add some tests