static HslColor ParseColor (string value)
{
if (value.Length == 9 && value.StartsWith ("#", StringComparison.Ordinal)) {
double r = ((double) int.Parse (value.Substring (1,2), System.Globalization.NumberStyles.HexNumber)) / 255;
double g = ((double) int.Parse (value.Substring (3,2), System.Globalization.NumberStyles.HexNumber)) / 255;
double b = ((double) int.Parse (value.Substring (5,2), System.Globalization.NumberStyles.HexNumber)) / 255;
double a = ((double) int.Parse (value.Substring (7,2), System.Globalization.NumberStyles.HexNumber)) / 255;
return new HslColor (r, g, b, a);
}
return HslColor.Parse (value);
}