anchor.diff:      return n1.location.distanceTo(n2.location);
     }
   
  +  bool containsNode(PointNode node) {
  +    return this.containsPoint(node.location);
  +  }
  +
     /// Returns a list of all the nodes that are part of this graph.
     List<PointNode> get allNodes {
       List<PointNode> nodes = new List<PointNode>();
  
positive.code:     return this._nodesFromOffsets(node, offsets, onlyWalkable);
    }
  
    /// Return whether or not the 2-dimensional List<List> is rectangular.
    static bool _isRectangular(List<List> list) {
      if (list.length == 0) {
  
negative.code: 
      neighbors.addAll(this._getSides(node, onlyWalkable));
      if (this.diagonalMovement != DiagonalMovement.Never) {
        neighbors.addAll(this._getCorners(node, onlyWalkable, diagonalMovement));
      }
  
      return neighbors;
  