function round(number,X) {
X = (!X ? 2 : X);
return Math.round(number*Math.pow(10,X))/Math.pow(10,X);
}
function ComputeTotal( form )
{
    	a = form.Basic1.value = round(form.Basic.value)
	b = form.Pages1.value = round((form.Pages.value)*(form.Basic.value/4))
	c1 = form.Copyondisc1.value = round(form.Copyondisc.value * ((form.Pages.value)*(form.Basic.value/6)/17))
	f2 = form.Multilist1.value = round(form.Multilist.value)
	f3 = form.Tips1.value = round(form.Tips.value)
	f4 = form.Tell1.value = round(form.Tell.value)
	f6 = form.Calc1.value = round(form.Calc.value)
	f7 = form.Fileshare1.value = round(form.Fileshare.value)
	f8 = form.Members1.value = round(form.Members.value)
	f9 = form.Multimembers1.value = round(form.Multimembers.value)
	f10 = form.Forum1.value = round(form.Forum.value)
	f11 = form.Recruitment1.value = round(form.Recruitment.value)
	f12 = form.Cart1.value = round(form.Cart.value)	
	f13 = form.Reservations1.value = round(form.Reservations.value)	
	f14 = form.Appointments1.value = round(form.Appointments.value)
	f15 = form.Blogging1.value = round(form.Blogging.value)
        j1 = form.Listings1.value = round(form.Listings.value)
	l1 = form.Host1.value = round(form.Host.value)
	m1 = form.Reg1.value = round(form.Reg.value)

sub1 = a+b+c1+f2+f3+f4+f6+f7+f8+f9+f10+f11+f12+f13+f14+f15+j1+l1+m1
form.sub1.value = round(sub1)
discounted = round(form.sub1.value * form.discount.value)
form.discamm.value = round(form.sub1.value * form.discount.value)
form.sub2.value = round(form.sub1.value - discounted)
subt2 = round(form.sub2.value)
vat1 = form.vat.value = round(form.sub2.value / 100  * form.vatrate.value)
form.total.value = round(subt2 + vat1)
}