password management refactoring 2