version up: nice builder trait which is definig usage of custom functions
fine grained traits for builder (dry)