Updated  genpasswd function