added DTO and mappers