allow the user to generate a new object