before implement login