add mapper and string builder function