anchor.diff:  
   abstract class _ReactDartInteropStatics2 {
     // TODO 3.1.0-wip expose for testing?
  -  static final zone = Zone.root;
  +  /// The zone in which all component lifecycle methods are run.
  +  static final componentZone = Zone.root;
   
     static void _updatePropsAndStateWithJs(Component2 component, JsMap props, JsMap state) {
       component
  
positive.code: 
    /// Wrapper for [Component.getInitialState].
    static Component2 initComponent(ReactComponent jsThis, ComponentStatics2 componentStatics) => // dartfmt
        zone.run(() {
          final component = componentStatics.componentFactory();
          // Return the component so that the JS proxying component can store it,
          // avoiding an interceptor lookup.
  
negative.code:       });
  
    static dynamic handleRender(Component2 component, JsMap jsProps, JsMap jsState, dynamic jsContext) => // dartfmt
        componentZone.run(() {
          _updatePropsAndStateWithJs(component, jsProps, jsState);
          _updateContextWithJs(component, jsContext);
          return component.render();
  