code: function(options) {
      options = options || {};
  
      var LS = [options.lightness, options.saturation].map(function(param) {
          param = param || [0.35, 0.5, 0.65]; // note that 3 is a prime
          return isArray(param) ? param.concat() : [param];
      });
  
      this.L = LS[0];
      this.S = LS[1];
  
      if (typeof options.hue === 'number') {
          options.hue = {min: options.hue, max: options.hue};
      }
      if (typeof options.hue === 'object' && !isArray(options.hue)) {
          options.hue = [options.hue];
      }
      if (typeof options.hue === 'undefined') {
          options.hue = [];
      }
      this.hueRanges = options.hue.map(function (range) {
          return {
              min: typeof range.min === 'undefined' ? 0 : range.min,
              max: typeof range.max === 'undefined' ? 360: range.max
          };
      });
  
      this.hash = options.hash || BKDRHash;
  }
docs: Color Hash Class
  
  @class