code: function (rgb, a, originalForm) {
      var self = this;
      //
      // The end goal here, is to parse the arguments
      // into an integer triplet, such as `128, 255, 0`
      //
      // This facilitates operations and conversions.
      //
      if (Array.isArray(rgb)) {
          this.rgb = rgb;
      } else if (rgb.length >= 6) {
          this.rgb = [];
          rgb.match(/.{2}/g).map(function (c, i) {
              if (i < 3) {
                  self.rgb.push(parseInt(c, 16));
              } else {
                  self.alpha = (parseInt(c, 16)) / 255;
              }
          });
      } else {
          this.rgb = [];
          rgb.split('').map(function (c, i) {
              if (i < 3) {
                  self.rgb.push(parseInt(c + c, 16));
              } else {
                  self.alpha = (parseInt(c + c, 16)) / 255;
              }
          });
      }
      this.alpha = this.alpha || (typeof a === 'number' ? a : 1);
      if (typeof originalForm !== 'undefined') {
          this.value = originalForm;
      }
  }
docs: RGB Colors - #ff0014, #eee