anchor.diff:  import 'dart:async';
   import 'dart:html';
   import 'dart:mirrors' hide Comment;
  +import 'dart:svg';
   
   import 'src/core.dart';
   import 'src/interfaces.dart';
  
positive.code: 
    @override
    Future down(int button,
            {_ElementPageLoaderElement eventTarget, bool sync: true}) =>
        loader.executeSynced(
            () => dispatchEvent('mousedown', eventTarget, button), sync);
  
    @override
    Future moveTo(_ElementPageLoaderElement element, int xOffset, int yOffset,
            {_ElementPageLoaderElement eventTarget, bool sync: true}) =>
        loader.executeSynced(() {
          clientX = (element.node.getBoundingClientRect().left + xOffset).ceil();
          clientY = (element.node.getBoundingClientRect().top + yOffset).ceil();
          return dispatchEvent('mousemove', eventTarget);
        }, sync);
  
    @override
    Future up(int button,
  
negative.code: 
    @override
    Future click({bool sync: true}) => loader.executeSynced(() {
      if (node is OptionElement) {
        return _clickOptionElement();
      } else if (node is SvgElement) {
        return _microtask(
            () => node.dispatchEvent(new Event.eventType('MouseEvent', 'click')));
      } else {
        return _microtask(node.click);
      }
    }, sync);
  
    Future _clickOptionElement() {
      OptionElement option = node as OptionElement;
  