     return UIColor(red: red, green: green, blue: blue)
   }
   
+  /// Return components of hue, saturation, brightness, and alpha
   var hsbaComponents: (hue: CGFloat, saturation: CGFloat, brightness: CGFloat, alpha: CGFloat) {
     var h: CGFloat = 0.0
     var s: CGFloat = 0.0

    self.init(red: red, green: green, blue: blue, alpha: alpha)
  }
  
  convenience init(constrastingBlackOrWhiteColorOn backgroundColor: UIColor) {
    let rgba = backgroundColor.rgbaComponents
    

    return (hue: h, saturation: s, brightness: b, alpha: a)
  }
  
  
  /// Return RGBA components with CGFloat type (betweem 0.0 and 1.0)
  var rgbaComponents: (red: CGFloat, green: CGFloat, blue: CGFloat, alpha: CGFloat) {
    var r: CGFloat = 0
    var g: CGFloat = 0
