anchor.diff:    const Provider(ExceptionHandler,
         useFactory: exceptionHandler, deps: const []),
     const Provider(DOCUMENT, useFactory: document, deps: const []),
  -  const Provider(EVENT_MANAGER_PLUGINS, useClass: DomEventsPlugin, multi: true),
  -  const Provider(EVENT_MANAGER_PLUGINS, useClass: KeyEventsPlugin, multi: true),
  -  const Provider(EVENT_MANAGER_PLUGINS,
  -      useClass: HammerGesturesPlugin, multi: true),
  +  DomEventsPlugin,
  +  KeyEventsPlugin,
  +  HammerGesturesPlugin,
  +  const Provider(EVENT_MANAGER_PLUGINS, useFactory: createEventPlugins),
     const Provider(HAMMER_GESTURE_CONFIG, useClass: HammerGestureConfig),
     DomRootRenderer,
     const Provider(RootRenderer, useExisting: DomRootRenderer),
  
positive.code: import "package:angular2/src/platform/dom/events/dom_events.dart"
      show DomEventsPlugin;
  import "package:angular2/src/platform/dom/events/event_manager.dart"
      show EventManager, EVENT_MANAGER_PLUGINS;
  import "package:angular2/src/platform/dom/events/hammer_gestures.dart"
      show HammerGesturesPlugin;
  import "package:angular2/src/platform/dom/events/hammer_gestures.dart"
  
negative.code:   const Provider(XHR, useClass: CachedXHR)
  ];
  
  @Injectable()
  List<EventManagerPlugin> createEventPlugins(DomEventsPlugin dom,
          KeyEventsPlugin keys, HammerGesturesPlugin hammer) =>
      new List<EventManagerPlugin>.unmodifiable([dom, keys, hammer]);
  
  Function createInitDomAdapter(TestabilityRegistry testabilityRegistry) {
    return () {
      BrowserDomAdapter.makeCurrent();
  