anchor.diff:  /// This should include all events documented at:
   /// http://facebook.github.io/react/docs/events.html
   class Simulate {
  -  static void blur(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.blur(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void change(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.change(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void click(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.click(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void contextMenu(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.contextMenu(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void copy(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.copy(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void cut(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.cut(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void doubleClick(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.doubleClick(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void drag(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.drag(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void dragEnd(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.dragEnd(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void dragEnter(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.dragEnter(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void dragExit(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.dragExit(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void dragLeave(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.dragLeave(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void dragOver(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.dragOver(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void dragStart(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.dragStart(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void drop(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.drop(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void focus(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.focus(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void input(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.input(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void keyDown(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.keyDown(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void keyPress(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.keyPress(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void keyUp(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.keyUp(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void mouseDown(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.mouseDown(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void mouseMove(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.mouseMove(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void mouseOut(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.mouseOut(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void mouseOver(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.mouseOver(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void mouseUp(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.mouseUp(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void paste(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.paste(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void scroll(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.scroll(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void submit(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.submit(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void touchCancel(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.touchCancel(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void touchEnd(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.touchEnd(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void touchMove(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.touchMove(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void touchStart(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.touchStart(componentOrNode, jsifyAndAllowInterop(eventData));
  -  static void wheel(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.Simulate.wheel(componentOrNode, jsifyAndAllowInterop(eventData));
  +  static void blur(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.blur(componentOrNode, _jsifyEventData(eventData));
  +  static void change(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.change(componentOrNode, _jsifyEventData(eventData));
  +  static void click(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.click(componentOrNode, _jsifyEventData(eventData));
  +  static void contextMenu(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.contextMenu(componentOrNode, _jsifyEventData(eventData));
  +  static void copy(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.copy(componentOrNode, _jsifyEventData(eventData));
  +  static void cut(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.cut(componentOrNode, _jsifyEventData(eventData));
  +  static void doubleClick(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.doubleClick(componentOrNode, _jsifyEventData(eventData));
  +  static void drag(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.drag(componentOrNode, _jsifyEventData(eventData));
  +  static void dragEnd(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.dragEnd(componentOrNode, _jsifyEventData(eventData));
  +  static void dragEnter(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.dragEnter(componentOrNode, _jsifyEventData(eventData));
  +  static void dragExit(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.dragExit(componentOrNode, _jsifyEventData(eventData));
  +  static void dragLeave(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.dragLeave(componentOrNode, _jsifyEventData(eventData));
  +  static void dragOver(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.dragOver(componentOrNode, _jsifyEventData(eventData));
  +  static void dragStart(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.dragStart(componentOrNode, _jsifyEventData(eventData));
  +  static void drop(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.drop(componentOrNode, _jsifyEventData(eventData));
  +  static void focus(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.focus(componentOrNode, _jsifyEventData(eventData));
  +  static void input(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.input(componentOrNode, _jsifyEventData(eventData));
  +  static void keyDown(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.keyDown(componentOrNode, _jsifyEventData(eventData));
  +  static void keyPress(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.keyPress(componentOrNode, _jsifyEventData(eventData));
  +  static void keyUp(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.keyUp(componentOrNode, _jsifyEventData(eventData));
  +  static void mouseDown(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.mouseDown(componentOrNode, _jsifyEventData(eventData));
  +  static void mouseMove(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.mouseMove(componentOrNode, _jsifyEventData(eventData));
  +  static void mouseOut(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.mouseOut(componentOrNode, _jsifyEventData(eventData));
  +  static void mouseOver(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.mouseOver(componentOrNode, _jsifyEventData(eventData));
  +  static void mouseUp(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.mouseUp(componentOrNode, _jsifyEventData(eventData));
  +  static void paste(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.paste(componentOrNode, _jsifyEventData(eventData));
  +  static void scroll(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.scroll(componentOrNode, _jsifyEventData(eventData));
  +  static void submit(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.submit(componentOrNode, _jsifyEventData(eventData));
  +  static void touchCancel(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.touchCancel(componentOrNode, _jsifyEventData(eventData));
  +  static void touchEnd(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.touchEnd(componentOrNode, _jsifyEventData(eventData));
  +  static void touchMove(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.touchMove(componentOrNode, _jsifyEventData(eventData));
  +  static void touchStart(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.touchStart(componentOrNode, _jsifyEventData(eventData));
  +  static void wheel(/* [1] */ componentOrNode, [Map eventData]) => wrappers.Simulate.wheel(componentOrNode, _jsifyEventData(eventData));
   }
   
   /// Native event simulation interface.
  
positive.code: ///
  ///   SimulateNative.{eventName}(/* [1] */ componentOrNode, [Map] eventData)
  class SimulateNative {
    static void blur(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.blur(componentOrNode, jsifyAndAllowInterop(eventData));
    static void click(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.click(componentOrNode, jsifyAndAllowInterop(eventData));
    static void contextMenu(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.contextMenu(componentOrNode, jsifyAndAllowInterop(eventData));
    static void copy(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.copy(componentOrNode, jsifyAndAllowInterop(eventData));
    static void cut(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.cut(componentOrNode, jsifyAndAllowInterop(eventData));
    static void doubleClick(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.doubleClick(componentOrNode, jsifyAndAllowInterop(eventData));
    static void drag(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.drag(componentOrNode, jsifyAndAllowInterop(eventData));
    static void dragEnd(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.dragEnd(componentOrNode, jsifyAndAllowInterop(eventData));
    static void dragEnter(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.dragEnter(componentOrNode, jsifyAndAllowInterop(eventData));
    static void dragExit(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.dragExit(componentOrNode, jsifyAndAllowInterop(eventData));
    static void dragLeave(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.dragLeave(componentOrNode, jsifyAndAllowInterop(eventData));
    static void dragOver(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.dragOver(componentOrNode, jsifyAndAllowInterop(eventData));
    static void dragStart(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.dragStart(componentOrNode, jsifyAndAllowInterop(eventData));
    static void drop(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.drop(componentOrNode, jsifyAndAllowInterop(eventData));
    static void focus(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.focus(componentOrNode, jsifyAndAllowInterop(eventData));
    static void input(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.input(componentOrNode, jsifyAndAllowInterop(eventData));
    static void keyDown(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.keyDown(componentOrNode, jsifyAndAllowInterop(eventData));
    static void keyUp(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.keyUp(componentOrNode, jsifyAndAllowInterop(eventData));
    static void mouseDown(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.mouseDown(componentOrNode, jsifyAndAllowInterop(eventData));
    static void mouseMove(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.mouseMove(componentOrNode, jsifyAndAllowInterop(eventData));
    static void mouseOut(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.mouseOut(componentOrNode, jsifyAndAllowInterop(eventData));
    static void mouseOver(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.mouseOver(componentOrNode, jsifyAndAllowInterop(eventData));
    static void mouseUp(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.mouseUp(componentOrNode, jsifyAndAllowInterop(eventData));
    static void paste(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.paste(componentOrNode, jsifyAndAllowInterop(eventData));
    static void scroll(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.scroll(componentOrNode, jsifyAndAllowInterop(eventData));
    static void submit(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.submit(componentOrNode, jsifyAndAllowInterop(eventData));
    static void touchCancel(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.touchCancel(componentOrNode, jsifyAndAllowInterop(eventData));
    static void touchEnd(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.touchEnd(componentOrNode, jsifyAndAllowInterop(eventData));
    static void touchMove(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.touchMove(componentOrNode, jsifyAndAllowInterop(eventData));
    static void touchStart(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.touchStart(componentOrNode, jsifyAndAllowInterop(eventData));
    static void wheel(/* [1] */ componentOrNode, [Map eventData = const {}]) => simulate_wrappers.SimulateNative.wheel(componentOrNode, jsifyAndAllowInterop(eventData));
  }
  
  /// Traverse all components in tree and accumulate all components where
  
negative.code: import 'package:react/react_client.dart';
  import 'package:react/react_client/js_interop_helpers.dart' hide getProperty, setProperty, jsify;
  import 'package:react/react_client/react_interop.dart';
  import 'package:react/src/react_test_utils/simulate_wrappers.dart' as wrappers;
  
  // Notes
  // ---------------------------------------------------------------------------
  