anchor.diff:      svg.selectAll("path").transition().duration(500).attr("stroke-width", ".35").attr("opacity", ".5");
   };
   
  +var textContent = function(d, i) { return this.parentNode.className.animVal; };
  +
   window.onload = function() {
       var legendHeight = 200;
       windowWidth = window.innerWidth;
  
positive.code:             }
          };
  
          var textX = function(d, i, maxrad) {
              if (onRight(i)) {
                  return Math.min(50, 2 * maxrad);
              } else {
                  return Math.max(-50, -2 * maxrad);
              }
          };
  
          var textContent = function(d, i) { return this.parentNode.className.animVal; };
  
          var text = g.append("text").text(textContent)
          .attr("x", function(d, i) { return textX(d, i, maxrad); })
          .attr("text-anchor", textAnchor)
          .attr("transform", textRotation)
          .attr("fill", textFill);
  
          circles.on("mouseover", pacticipantMouseover).on("mouseout", pacticipantMouseout);
  
negative.code:             return relationshipData(pacticipant, relationships);
          }).enter()
          .append("path")
          .attr("d", function(d){ return relationshipPath(d, nodeLocations, pacticipants); })
          .attr("stroke", relationshipColour).attr("stroke-width", ".35")
          .attr("opacity", ".5")
          .attr("fill", "none")
  