add password generation