     }
 }
 
-public extension PushModalCoordinator where ViewController: Coordinated {
+public extension PushModalCoordinator {
     // By default, to distinguish between modal and push a presence of destinationNavigationController is checked
     // as this is a good heuristics (it's usually not desired to push another navigation controller). This behaviour
     // can be redefined by redeclaring this property on any concrete PushModalCoordinator.

    }
}

public extension ModalCoordinator where ViewController: Coordinated {
    func start() {
        guard let viewController = viewController else {
            return

    }
}

public extension PushCoordinator {
    func start() {
        guard let viewController = viewController else {
            return
