sign in scenario and implementation