changed color generation to hsl