code: def normalizeColor(value):
      
      from fontParts.base.color import Color
      if not isinstance(value, (tuple, list, Color)):
          raise TypeError("Colors must be tuple instances, not %s."
                          % type(value).__name__)
      if not len(value) == 4:
          raise ValueError("Colors must contain four values, not %d."
                           % len(value))
      for component, v in zip("rgba", value):
          if not isinstance(v, (int, float)):
              raise TypeError("The value for the %s component (%s) is not "
                              "an int or float." % (component, v))
          if v < 0 or v > 1:
              raise ValueError("The value for the %s component (%s) is not "
                               "between 0 and 1." % (component, v))
      return tuple([float(v) for v in value])
docs: Normalizes :ref:`type-color`.
  
      * **value** must be an ``tuple`` or ``list``.
      * **value** must have exactly four items.
      * **value** color components must be between 0 and 1.
      * Returned value is a ``tuple`` containing four ``float`` values.