function calcit(f,ob){

	switch(ob.name){
		case "inches":
		case "fract":
			if (f.inches.value == "") {
				z = 0;
			} else {
				z = f.inches.value;
			}
			f.cms.value = Math.round ((Math.max(parseInt(z),0) + parseFloat(f.fract.value)) * 254) /100;
			break;
		case "cms":
			f.inches.value = Math.floor( f.cms.value * .397);
			x=  (f.cms.value * .397) - f.inches.value;
			y= (x % 0.125);
			z = x-y;
			for(var i=0;i<f.fract.length;i++)
				if(f.fract[i].value==z) f.fract.selectedIndex = i;
			break;
		case "ounces":
			f.grammes.value = Math.round(f.ounces.value * 2835)/100;
			break;
		case "grammes":
			f.ounces.value = Math.round(f.grammes.value / .2835)/100;
			break;
		case "mm":
			z=  Math.round(((f.mm.value -36.4) / 1.25) * 2)/2;
			for(var i=0;i<f.uk.length;i++){
				if(f.uk[i].value==z) f.uk.selectedIndex = i;
				if(f.us[i].value==z) f.us.selectedIndex = i;
			}
			break;
		case "us":
			z=  parseFloat(f.us.value);
			for(var i=0;i<f.us.length;i++){
				if(f.uk[i].value==z) f.uk.selectedIndex = i;
			}
			f.mm.value = z*1.25+36.4;
			break;
		case "uk":
			z=  parseFloat(f.uk.value);
			for(var i=0;i<f.uk.length;i++){
				if(f.us[i].value==z) f.us.selectedIndex = i;
			}
			f.mm.value = z*1.25+36.4;
			break;
	}
}