internal login implementation now works