updated login with interface to get the twofactorcode