login3 implementation