perfect signin and signout