        var updateSelection = function (d) {          popup.style('opacity', function (d0) {              if (d0 === d) {                  if (selectedLink === d) {                      selectedLink = null;                      return '0';                  } else {                      selectedLink = d;                      return '0';                  }              }              return '0';          });            path.classed('selected', function (d) { return d === selectedLink; })            popup.selectAll('rect[tag=\'smPopupBack\']')              .attr('x', function (d) { return x(d.$refX) + 0; })              .attr('y', function (d) { return y(d.$refY) + 0; })              .attr('rx', 0 * k)              .attr('ry', 0 * k)              .attr('height', function (d) { return ((d === selectedLink) ? pSize * k : 0) })              .attr('width', function (d) { return ((d === selectedLink) ? pSize * k : 0) });            popup.selectAll('rect[tag=\'smPopup\']')              .attr('x', function (d) { return x(d.$refX); })              .attr('y', function (d) { return y(d.$refY); })              .attr('rx', 0 * k)              .attr('ry', 0 * k)              .attr('height', function (d) { return ((d === selectedLink) ? pSize * k : 0) })              .attr('width', function (d) { return ((d === selectedLink) ? pSize * k : 0) });            d0.event.stopPropagation();      };        var draw