anchor.diff:      return null; // this does not return an engine layer yet.
     }
   
  -  @override
  -  S find<S>(Offset regionOffset) {
  -    final Iterable<S> all = findAll<S>(regionOffset);
  -    if (all.isEmpty) {
  -      return null;
  -    }
  -    return all.first;
  -  }
  -
  -  @override
  -  Iterable<S> findAll<S>(Offset regionOffset) sync* {
  +  Offset _transformOffset(Offset regionOffset) {
       if (_inverseDirty) {
         _invertedTransform = Matrix4.tryInvert(transform);
         _inverseDirty = false;
       }
       if (_invertedTransform == null)
  -      return;
  +      return null;
       final Vector4 vector = Vector4(regionOffset.dx, regionOffset.dy, 0.0, 1.0);
       final Vector4 result = _invertedTransform.transform(vector);
  -    yield* super.findAll<S>(Offset(result[0], result[1]));
  +    return Offset(result[0], result[1]);
  +  }
  +
  +  @override
  +  S find<S>(Offset regionOffset) {
  +    final Offset transformedOffset = _transformOffset(regionOffset);
  +    return transformedOffset == null ? null : super.find<S>(transformedOffset);
  +  }
  +
  +  @override
  +  Iterable<S> findAll<S>(Offset regionOffset) sync* {
  +    final Offset transformedOffset = _transformOffset(regionOffset);
  +    if (transformedOffset == null) {
  +      return;
  +    }
  +    yield* super.findAll<S>(transformedOffset);
     }
   
     @override
  
positive.code: 
    @override
    S find<S>(Offset regionOffset) {
      final Iterable<S> all = findAll<S>(regionOffset);
      if (all.isEmpty) {
        return null;
      }
      return all.first;
    }
  
    @override
  
negative.code: 
    @override
    S find<S>(Offset regionOffset) {
      if (link.leader == null) {
        return showWhenUnlinked ? super.find<S>(regionOffset - unlinkedOffset) : null;
      }
      final Offset transformedOffset = _transformOffset<S>(regionOffset);
      return transformedOffset == null ? null : super.find<S>(transformedOffset);
    }
  
    @override
  