ask for all optional settings first