class Sass::Value::Color::Space::Hwb

def bounded?

def bounded?
  true
end

def convert(dest, hue, whiteness, blackness, alpha)

def convert(dest, hue, whiteness, blackness, alpha)
  missing_hue = hue.nil?
  hue = ((hue.nil? ? 0 : hue) % 360) / 30.0
  whiteness = (whiteness.nil? ? 0 : whiteness) / 100.0
  blackness = (blackness.nil? ? 0 : blackness) / 100.0
  sum = whiteness + blackness
  if sum > 1
    gray = whiteness / sum
    SRGB.convert(dest,
                 gray,
                 gray,
                 gray,
                 alpha,
                 missing_hue:)
  else
    f = lambda do |n|
      k = (n + hue) % 12
      0.5 - ([-1, [k - 3, 9 - k, 1].min].max / 2.0)
    end
    factor = 1 - sum
    SRGB.convert(dest,
                 (f.call(0) * factor) + whiteness,
                 (f.call(8) * factor) + whiteness,
                 (f.call(4) * factor) + whiteness,
                 alpha,
                 missing_hue:)
  end
end

def initialize

def initialize
  super('hwb', [
    Utils::HUE_CHANNEL,
    LinearChannel.new('whiteness', 0, 100, requires_percent: true).freeze,
    LinearChannel.new('blackness', 0, 100, requires_percent: true).freeze
  ].freeze)
end

def legacy?

def legacy?
  true
end

def polar?

def polar?
  true
end