<script language="JavaScript"><!--
  function createHexArray(n)
  {
    this.length = n;
    for (var i = 1; i <= n; i++)
      this[i] = i - 1;
    this[11] = "A"; this[12] = "B";
    this[13] = "C"; this[14] = "D";
    this[15] = "E"; this[16] = "F";
    return this;
  }
  hx = new createHexArray(16);

  function convertToHex(x)
  {
    if (x < 17) x = 16;
    var high = x / 16;
    var s = high+"";
    s = s.substring(0, 2);
    high = parseInt(s, 10);
    var left = hx[high + 1];
    var low = x - high * 16;
    if (low < 1) low = 1;
    s = low + "";
    s = s.substring(0, 2);
    low = parseInt(s, 10);
    var right = hx[low + 1];
    var string = left + "" + right;
    return string;
  }

  function makeRainbow(text)
  {
    text = text.substring(0, text.length);
    color_d1 = 255;
    mul = color_d1 / text.length;
    for(var i = 0; i < text.length; i++) {
      color_d1 = 255*Math.sin(i / (text.length / 3));
      color_h1 = convertToHex(color_d1);
      color_d2 = mul * i;
      color_h2 = convertToHex(color_d2);
      k = text.length;
      j = k - i;
      if (j < 0) j = 0;
      color_d3 = mul * j;
      color_h3 = convertToHex(color_d3);
      document.write("<FONT COLOR=\"#" + color_h3 + color_h1 + color_h2 + "\">" + text.substring(i, i + 1) + "</FONT>");
    }
  }
  makeRainbow("    ");
--></script>
