 
         let parentNavController = ElloNavigationController(rootViewController: loggedOutController)
 
-        swapViewController(parentNavController) {
-            if let deepLinkPath = self.deepLinkPath {
-                self.navigateToDeepLink(deepLinkPath)
-                self.deepLinkPath = nil
-            }
+        swapViewController(parentNavController).always {
+            guard let deepLinkPath = self.deepLinkPath else { return }
+
+            self.navigateToDeepLink(deepLinkPath)
+            self.deepLinkPath = nil
         }
     }
 

        self.showMainScreen(currentUser!)
    }

    func showMainScreen(_ user: User) {
        Tracker.shared.identify(user: user)

        let vc = ElloTabBarController()
        ElloWebBrowserViewController.elloTabBarController = vc
        vc.currentUser = user

        swapViewController(vc) {
            if let payload = self.pushPayload {
                self.navigateToDeepLink(payload.applicationTarget)
                self.pushPayload = nil

        let vc = OnboardingViewController()
        vc.currentUser = user

        swapViewController(vc)
    }

    func doneOnboarding() {
