anchor.diff:  
   
   abstract class Route {
  +  Route() {
  +    _performance = createPerformance();
  +  }
   
     PerformanceView get performance => _performance?.view;
     Performance _performance;
  -  NotificationCallback _onDismissed;
  -  NotificationCallback _onRemoveRoute;
  +  _RouteCallback _onDismissed;
  +  _RouteCallback _onRemoveRoute;
   
     Performance createPerformance() {
       Duration duration = transitionDuration;
  
positive.code:   bool get isActuallyOpaque => (performance == null || _performance.isCompleted) && opaque;
  
    Widget build(NavigatorState navigator, PerformanceView nextRoutePerformance);
    void didPop([dynamic result]) {
      if (performance == null && _onRemoveRoute != null)
        _onRemoveRoute();
    }
  
    String toString() => '$runtimeType()';
  
negative.code: typedef Widget RouteBuilder(RouteArguments args);
  typedef RouteBuilder RouteGenerator(String name);
  typedef void StateRouteCallback(StateRoute route);
  typedef void _RouteCallback(Route route);
  
  class Navigator extends StatefulComponent {
    Navigator({
  