._snapOffset = undefined;
        return;
      }

      let commonOffset = offset;

      // find out if any snapping is desired for any Node being dragged
      const sit = parts.iterator;
      while (sit.next()) {
        const node = sit.key;
        if (!(node instanceof go.Node)) continue;
        const info = sit.value;
        const newloc = info.point.copy().add(offset);

        // now calculate snap point for this Node
        const snapoffset = newloc.copy().subtract(node.location);
        let