code: func rgbToHSL(r, g, b uint8) (float64, float64, float64) {
  	rr := float64(r) / 255
  	gg := float64(g) / 255
  	bb := float64(b) / 255
  
  	max := math.Max(rr, math.Max(gg, bb))
  	min := math.Min(rr, math.Min(gg, bb))
  
  	l := (max + min) / 2
  
  	if max == min {
  		return 0, 0, l
  	}
  
  	var h, s float64
  	d := max - min
  	if l > 0.5 {
  		s = d / (2 - max - min)
  	} else {
  		s = d / (max + min)
  	}
  
  	switch max {
  	case rr:
  		h = (gg - bb) / d
  		if g < b {
  			h += 6
  		}
  	case gg:
  		h = (bb-rr)/d + 2
  	case bb:
  		h = (rr-gg)/d + 4
  	}
  	h /= 6
  
  	return h, s, l
  }
docs: // rgbToHSL converts a color from RGB to HSL.