call setDefaults once