     .attr("cx", 0)
     .attr("cy", 0)
     .attr("r", 4)
+    .attr("style", "display:none")
     .attr("transform", "translate(200, 200)")
     .attr("fill", "none")
     .attr("stroke-width", 2)

    redrawSwatch()

sliderLightness = d3.slider()
  .min(1)
  .max(99)
  .on 'slide', (e, value) ->
    L = value
    background.redraw()

    .attr("transform", "translate(200, 200)")

  redrawBackground = ->
    if L != 0 and L != 100

      pairs = _.map hs(L), (hrad) ->
        C = $.husl._maxChroma L, hrad * 180 / Math.PI
        return [hrad, C]

      Cs = _.map pairs, (pair) -> pair[1]

      maxC = Math.max Cs...
      minC = Math.min Cs...

      bounds = getBounds L

      intersections = []
      for i in getIntersections _.pairs bounds
        good = true
        for [name, bound] in _.pairs bounds
          if name in i.names
            continue
          int = intersection2 bound, i.point
          if int != null
            good = false
        if good
          intersections.push(i)

      cleanBounds = []
      for {point, names} in intersections
        cleanBounds = _.union cleanBounds, names

      longest = 0
      for {point} in intersections
        length = distanceFromPole point
        if length > longest
          longest = length

      scale = 190 / longest

      sortedIntersections = _.pluck sortIntersections(intersections), 'point'

      shape = d3.geom.polygon sortedIntersections
      if shape.area() < 0
        sortedIntersections.reverse()
        shape = d3.geom.polygon sortedIntersections

      contrasting = if L > 70 then '#1b1b1b' else '#ffffff'

      pastelBoundary
        .attr("r", scale * minC)
        .attr("stroke", contrasting)

      center
        .attr("fill", contrasting)

    else
      pastelBoundary
        .attr("r", 0)
        .attr("stroke", contrasting)

      center
        .attr("fill", contrasting)


  background.redraw = redrawBackground

