anchor.diff:  
     @override
     Future<Rectangle> getBoundingClientRect() async {
  -    var rect = await context.driver
  +    Map<String, num> rect = await context.driver
           .execute('return arguments[0].getBoundingClientRect();', [context]);
       return new Rectangle<num>(rect['left'] as num, rect['top'] as num,
           rect['width'] as num, rect['height'] as num);
  
positive.code: 
    _WebElementPageLoaderElement(
        wd.WebElement _context, WebDriverPageLoader loader)
        :
          this.context = _context,
          this.attributes = new _ElementAttributes(_context),
          this.computedStyle = new _ElementComputedStyle(_context),
          this.style = new _ElementStyle(_context),
        super._(loader)
          ;
  
    @override
    Future<WebDriverPageLoaderElement> get shadowRoot async {
  
negative.code:   WebDriverPageLoaderElement get globalContext => _globalContext;
  
    @override
    Future/*<T>*/ getInstance/*<T>*/(Type type, [dynamic context]) async {
      if (context != null) {
        if (context is wd.SearchContext) {
          context = new WebDriverPageLoaderElement(context, this);
  