function fnHslToRgb(h, s, l){ // H as degrees 0..360, S L as decimals, 0..1.
    h /= 360;
    function fnHueToRgb(x, y, h){
        if(h < 0)
            h += 1;
        else if(h > 1)
            h -= 1;
        return ((h * 6 < 1)?
            x +(y - x) * h * 6:
            (h * 2 < 1)?
                y:
                (h * 3 < 2)?
                    x + (y - x) * (2 / 3 - h) * 6:
                    x);
    }
    var
        y = (l > .5)?
            l + s - l * s:
            l * (s + 1),
        x = l * 2 - y,
        r = fnHueToRgb(x, y, h + 1 / 3) * 255,
        g = fnHueToRgb(x, y, h) * 255,
        b = fnHueToRgb(x, y, h - 1 / 3) * 255;
    return [r, g, b];
}

function setCookie(c_name,value,expiredays)
{
	var exdate=new Date();
	exdate.setDate(exdate.getDate()+expiredays);
	document.cookie=c_name+ "=" +escape(value)+
	((expiredays==null) ? "" : ";expires="+exdate.toGMTString());
}

function getCookie(c_name)
{
if (document.cookie.length>0)
  {
  c_start=document.cookie.indexOf(c_name + "=")
  if (c_start!=-1)
    { 
     c_start=c_start + c_name.length+1 
     c_end=document.cookie.indexOf(";",c_start)
    if (c_end==-1) c_end=document.cookie.length
    return unescape(document.cookie.substring(c_start,c_end));
    } 
  }
return ""
}

function getbgcolour()
{
 if(getCookie("rox_h") == "")
 { // first time
 	setCookie("rox_h",  120, 28);
 	
 	return fnHslToRgb(120, 0.37, 0.87);
 }

  var theH = getCookie("rox_h");
  var num = parseInt(theH);
  num += 5;
  if(num > 360) num = 0;
  setCookie("rox_h", num, 28);
  
  return fnHslToRgb( num , 0.37, 0.87 );
}