This is a sample of Builder pattern