<!--
function checkDependents(form)
{
    var numDependents = 0;
    if (form.numberDependents[1].checked)
    {
        numDependents = 1;
    }
    else if (form.numberDependents[2].checked)
    {
        numDependents = 2;
    }

    if (numDependents == 0)
    {
        form.elderCare.disabled = true;
        form.afterSchool.disabled = true;
        form.dayCare.disabled = true;
        form.nurserySchool.disabled = true;
        form.dayCamp.disabled = true;
        form.otherDependentCare.disabled = true;
    }
    else
    {
        form.elderCare.disabled = false;
        form.afterSchool.disabled = false;
        form.dayCare.disabled = false;
        form.nurserySchool.disabled = false;
        form.dayCamp.disabled = false;
        form.otherDependentCare.disabled = false;
    }
}

function clearMonthly(form)
{
    form.monthlyRx.value = Dollar(0);
    form.monthlyDiabetic.value = Dollar(0);
    form.monthlyContacts.value = Dollar(0);
    form.monthlyOther.value = Dollar(0);
}

function clearMedical(form)
{
    form.medDeductible.value = Dollar(0);
    form.medCopay.value = Dollar(0);
    form.otherCopay.value = Dollar(0);
    form.dental.value = Dollar(0);
    form.ortho.value = Dollar(0);
    form.vision.value = Dollar(0);
    form.healthClubs.value = Dollar(0);
    form.equipment.value = Dollar(0);
    form.smoking.value = Dollar(0);
    form.otherMedical.value = Dollar(0);
}

function clearDependent(form)
{
    form.numberDependents[1].checked = false;
    form.numberDependents[2].checked = false;
    form.numberDependents[0].checked = true;

    form.elderCare.value = Dollar(0);
    form.afterSchool.value = Dollar(0);
    form.dayCare.value = Dollar(0);
    form.nurserySchool.value = Dollar(0);
    form.dayCamp.value = Dollar(0);
    form.otherDependentCare.value = Dollar(0);

    form.totalDependentCare.value = Dollar(0);

    form.elderCare.disabled = true;
    form.afterSchool.disabled = true;
    form.dayCare.disabled = true;
    form.nurserySchool.disabled = true;
    form.dayCamp.disabled = true;
    form.otherDependentCare.disabled = true;
}

function checkAnnualIncome(form)
{
    try
    {
        getDollarValue(form.annualIncome);
    }
    catch(e)
    {
    }
}

function checkMonthsPlanYear(form)
{
    try
    {
        var monthsPlanYear = (+form.monthsPlanYear.value);
    }
    catch(e)
    {
        return;
    }

	if (monthsPlanYear > 12)
    {
        monthsPlanYear = 12;
    }
    else if (monthsPlanYear < 0)
    {
        monthsPlanYear = 0;
    }

    form.monthsPlanYear.value = monthsPlanYear;

    totalMedExpenses(form);
}

function checkMaxDependent(form)
{
    try
    {
        var maxDepContribution = getDollarValue(form.maxDependent);
    }
    catch(e)
    {
        return;
    }

	if (maxDepContribution > 0)
    {
        form.numberDependents[0].disabled = false;
        form.numberDependents[1].disabled = false;
        form.numberDependents[2].disabled = false;
    }
    else
    {
        clearDependent(form);

        form.numberDependents[0].disabled = true;
        form.numberDependents[1].disabled = true;
        form.numberDependents[2].disabled = true;
    }
    checkDependents(form);
}

function checkMaxMedical(form)
{
    try
    {
        maxMed = getDollarValue(form.maxMedical);
    }
    catch(e)
    {
        return;
    }

	if (maxMed > 0)
    {
        form.monthlyRx.disabled = false;
        form.monthlyDiabetic.disabled = false;
        form.monthlyContacts.disabled = false;
        form.monthlyOther.disabled = false;

        form.medDeductible.disabled = false;
        form.medCopay.disabled = false;
        form.otherCopay.disabled = false;
        form.dental.disabled = false;
        form.ortho.disabled = false;
        form.vision.disabled = false;
        form.healthClubs.disabled = false;
        form.equipment.disabled = false;
        form.smoking.disabled = false;
        form.otherMedical.disabled = false;
	}
    else
    {
        form.monthlyRx.disabled = true;
        form.monthlyDiabetic.disabled = true;
        form.monthlyContacts.disabled = true;
        form.monthlyOther.disabled = true;

        form.medDeductible.disabled = true;
        form.medCopay.disabled = true;
        form.otherCopay.disabled = true;
        form.dental.disabled = true;
        form.ortho.disabled = true;
        form.vision.disabled = true;
        form.healthClubs.disabled = true;
        form.equipment.disabled = true;
        form.smoking.disabled = true;
        form.otherMedical.disabled = true;
    }
}

function totalMonthlyExpenses(form)
{
	var totalMonthly = 0;
	var totalAnnual = 0;
    var monthsPlanYear = (+form.monthsPlanYear.value);

    try
    {
        totalMonthly += getDollarValue(form.monthlyRx);
        totalMonthly += getDollarValue(form.monthlyDiabetic);
        totalMonthly += getDollarValue(form.monthlyContacts);
        totalMonthly += getDollarValue(form.monthlyOther);
    }
    catch(e)
    {
        return;
    }

    totalAnnual = monthsPlanYear * totalMonthly;

    form.totalMonthly.value = totalMonthly;
    form.totalAnnual.value = totalAnnual;

    return totalAnnual;
}

