function isNumeric( value ) {
	return isFinite( (value * 1.0) );
} 

function updateROI () {
	B15 = document.getElementById('salaryFull').value * 1;
	B16 = document.getElementById('salaryPart').value * 1;
	B17 = document.getElementById('salaryMgmt').value * 1;
	
	if (isNumeric(B15) == false) {
		B15 = 0
		document.getElementById('salaryFull').value = B15;
	}
	if (isNumeric(B16) == false) {
		B16 = 0
		document.getElementById('salaryPart').value = B16;
	}
	if (isNumeric(B17) == false) {
		B17 = 0
		document.getElementById('salaryMgmt').value = B17;
	}
	
	B20 = document.getElementById('laborFull').innerHTML = ((B15)+(B15*0.4)).toFixed(2);
	B21 = document.getElementById('laborPart').innerHTML = ((B16)+(B16*0.4)).toFixed(2);
	B22 = document.getElementById('laborMgmt').innerHTML = ((B17)+(B17*0.4)).toFixed(2);
	B23 = document.getElementById('avgDays').innerHTML = (200).toFixed(2);
	B24 = document.getElementById('avgHourFull').innerHTML = ((B20/B23)/8).toFixed(2);
	B25 = document.getElementById('avgHourPart').innerHTML = ((B21/B23)/8).toFixed(2);

	B26 = document.getElementById('avgHoursEmpMaint').value * 1

	B27 = document.getElementById('avgHoursEmpFix').innerHTML = (B26*0.25).toFixed(2);
	B28 = document.getElementById('avgHourEmp').innerHTML = ((B24*1+B25*1)/2).toFixed(2);
	B29 = document.getElementById('avgHourMgr').innerHTML = (B26*0.2).toFixed(2);
	B30 = document.getElementById('avgHourCostMgr').innerHTML = (B17/B23/8).toFixed(2);
	B31 = document.getElementById('avgMonthCostError').innerHTML = ((B26/25)*8500).toFixed(2);
	B32 = document.getElementById('monthlyCost').innerHTML = (((B26*B28)*1+(B29*B30)*1+B31*1)*1).toFixed(2);
	B33 = document.getElementById('annualCost').innerHTML = (B32*12).toFixed(2);

	E5 = document.getElementById('costLicense').value * 1;
	if (isNumeric(E5) == false) {
		E5 = 0
		document.getElementById('costLicense').value = E5;
	}
	if (E5 < 10000) {
	  E6 = document.getElementById('annualMaint').innerHTML = (E5).toFixed(2);
  }
  else {
  	E6 = document.getElementById('annualMaint').innerHTML = (E5*0.2).toFixed(2);
 	}
	E7 = document.getElementById('avgFoxHoursMaint').innerHTML = (B26*0.2).toFixed(2);
	E8 = document.getElementById('avgFoxHourCost').innerHTML = (B28*1).toFixed(2);
	E9 = document.getElementById('avgFoxHourMgr').innerHTML = (E7*0.2).toFixed(2);
	E10 = document.getElementById('avgFoxHourCostMgr').innerHTML = (B30*1).toFixed(2);
	E11 = document.getElementById('avgFoxMonthCostError').innerHTML = 0;
	E12 = document.getElementById('monthlyFoxCost1').innerHTML = (((E5*1+E6*1)/12)*1+(E7*E8)*1+(E9*E10)+E11*1).toFixed(2);
	E13 = document.getElementById('annualFoxCost1').innerHTML = (E12*12).toFixed(2);
	E15 = document.getElementById('annualFoxCost2').innerHTML = ((E6/12)+(E7*E8)+(E9*E10)+E11).toFixed(2);
	E14 = document.getElementById('monthlyFoxCost2').innerHTML = (E15/12).toFixed(2);
	
	E18 = document.getElementById('reductionFull').value * 1;
	E19 = document.getElementById('reductionPart').value * 1;
	
	if (isNumeric(E18) == false) {
		E18 = 0
		document.getElementById('reductionFull').value = E18;
	}
	if (isNumeric(E19) == false) {
		E19 = 0
		document.getElementById('reductioPart').value = E19;
	}
	E20 = document.getElementById('monthlyLaborRed').innerHTML = (((B15*E18)+(B16*E19))/12).toFixed(2);
	E21 = document.getElementById('annualLaborRed').innerHTML = (E20*12).toFixed(2);
	
	E24 = document.getElementById('annualSavings1').innerHTML = ((B33*1+E21*1)-E13*1).toFixed(2);
	E25 = document.getElementById('monthlySavings1').innerHTML = (E24/12).toFixed(2);
	E26 = document.getElementById('paybackMonths').innerHTML = ((E5*1+E6*1)/E25).toFixed(2);
	E27 = document.getElementById('ROIPercent').innerHTML = (E24/(E5*1+E6*1) * 100).toFixed(2) + "%";
}
