     }
     
     func popToRootModule(animated: Bool) {
+        NSLog("[NavigationRouter] Pop to root module")
+        
         if let controllers = navigationController.popToRootViewController(animated: animated) {
             controllers.forEach { runCompletion(for: $0) }
         }
     }
     
     func popToModule(_ module: Presentable, animated: Bool) {
+        NSLog("[NavigationRouter] Pop to module \(module)")
+        
         if let controllers = navigationController.popToViewController(module.toPresentable(), animated: animated) {
             controllers.forEach { runCompletion(for: $0) }
         }
     }
     
     func push(_ module: Presentable, animated: Bool = true, popCompletion: (() -> Void)? = nil) {
+        NSLog("[NavigationRouter] Push module \(module)")
         
         let controller = module.toPresentable()
         

        }
        
        // Call all completions so all coordinators can be deallocated
        completions.forEach { $0.value() }
        
        if let popCompletion = popCompletion {
            completions[controller] = popCompletion

    }
    
    func popModule(animated: Bool = true) {
        NSLog("[NavigationRouter] Pop module")
        
        if let controller = navigationController.popViewController(animated: animated) {
            runCompletion(for: controller)
        }