function totalMedExpenses(form)
{
    var totalOneTime = 0;
	var totalMedicalExpenses = totalMonthlyExpenses(form);

    try
    {
        totalOneTime += getDollarValue(form.medDeductible);
        totalOneTime += getDollarValue(form.medCopay);
        totalOneTime += getDollarValue(form.otherCopay);
        totalOneTime += getDollarValue(form.dental);
        totalOneTime += getDollarValue(form.ortho);
        totalOneTime += getDollarValue(form.vision);
        totalOneTime += getDollarValue(form.healthClubs);
        totalOneTime += getDollarValue(form.equipment);
        totalOneTime += getDollarValue(form.smoking);
        totalOneTime += getDollarValue(form.otherMedical);
    }
    catch(e)
    {
        return;
    }

    totalMedicalExpenses += totalOneTime

    form.totalOneTime.value = totalOneTime;
    form.totalMedical.value = totalMedicalExpenses;

    computeFSAContribution(form);

    return totalMedicalExpenses;
}

function totalDepExpenses(form)
{
	var totalDependentExpenses = 0;

    try
    {
        totalDependentExpenses += getDollarValue(form.elderCare);
        totalDependentExpenses += getDollarValue(form.afterSchool);
        totalDependentExpenses += getDollarValue(form.dayCare);
        totalDependentExpenses += getDollarValue(form.nurserySchool);
        totalDependentExpenses += getDollarValue(form.dayCamp);
        totalDependentExpenses += getDollarValue(form.otherDependentCare);
    }
    catch(e)
    {
        return;
    }

    form.totalDependentCare.value = totalDependentExpenses;

    computeFSAContribution(form);

    return totalDependentExpenses;
}

function computeFSAContribution(form)
{
    var annualMedContr = 0;
    var annualDepContr = 0;

    try
    {
        annualIncome = getDollarValue(form.annualIncome);
    }
    catch(e)
    {
        return;
    }

	if (annualIncome > 0)
    {
		form.annualIncomeWith.value =  annualIncome;
		form.annualIncomeWithout.value = annualIncome;

        try
        {
            totalMedExp = getDollarValue(form.totalMedical);
            totalMedExp += getDollarValue(form.monthlyAnnual);
            maxMedical = getDollarValue(form.maxMedical);
            totalDepExp = getDollarValue(form.totalDependentCare);
            maxDependent = getDollarValue(form.maxDependent);
        }
        catch(e)
        {
            return;
        }

        if (totalMedExp < maxMedical)
        {
            annualMedContr = totalMedExp;
        }
        else
        {
            annualMedContr = maxMedical;
        }

        if (totalDepExp < maxDependent)
        {
            annualDepContr = totalDepExp;
        }
        else
        {
            annualDepContr = maxDependent;
        }

        form.annualMedicalContribution.value =  annualMedContr;
        form.annualDependentContribution.value =  annualDepContr;

        form.estimatedHlthWith.value = annualMedContr;
        form.estimatedHlthWithout.value = annualMedContr;

        form.estimatedDepWith.value = annualDepContr;
        form.estimatedDepWithout.value = annualDepContr;

        form.taxableIncomeWith.value = ((+form.annualIncome.value) - (annualMedContr + annualDepContr));
        form.taxableIncomeWithout.value = ((+form.annualIncome.value));

        form.netPayWith.value = roundNumber(((+form.taxableIncomeWith.value) * .7235));
        form.netPayWithout.value = roundNumber((((+form.taxableIncomeWithout.value) * .7235) - (annualMedContr + annualDepContr)));

	}

    computeTaxSavings(form);
}

function computeTaxSavings(form)
{
	var x = 0;
	var w = 0;
	var medContr = (+form.annualMedicalContribution.value);

	if (form.annualIncome.value > 0)
    {
		x = (((+form.annualIncome.value) - medContr) * .7235);
		w = (((+form.annualIncome.value) * .7235) - medContr);
		form.medicalTaxSavings.value = roundNumber((x - w));
	}

	var y = 0;
	var z = 0;
	var depContr = (+form.annualDependentContribution.value);

	if (form.annualIncome.value > 0)
    {
		y = (((+form.annualIncome.value) - depContr) * .7235);
		z = (((+form.annualIncome.value) * .7235) - depContr);
		form.dependentTaxSavings.value = roundNumber((y - z));
	}
}

function clearTaxes(form)
{
    form.annualIncomeWith.value = Dollar(0);
    form.annualIncomeWithout.value = Dollar(0);
    form.estimatedHlthWith.value = Dollar(0);
    form.estimatedHlthWithout.value = Dollar(0);
    form.estimatedDepWith.value = Dollar(0);
    form.estimatedDepWithout.value = Dollar(0);
    form.taxableIncomeWith.value = Dollar(0);
    form.taxableIncomeWithout.value = Dollar(0);
    form.netPayWith.value = Dollar(0);
    form.netPayWithout.value = Dollar(0);
    form.medicalTaxSavings.value = Dollar(0);
    form.dependentTaxSavings.value = Dollar(0);
}

function clearForm(form)
{
    form.annualIncome.value = Dollar(0);
    form.maxMedical.value = Dollar(5000);
    form.maxDependent.value = Dollar(5000);
    form.monthsPlanYear.value = 12;

    form.monthlyTotal.value = Dollar(0);
    form.monthlyAnnual.value = Dollar(0);
    form.totalOneTime.value = Dollar(0);
    form.totalMedical.value = Dollar(0);
    form.totalDependentCare.value = Dollar(0);

    form.annualMedicalContribution = Dollar(0);
    form.annualDependentContribution = Dollar(0);

    clearMonthly(form);
    clearMedical(form);
    clearDependent(form);
    checkMaxMedical(form);
    checkMaxDependent(form);
    clearMedical(form);
    clearTaxes(form);

	form.annualIncome.focus();

	window.location.href='#formStart';
}

// stop hiding -->
