function MM_preloadImages() { //v3.0
  var d=document; if(d.images){ if(!d.MM_p) d.MM_p=new Array();
    var i,j=d.MM_p.length,a=MM_preloadImages.arguments; for(i=0; i<a.length; i++)
    if (a[i].indexOf("#")!=0){ d.MM_p[j]=new Image; d.MM_p[j++].src=a[i];}}
}

function MM_swapImgRestore() { //v3.0
  var i,x,a=document.MM_sr; for(i=0;a&&i<a.length&&(x=a[i])&&x.oSrc;i++) x.src=x.oSrc;
}

function MM_findObj(n, d) { //v4.01
  var p,i,x;  if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
    d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
  if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[i][n];
  for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers[i].document);
  if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_swapImage() { //v3.0
  var i,j=0,x,a=MM_swapImage.arguments; document.MM_sr=new Array; for(i=0;i<(a.length-2);i+=3)
   if ((x=MM_findObj(a[i]))!=null){document.MM_sr[j++]=x; if(!x.oSrc) x.oSrc=x.src; x.src=a[i+2];}
}

function MM_openBrWindow(theURL,winName,features) { //v2.0
  window.open(theURL,winName,features);
}

function MM_callJS(jsStr) { //v2.0
  return eval(jsStr)
}

function isValidByte(num)
{
	return !isNaN(num) && num >= 0 && num <= 255;
}

function isValidIP(name)
{
	var i;

	if (!document.form.elements[name + "_0"].disabled)
		for (i = 0; i < 4; i++) {
			if (document.form.elements[name + "_" + i].value == "" || !isValidByte(document.form.elements[name + "_" + i].value))
				return false;
		}
	return true;
}

function isValidIPArray(name, num)
{
	var i;

	for (i = 0; i < num; i++)
		if (!isValidIP(name + "_" + i))
			return false;
	return true;
}

function isValidHexByte(num)
{
	var len;
	var i;
	var c;

	len = num.length;
	if (len > 2)
		return false;
	for (i = 0; i < len; i++) {
		c = num.charAt(i).toLowerCase();
		if (c < '0' || '9' < c && c < 'a' || 'f' < c)
			return false;
	}
	return true;
}

function isValidMAC(name)
{
	var i;

	if (!document.form.elements[name + "_0"].disabled)
		for (i = 0; i < 6; i++)
			if (document.form.elements[name + "_" + i].value == "" || !isValidHexByte(document.form.elements[name + "_" + i].value))
				return false;
	return true;
}

function isValidMACArray(name, num)
{
	var i;

	for (i = 0; i < num; i++)
		if (!isValidMAC(name + "_" + i))
			return false;
	return true;
}

function setFromTmp(name, num)
{
	var i;
	var targetname;

	for (i = 0; i < num; i++) {
		targetname = name + "_" + i;
		if (document.form.elements["tmp" + targetname].checked)
			document.form.elements[targetname].value = '1';
		else
			document.form.elements[targetname].value = '0';
	}
}

function getCookie(key) {
    var tmp1, tmp2, xx1, xx2, xx3;

    key += "06F423"
    tmp1 = " " + document.cookie + ";";
    xx1 = xx2 = 0;
    len = tmp1.length;
    while (xx1 < len) {
        xx2 = tmp1.indexOf(";", xx1);
        tmp2 = tmp1.substring(xx1 + 1, xx2);
        xx3 = tmp2.indexOf("=");
        if (tmp2.substring(0, xx3) == key) {
            return(unescape(tmp2.substring(xx3 + 1, xx2 - xx1 - 1)));
        }
        xx1 = xx2 + 1;
    }
    return("");
}

function setCookie(key, val) {
    key += "06F423"
    document.cookie = key + "=" + escape(val) + "; ";
}

function setCookieNoEsc(key, val) {
    key += "06F423"
    document.cookie = key + "=" + val + "; ";
}

function clearCookie(key) {
    key += "06F423"
    document.cookie = key + "= ;expires=1-Jan-1997 00:00:00;";
}

function checkSingleByte(input)
{
	var i;

	for (i = 0; i < input.length; i++)
		if (input.charCodeAt(i) > 0xff)
			return false;
	return true;
}

function lenSingleByte(input)
{
	var i;
	var len;

	len = input.length;
	for (i = 0; i < input.length; i++)
		if (input.charCodeAt(i) > 0xff)
			len++;
	return len;
}

function checkAllowCharacter(input)
{
	if(-1 != input.indexOf("\\"))	return false;
	if(-1 != input.indexOf("/"))	return false;
	if(-1 != input.indexOf(":"))	return false;
	if(-1 != input.indexOf(";"))	return false;
	if(-1 != input.indexOf(","))	return false;
	if(-1 != input.indexOf("\""))	return false;
	if(-1 != input.indexOf("|"))	return false;
	if(-1 != input.indexOf("?"))	return false;
	if(-1 != input.indexOf("*"))	return false;
	if(-1 != input.indexOf("<"))	return false;
	if(-1 != input.indexOf(">"))	return false;
	return true;
}
