     var perline = 18;
     var divSet = false;
     var curId;
     var colorLevels = Array('0', '2', '4','6','8','A','C','E','F');
     var colorArray = Array();
     var ie = false;
     var nocolor = 'none';
 if (document.all) { ie = true; nocolor = ''; }
 function getObj(id) {
if (ie) { return document.all[id]; } 
else {return document.getElementById(id);}
 }

     function addColor(r, g, b) {
     var red = colorLevels[r];
     var green = colorLevels[g];
     var blue = colorLevels[b];
     addColorValue(red, green, blue);
     }

     function addColorValue(r, g, b) {
     colorArray[colorArray.length] = '#' + r + r + g + g + b + b;
     }
     function addColorValue1(r, g, b) {
     colorArray[colorArray.length] = '#' + r + g + b;
     }     

     function setColor(color) {
     var link = getObj(curId);
     var field = getObj(curId + 'field');
     var picker = getObj('colorpicker');
     field.value = color;
     if (color == '') {
     link.style.background = nocolor;
     link.style.color = nocolor;
     color = nocolor;
     } else {
     link.style.background = color;
     link.style.color = color;
    }
     picker.style.display = 'none';
    eval(getObj(curId + 'field').title);
     }
        
     function setDiv() {     
     if (!document.createElement) { return; }
        var elemDiv = document.createElement('div');
        if (typeof(elemDiv.innerHTML) != 'string') { return; }
        genColors();
        elemDiv.id = 'colorpicker';
    elemDiv.style.position = 'absolute';
        elemDiv.style.display = 'none';
        elemDiv.style.border = '#000000 1px solid';
        elemDiv.style.background = '#FFFFFF';
        elemDiv.innerHTML = '<span style="font-family:Verdana; font-size:11px;">' 
        + getColorTable() 
        + '</span>';

        document.body.appendChild(elemDiv);
        divSet = true;
     }
     
     function pickColor(id) {
     if (!divSet) { setDiv(); }
     var picker = getObj('colorpicker');     
if (id == curId && picker.style.display == 'block') {
picker.style.display = 'none';
return;
}
     curId = id;
     var thelink = getObj(id);
     picker.style.top = getAbsoluteOffsetTop(thelink) + 20;
     picker.style.left = getAbsoluteOffsetLeft(thelink);     
picker.style.display = 'block';
     }
     
     function genColors() {
        addColorValue1('33','00','00');
		addColorValue1('33','33','00');
		addColorValue1('33','66','00');
		addColorValue1('33','99','00');
		addColorValue1('33','CC','00');
		addColorValue1('33','FF','00');
		addColorValue1('66','FF','00');
		addColorValue1('66','CC','00');
		addColorValue1('66','99','00');
		addColorValue1('66','66','00');
		addColorValue1('66','33','00');
		addColorValue1('66','00','00');
		addColorValue1('FF','00','00');
		addColorValue1('FF','33','00');
		addColorValue1('FF','66','00');
		addColorValue1('FF','99','00');
		addColorValue1('FF','CC','00');
		addColorValue1('FF','FF','00');
		addColorValue1('33','00','33');
		addColorValue1('33','33','33');
		addColorValue1('33','66','33');
		addColorValue1('33','99','33');
		addColorValue1('33','CC','33');
		addColorValue1('33','FF','33');
		addColorValue1('66','FF','33');
		addColorValue1('66','CC','33');
		addColorValue1('66','99','33');
		addColorValue1('66','66','33');
		addColorValue1('66','33','33');
		addColorValue1('66','00','33');
		addColorValue1('FF','00','33');
		addColorValue1('FF','33','33');
		addColorValue1('FF','66','33');
		addColorValue1('FF','99','33');
		addColorValue1('FF','CC','33');
		addColorValue1('FF','FF','33');
		addColorValue1('33','00','66');
		addColorValue1('33','33','66');
		addColorValue1('33','66','66');
		addColorValue1('33','99','66');
		addColorValue1('33','CC','66');
		addColorValue1('33','FF','66');
		addColorValue1('66','FF','66');
		addColorValue1('66','CC','66');
		addColorValue1('66','99','66');
		addColorValue1('66','66','66');
		addColorValue1('66','33','66');
		addColorValue1('66','00','66');
		addColorValue1('FF','00','66');
		addColorValue1('FF','33','66');
		addColorValue1('FF','66','66');
		addColorValue1('FF','99','66');
		addColorValue1('FF','CC','66');
		addColorValue1('FF','FF','66');
		addColorValue1('33','00','99');
		addColorValue1('33','33','99');
		addColorValue1('33','66','99');
		addColorValue1('33','99','99');
		addColorValue1('33','CC','99');
		addColorValue1('33','FF','99');
		addColorValue1('66','FF','99');
		addColorValue1('66','CC','99');
		addColorValue1('66','99','99');
		addColorValue1('66','66','99');
		addColorValue1('66','33','99');
		addColorValue1('66','00','99');
		addColorValue1('FF','00','99');
		addColorValue1('FF','33','99');
		addColorValue1('FF','66','99');
		addColorValue1('FF','99','99');
		addColorValue1('FF','CC','99');
		addColorValue1('FF','FF','99');
		addColorValue1('33','00','CC');
		addColorValue1('33','33','CC');
		addColorValue1('33','66','CC');
		addColorValue1('33','99','CC');
		addColorValue1('33','CC','CC');
		addColorValue1('33','FF','CC');
		addColorValue1('66','FF','CC');
		addColorValue1('66','CC','CC');
		addColorValue1('66','99','CC');
		addColorValue1('66','66','CC');
		addColorValue1('66','33','CC');
		addColorValue1('66','00','CC');
		addColorValue1('FF','00','CC');
		addColorValue1('FF','33','CC');
		addColorValue1('FF','66','CC');
		addColorValue1('FF','99','CC');
		addColorValue1('FF','CC','CC');
		addColorValue1('FF','FF','CC');
		addColorValue1('33','00','FF');
		addColorValue1('33','33','FF');
		addColorValue1('33','66','FF');
		addColorValue1('33','99','FF');
		addColorValue1('33','CC','FF');
		addColorValue1('33','FF','FF');
		addColorValue1('66','FF','FF');
		addColorValue1('66','CC','FF');
		addColorValue1('66','99','FF');
		addColorValue1('66','66','FF');
		addColorValue1('66','33','FF');
		addColorValue1('66','00','FF');
		addColorValue1('FF','00','FF');
		addColorValue1('FF','33','FF');
		addColorValue1('FF','66','FF');
		addColorValue1('FF','99','FF');
		addColorValue1('FF','CC','FF');
		addColorValue1('FF','FF','FF');
		addColorValue1('00','00','FF');
		addColorValue1('00','33','FF');
		addColorValue1('00','66','FF');
		addColorValue1('00','99','FF');
		addColorValue1('00','CC','FF');
		addColorValue1('00','FF','FF');
		addColorValue1('99','FF','FF');
		addColorValue1('99','CC','FF');
		addColorValue1('99','99','FF');
		addColorValue1('99','66','FF');
		addColorValue1('99','33','FF');
		addColorValue1('99','00','FF');
		addColorValue1('CC','00','FF');
		addColorValue1('CC','33','FF');
		addColorValue1('CC','66','FF');
		addColorValue1('CC','99','FF');
		addColorValue1('CC','CC','FF');
		addColorValue1('CC','FF','FF');
		addColorValue1('00','00','CC');
		addColorValue1('00','33','CC');
		addColorValue1('00','66','CC');
		addColorValue1('00','99','CC');
		addColorValue1('00','CC','CC');
		addColorValue1('00','FF','CC');
		addColorValue1('99','FF','CC');
		addColorValue1('99','CC','CC');
		addColorValue1('99','99','CC');
		addColorValue1('99','66','CC');
		addColorValue1('99','33','CC');
		addColorValue1('99','00','CC');
		addColorValue1('CC','00','CC');
		addColorValue1('CC','33','CC');
		addColorValue1('CC','66','CC');
		addColorValue1('CC','99','CC');
		addColorValue1('CC','CC','CC');
		addColorValue1('CC','FF','CC');
		addColorValue1('00','00','99');
		addColorValue1('00','33','99');
		addColorValue1('00','66','99');
		addColorValue1('00','99','99');
		addColorValue1('00','CC','99');
		addColorValue1('00','FF','99');
		addColorValue1('99','FF','99');
		addColorValue1('99','CC','99');
		addColorValue1('99','99','99');
		addColorValue1('99','66','99');
		addColorValue1('99','33','99');
		addColorValue1('99','00','99');
		addColorValue1('CC','00','99');
		addColorValue1('CC','33','99');
		addColorValue1('CC','66','99');
		addColorValue1('CC','99','99');
		addColorValue1('CC','CC','99');
		addColorValue1('CC','FF','99');
		addColorValue1('00','00','66');
		addColorValue1('00','33','66');
		addColorValue1('00','66','66');
		addColorValue1('00','99','66');
		addColorValue1('00','CC','66');
		addColorValue1('00','FF','66');
		addColorValue1('99','FF','66');
		addColorValue1('99','CC','66');
		addColorValue1('99','99','66');
		addColorValue1('99','66','66');
		addColorValue1('99','33','66');
		addColorValue1('99','00','66');
		addColorValue1('CC','00','66');
		addColorValue1('CC','33','66');
		addColorValue1('CC','66','66');
		addColorValue1('CC','99','66');
		addColorValue1('CC','CC','66');
		addColorValue1('CC','FF','66');
		addColorValue1('00','00','33');
		addColorValue1('00','33','33');
		addColorValue1('00','66','33');
		addColorValue1('00','99','33');
		addColorValue1('00','CC','33');
		addColorValue1('00','FF','33');
		addColorValue1('99','FF','33');
		addColorValue1('99','CC','33');
		addColorValue1('99','99','33');
		addColorValue1('99','66','33');
		addColorValue1('99','33','33');
		addColorValue1('99','00','33');
		addColorValue1('CC','00','33');
		addColorValue1('CC','33','33');
		addColorValue1('CC','66','33');
		addColorValue1('CC','99','33');
		addColorValue1('CC','CC','33');
		addColorValue1('CC','FF','33');
		addColorValue1('00','00','00');
		addColorValue1('00','33','00');
		addColorValue1('00','66','00');
		addColorValue1('00','99','00');
		addColorValue1('00','CC','00');
		addColorValue1('00','FF','00');
		addColorValue1('99','FF','00');
		addColorValue1('99','CC','00');
		addColorValue1('99','99','00');
		addColorValue1('99','66','00');
		addColorValue1('99','33','00');
		addColorValue1('99','00','00');
		addColorValue1('CC','00','00');
		addColorValue1('CC','33','00');
		addColorValue1('CC','66','00');
		addColorValue1('CC','99','00');
		addColorValue1('CC','CC','00');
		addColorValue1('CC','FF','00');
		addColorValue1('00','00','00');
		addColorValue1('11','11','11');
		addColorValue1('22','22','22');
		addColorValue1('33','33','33');
		addColorValue1('44','44','44');
		addColorValue1('55','55','55');
		addColorValue1('66','66','66');
		addColorValue1('77','77','77');
		addColorValue1('88','88','88');
		addColorValue1('99','99','99');
		addColorValue1('AA','AA','AA');
		addColorValue1('BB','BB','BB');
		addColorValue1('CC','CC','CC');
		addColorValue1('DD','DD','DD');
		addColorValue1('EE','EE','EE');
		addColorValue1('FF','FF','FF');


       return colorArray;
     }
     function getColorTable() {
         var colors = colorArray;
       var tableCode = '';
         tableCode += '<table border="0" cellspacing="1" cellpadding="1">';
         for (i = 0; i < colors.length; i++) {
              if (i % perline == 0) { tableCode += '<tr>'; }
              tableCode += '<td bgcolor="#000000"><a style="outline: 1px solid #000000; color: ' 
                + colors[i] + '; background: ' + colors[i] + ';font-size: 10px;" title="' 
                + colors[i] + '" href="javascript:setColor(\'' + colors[i] + '\');">&nbsp;&nbsp;&nbsp;</a></td>';
              if (i % perline == perline - 1) { tableCode += '</tr>'; }
         }
         if (i % perline != 0) { tableCode += '</tr>'; }
         tableCode += '</table>';
       return tableCode;
     }
     function relateColor(id, color) {
     var link = getObj(id);
     if (color == '') {
     link.style.background = nocolor;
     link.style.color = nocolor;
     color = nocolor;
     } else {
     link.style.background = color;
     link.style.color = color;
    }
    eval(getObj(id + 'field').title);
     }
     function getAbsoluteOffsetTop(obj) {
     var top = obj.offsetTop;
     var parent = obj.offsetParent;
     while (parent != document.body) {
     top += parent.offsetTop;
     parent = parent.offsetParent;
     }
     return top;
     }
     
     function getAbsoluteOffsetLeft(obj) {
     var left = obj.offsetLeft;
     var parent = obj.offsetParent;
     while (parent != document.body) {
     left += parent.offsetLeft;
     parent = parent.offsetParent;
     }
     return left;
     }

	function NewWindow(mypage,myname,scroll){
		LeftPosition = (screen.width) ? (screen.width-300)/2 : 0;
		TopPosition = (screen.height) ? (screen.height-110)/2 : 0;
		settings =
		'height='+110+',width='+300+',top='+TopPosition+',left='+LeftPosition+',scrollbars=no,status=no,location=no'
		win = window.open(mypage,myname,settings);
	}

	function NewWindow1(w, h, l, mypage,myname,scroll){
		if (((l+w)-screen.width)>0) {
			LeftPosition = (screen.width-w-10);
		}
		else {
			LeftPosition = l;
		}
		TopPosition = 0;
		settings =
		'height='+h+',width='+w+',top='+TopPosition+',left='+ LeftPosition +',scrollbars=no,status=no,location=no'
		win = window.open(mypage,myname,settings);
	}
