function regReplace(sOrgVal,sSearchVal,sReplaceVal)
{
	var sVal;
	try
	{
		sVal = new String(sOrgVal);
		if (sVal.length < 1) { return sVal; }
		var sRegExp = eval("/\\" + sSearchVal + "/g");
		sVal = sVal.replace(sRegExp,sReplaceVal);
	}
	catch (exception) { }
	return sVal;

}
function numberFormat(number,decimalNumber,zero,parent,boolean)
{
	number = regReplace(number,",","");
	var templateNumber = parseInt(number);
	var iSign = number < 0 ? -1 : 1;
	templateNumber *= Math.pow(10,decimalNumber);
	templateNumber = Math.round(Math.abs(templateNumber))
	templateNumber /= Math.pow(10,decimalNumber);
	templateNumber *= iSign;
	var returnNumber = new String(templateNumber);
	if (!zero && number < 1 && number > -1 && number != 0)
	if (number > 0)
	returnNumber = returnNumber.substring(1,returnNumber.length);
	else
	returnNumber = "-" + returnNumber.substring(2,returnNumber.length);
	if (boolean && (number >= 1000 || number <= -1000))
	{
		var iStart = returnNumber.indexOf(",");
		if (iStart < 0)
		iStart = returnNumber.length;
		iStart -= 3;
		while (iStart >= 1)
		{
			returnNumber = returnNumber.substring(0,iStart) + "," + returnNumber.substring(iStart,returnNumber.length)
			iStart -= 3;
		}
	}
	if (parent && number < 0)
	{
		returnNumber = "(" + returnNumber.substring(1,returnNumber.length) + ")";
	}
	if (returnNumber == 'NaN')
	returnNumber = '';
	return returnNumber;
}
