acity', 1)

      g.append('circle')
        .attr('r', 20)
        .attr('opacity', 0) // for clicking area

      g.append('circle')
        .attr('r', 4)
        .attr('fill', '#777')
        .attr('stroke', d => selected.has(d.id) ? 'black' : 'none')

      g.append('text')
        .html(nodeHtml)
        .clone(true).lower()
        .attr('fill', 'none')
        .attr('stroke', 'white')
        .attr('stroke-width', 3)

      if (chronology) {
        g.each(chronologyConstraint)
      }

      g.call(