             self.setViewControllerUserInteraction(enabled: true)
             self.dismiss(animated: true)
             self.funnel?.logSuccess()
+            
+            if let start = self.startDate {
+                self.loginFunnel.logSuccess(timeElapsed: fabs(start.timeIntervalSinceNow))
+            } else {
+                assertionFailure("startDate is nil; startDate is required to calculate timeElapsed")
+            }
         
         }, failure: { error in
 

    
    @objc public var funnel: WMFLoginFunnel?
    
    fileprivate var theme: Theme = Theme.standard
    
    fileprivate lazy var captchaViewController: WMFCaptchaViewController? = WMFCaptchaViewController.wmf_initialViewControllerFromClassStoryboard()
    private let loginInfoFetcher = WMFAuthLoginInfoFetcher()
    let tokenFetcher = WMFAuthTokenFetcher()

    @objc func closeButtonPushed(_ : UIBarButtonItem) {
        dismiss(animated: true, completion: nil)

    }

    fileprivate func save() {
        let start = Date()
        wmf_hideKeyboard()
        passwordAlertLabel.isHidden = true
        setViewControllerUserInteraction(enabled: false)
