 public protocol TabBarCoordinator: DefaultCoordinator {
     func configure(viewController: ViewController)
     var tabBarController: UITabBarController { get }
+    weak var destinationNavigationController: UINavigationController? { get }
 }
 
 public enum PresentationStyle {


        var mutableViewControllers = viewControllers
        mutableViewControllers
            .index(of: viewController)
            .flatMap { _ = mutableViewControllers.remove(at: $0) }

        tabBarController.setViewControllers(mutableViewControllers, animated: animated)

        configure(viewController: viewController)

        var viewControllers = tabBarController.viewControllers ?? []
        viewControllers.append(destinationNavigationController ?? viewController)

        tabBarController.setViewControllers(viewControllers, animated: animated)
    }
