hmm... in a lot of cases we assume `login` will be non-nil. Can possibly fix that.