change Builder to function