     func start(with spaceId: String?) {
         self.currentSpaceId = spaceId
         
-        // If start has been done once do setup view controllers again
-        if self.masterTabBarController == nil {
+        // If start has been done once do not setup view controllers again
+        if self.hasStartedOnce == false {
             let masterTabBarController = self.createMasterTabBarController()
             masterTabBarController.masterTabBarDelegate = self
             self.masterTabBarController = masterTabBarController

    
    private let parameters: TabBarCoordinatorParameters
    
    /// Completion called when `popToHomeAnimated:` has been completed.
    private var popToHomeViewControllerCompletion: (() -> Void)?
    
    // TODO: Move MasterTabBarController navigation code here
    // and if possible use a simple: `private let tabBarController: UITabBarController`

            }
            
            self.registerUserSessionsServiceNotifications()
            self.registerUserSessionsServiceNotifications()
            self.registerSessionChange()
            
            if let homeViewController = homeViewControllerWrapperViewController {
                let versionCheckCoordinator = VersionCheckCoordinator(rootViewController: masterTabBarController,
                                                                  bannerPresenter: homeViewController,
                                                                  themeService: ThemeService.shared())
                versionCheckCoordinator.start()
                add(childCoordinator: versionCheckCoordinator)
            }
        }
                
        self.updateMasterTabBarController(with: spaceId)
    }
    
    func toPresentable() -> UIViewController {
