function compute(form){
/* This calculates the area needed for storage from the form - all of
the parseFloats and isNan ? 0 : X's are to make sure that the script
won't crash if someone enters nonsense into a box.

To adjust the packing height of units or the size difference for tight
versus loose packing, look for this marker:
     //===============================
 */



var totalit = 0;
totalit += isNaN(parseFloat(form.misc.value)) ? 0 : parseFloat(form.misc.value) * 1 ; 
totalit += isNaN(parseFloat(form.bkcs.value)) ? 0 : parseFloat(form.bkcs.value) * 20 ; 
totalit += isNaN(parseFloat(form.cabc.value)) ? 0 : parseFloat(form.cabc.value) * 10 ; 
totalit += isNaN(parseFloat(form.chst.value)) ? 0 : parseFloat(form.chst.value) * 5 ; 
totalit += isNaN(parseFloat(form.cham.value)) ? 0 : parseFloat(form.cham.value) * 10 ; 
totalit += isNaN(parseFloat(form.chrk.value)) ? 0 : parseFloat(form.chrk.value) * 12 ; 
totalit += isNaN(parseFloat(form.cstc.value)) ? 0 : parseFloat(form.cstc.value) * 15 ; 
totalit += isNaN(parseFloat(form.clok.value)) ? 0 : parseFloat(form.clok.value) * 20 ; 
totalit += isNaN(parseFloat(form.bdda.value)) ? 0 : parseFloat(form.bdda.value) * 30 ; 
totalit += isNaN(parseFloat(form.dssm.value)) ? 0 : parseFloat(form.dssm.value) * 22 ; 
totalit += isNaN(parseFloat(form.dsse.value)) ? 0 : parseFloat(form.dsse.value) * 35 ; 
totalit += isNaN(parseFloat(form.lrtr.value)) ? 0 : parseFloat(form.lrtr.value) * 2 ; 
totalit += isNaN(parseFloat(form.lrtl.value)) ? 0 : parseFloat(form.lrtl.value) * 12 ; 
totalit += isNaN(parseFloat(form.lrlf.value)) ? 0 : parseFloat(form.lrlf.value) * 3 ; 
totalit += isNaN(parseFloat(form.lrlp.value)) ? 0 : parseFloat(form.lrlp.value) * 3 ; 
totalit += isNaN(parseFloat(form.lrmr.value)) ? 0 : parseFloat(form.lrmr.value) * 2 ; 
totalit += isNaN(parseFloat(form.lrmc.value)) ? 0 : parseFloat(form.lrmc.value) * 10 ; 
totalit += isNaN(parseFloat(form.lrpg.value)) ? 0 : parseFloat(form.lrpg.value) * 70 ; 
totalit += isNaN(parseFloat(form.lrta.value)) ? 0 : parseFloat(form.lrta.value) * 2 ; 
totalit += isNaN(parseFloat(form.lrrgl.value)) ? 0 : parseFloat(form.lrrgl.value) * 10 ; 
totalit += isNaN(parseFloat(form.lrrgs.value)) ? 0 : parseFloat(form.lrrgs.value) * 3 ; 
totalit += isNaN(parseFloat(form.lrsow.value)) ? 0 : parseFloat(form.lrsow.value) * 10 ; 
totalit += isNaN(parseFloat(form.lrsos.value)) ? 0 : parseFloat(form.lrsos.value) * 30 ; 
totalit += isNaN(parseFloat(form.lrsol.value)) ? 0 : parseFloat(form.lrsol.value) * 35 ; 
totalit += isNaN(parseFloat(form.lrso3.value)) ? 0 : parseFloat(form.lrso3.value) * 50 ; 
totalit += isNaN(parseFloat(form.lrso4.value)) ? 0 : parseFloat(form.lrso4.value) * 60 ; 
totalit += isNaN(parseFloat(form.lrsc.value)) ? 0 : parseFloat(form.lrsc.value) * 8 ; 
totalit += isNaN(parseFloat(form.lrto.value)) ? 0 : parseFloat(form.lrto.value) * 12 ; 
totalit += isNaN(parseFloat(form.lrct.value)) ? 0 : parseFloat(form.lrct.value) * 5 ; 
totalit += isNaN(parseFloat(form.lret.value)) ? 0 : parseFloat(form.lret.value) * 5 ; 
totalit += isNaN(parseFloat(form.lrtvp.value)) ? 0 : parseFloat(form.lrtvp.value) * 5 ; 
totalit += isNaN(parseFloat(form.lrtvc.value)) ? 0 : parseFloat(form.lrtvc.value) * 15 ; 
totalit += isNaN(parseFloat(form.lrtn.value)) ? 0 : parseFloat(form.lrtn.value) * 5 ; 
totalit += isNaN(parseFloat(form.drbh.value)) ? 0 : parseFloat(form.drbh.value) * 10 ; 
totalit += isNaN(parseFloat(form.drbb.value)) ? 0 : parseFloat(form.drbb.value) * 30 ; 
totalit += isNaN(parseFloat(form.drht.value)) ? 0 : parseFloat(form.drht.value) * 20 ; 
totalit += isNaN(parseFloat(form.drcc.value)) ? 0 : parseFloat(form.drcc.value) * 20 ; 
totalit += isNaN(parseFloat(form.drdt.value)) ? 0 : parseFloat(form.drdt.value) * 30 ; 
totalit += isNaN(parseFloat(form.drdc.value)) ? 0 : parseFloat(form.drdc.value) * 5 ; 
totalit += isNaN(parseFloat(form.drrl.value)) ? 0 : parseFloat(form.drrl.value) * 10 ; 
totalit += isNaN(parseFloat(form.drrs.value)) ? 0 : parseFloat(form.drrs.value) * 3 ; 
totalit += isNaN(parseFloat(form.apacs.value)) ? 0 : parseFloat(form.apacs.value) * 15 ; 
totalit += isNaN(parseFloat(form.apacl.value)) ? 0 : parseFloat(form.apacl.value) * 20 ; 
totalit += isNaN(parseFloat(form.apdw.value)) ? 0 : parseFloat(form.apdw.value) * 20 ; 
totalit += isNaN(parseFloat(form.apf1.value)) ? 0 : parseFloat(form.apf1.value) * 45 ; 
totalit += isNaN(parseFloat(form.apf2.value)) ? 0 : parseFloat(form.apf2.value) * 60 ; 
totalit += isNaN(parseFloat(form.apr6.value)) ? 0 : parseFloat(form.apr6.value) * 30 ; 
totalit += isNaN(parseFloat(form.apr7.value)) ? 0 : parseFloat(form.apr7.value) * 45 ; 
totalit += isNaN(parseFloat(form.apr1.value)) ? 0 : parseFloat(form.apr1.value) * 60 ; 
totalit += isNaN(parseFloat(form.aptc.value)) ? 0 : parseFloat(form.aptc.value) * 15 ; 
totalit += isNaN(parseFloat(form.apva.value)) ? 0 : parseFloat(form.apva.value) * 5 ; 
totalit += isNaN(parseFloat(form.apwm.value)) ? 0 : parseFloat(form.apwm.value) * 25 ; 
totalit += isNaN(parseFloat(form.apwa.value)) ? 0 : parseFloat(form.apwa.value) * 25 ; 
totalit += isNaN(parseFloat(form.ktch.value)) ? 0 : parseFloat(form.ktch.value) * 5 ; 
totalit += isNaN(parseFloat(form.ktbt.value)) ? 0 : parseFloat(form.ktbt.value) * 10 ; 
totalit += isNaN(parseFloat(form.kthc.value)) ? 0 : parseFloat(form.kthc.value) * 5 ; 
totalit += isNaN(parseFloat(form.ktib.value)) ? 0 : parseFloat(form.ktib.value) * 2 ; 
totalit += isNaN(parseFloat(form.ktmo.value)) ? 0 : parseFloat(form.ktmo.value) * 10 ; 
totalit += isNaN(parseFloat(form.ktsc.value)) ? 0 : parseFloat(form.ktsc.value) * 15 ; 
totalit += isNaN(parseFloat(form.ktta.value)) ? 0 : parseFloat(form.ktta.value) * 5 ; 
totalit += isNaN(parseFloat(form.ktuc.value)) ? 0 : parseFloat(form.ktuc.value) * 10 ; 
totalit += isNaN(parseFloat(form.brbd.value)) ? 0 : parseFloat(form.brbd.value) * 60 ; 
totalit += isNaN(parseFloat(form.brbq.value)) ? 0 : parseFloat(form.brbq.value) * 65 ; 
totalit += isNaN(parseFloat(form.brbk.value)) ? 0 : parseFloat(form.brbk.value) * 70 ; 
totalit += isNaN(parseFloat(form.brbb.value)) ? 0 : parseFloat(form.brbb.value) * 70 ; 
totalit += isNaN(parseFloat(form.brbs.value)) ? 0 : parseFloat(form.brbs.value) * 5 ; 
totalit += isNaN(parseFloat(form.brcb.value)) ? 0 : parseFloat(form.brcb.value) * 10 ; 
totalit += isNaN(parseFloat(form.brcs.value)) ? 0 : parseFloat(form.brcs.value) * 5 ; 
totalit += isNaN(parseFloat(form.brcc.value)) ? 0 : parseFloat(form.brcc.value) * 15 ; 
totalit += isNaN(parseFloat(form.brca.value)) ? 0 : parseFloat(form.brca.value) * 30 ; 
totalit += isNaN(parseFloat(form.brds.value)) ? 0 : parseFloat(form.brds.value) * 22 ; 
totalit += isNaN(parseFloat(form.brvb.value)) ? 0 : parseFloat(form.brvb.value) * 20 ; 
totalit += isNaN(parseFloat(form.brd1.value)) ? 0 : parseFloat(form.brd1.value) * 30 ; 
totalit += isNaN(parseFloat(form.brdd.value)) ? 0 : parseFloat(form.brdd.value) * 40 ; 
totalit += isNaN(parseFloat(form.brns.value)) ? 0 : parseFloat(form.brns.value) * 5 ; 
totalit += isNaN(parseFloat(form.brws.value)) ? 0 : parseFloat(form.brws.value) * 20 ; 
totalit += isNaN(parseFloat(form.brwl.value)) ? 0 : parseFloat(form.brwl.value) * 40 ; 
totalit += isNaN(parseFloat(form.msbi.value)) ? 0 : parseFloat(form.msbi.value) * 5 ; 
totalit += isNaN(parseFloat(form.msct.value)) ? 0 : parseFloat(form.msct.value) * 2 ; 
totalit += isNaN(parseFloat(form.msfc.value)) ? 0 : parseFloat(form.msfc.value) * 1 ; 
totalit += isNaN(parseFloat(form.mscf.value)) ? 0 : parseFloat(form.mscf.value) * 10 ; 
totalit += isNaN(parseFloat(form.msod.value)) ? 0 : parseFloat(form.msod.value) * 30 ; 
totalit += isNaN(parseFloat(form.msfa.value)) ? 0 : parseFloat(form.msfa.value) * 5 ; 
totalit += isNaN(parseFloat(form.msfb.value)) ? 0 : parseFloat(form.msfb.value) * 10 ; 
totalit += isNaN(parseFloat(form.msf4.value)) ? 0 : parseFloat(form.msf4.value) * 20 ; 
totalit += isNaN(parseFloat(form.msfl.value)) ? 0 : parseFloat(form.msfl.value) * 5 ; 
totalit += isNaN(parseFloat(form.msgb.value)) ? 0 : parseFloat(form.msgb.value) * 4 ; 
totalit += isNaN(parseFloat(form.mspt.value)) ? 0 : parseFloat(form.mspt.value) * 40 ; 
totalit += isNaN(parseFloat(form.msps.value)) ? 0 : parseFloat(form.msps.value) * 15 ; 
totalit += isNaN(parseFloat(form.mssm.value)) ? 0 : parseFloat(form.mssm.value) * 10 ; 
totalit += isNaN(parseFloat(form.mssl.value)) ? 0 : parseFloat(form.mssl.value) * 3 ; 
totalit += isNaN(parseFloat(form.mslm.value)) ? 0 : parseFloat(form.mslm.value) * 5 ; 
totalit += isNaN(parseFloat(form.mspb.value)) ? 0 : parseFloat(form.mspb.value) * 5 ; 

form.ans.value = totalit;

//===============================
// divide by estimated packing height of 10 feet
var sqfeet = totalit/10;


//form.sugg_rm.value = sugg_rm;
var add_sqft = form.add_hidd.value;
if (add_sqft == 2) {
  //===============================
  // if the "loosely packed" option has been chosen, adjust the volume up by 25%
  sqfeet *= 1.25;
}


//form.sqfeet.value = sqfeet;
var sugg_rm;
if (sqfeet == 0 ) sugg_rm = 0;
else if (sqfeet > 0 && sqfeet <= 50) sugg_rm = 50;
else if (sqfeet > 50 && sqfeet <= 100) sugg_rm = 100;
else if (sqfeet > 100 && sqfeet <= 200) sugg_rm = 200;
else if (sqfeet > 200 && sqfeet <= 250) sugg_rm = 250;
else sugg_rm = "Please Call Us...";


form.add_sqft.value = sugg_rm;

return;
}

function onoption()
{
var the_box = window.document.COMP.addsqft1;
if (the_box.checked == true) {
window.document.COMP.addsqft2.checked = false;
window.document.COMP.add_hidd.value = 1;
}
}

function offoption()
{
var the_box = window.document.COMP.addsqft2;
if (the_box.checked == true) {
window.document.COMP.addsqft1.checked = false;
window.document.COMP.add_hidd.value = 2;
	}
}

