adding builder pattern demo