     recruitNodes.enter().append('circle')
       .attr('cx', (d) -> d.coordinates[0])
       .attr('cy', (d) -> d.coordinates[1])
-      .attr('r', 4)
+      .attr('r', 3)
       .style('fill', (d) -> colors[d.stars - 1])
       .attr('class', 'recruit')
-      .on('mouseover', tip.show)
-      .on('mouseout', tip.hide)
 
     recruitNodes.exit().remove()
 
 
   # Set the fill domain based on the total number of recruits
   env.fill.domain [0.2, d3.max(env.counties.features, (d) -> d.properties.total)]
-
-  recruit.coordinates = env.projection [recruit.lat, recruit.lon] for recruit in env.recruits
-  school.coordinates  = env.projection [school.lat, school.lon] for school in env.schools
-
-  zoomGroup = map.append('g')
 
   # Add counties
   zoomGroup.append('g')

  #
  # Returns nothing
  drawRecruitPathsToSchool = (school) ->
    schoolRecruits = recruits.filter((r) -> r.institution in [school.team, school.alt])
    schoolRecruits.sort (a, b) -> d3.ascending(parseFloat(a.stars), parseFloat(b.stars))

    recruitFeatures = schoolRecruits.map((player) -> lineStringFromPlayerToSchool(player, school))
    recruitFeatures.sort (a, b) -> d3.ascending(parseFloat(a.properties.stars), parseFloat(b.properties.stars))

    connections = zoomGroup
      .selectAll('.connection')


    connections.enter().append('path')
      .attr('class', (d) -> "connection stars#{d.properties.stars}")
      .attr('d', env.path)
      .style('stroke', (d) -> colors[d.properties.stars - 1])

    connections.exit().remove()
