Adding builder pattern