﻿function calculateRatePost080109() {
    // get the quote type the user is requesting
    var transactionType = document.rateCalculator.transactionType.value;
    if (document.rateCalculator.transactionType.value != "jrPolicy") {
        var policyType = document.rateCalculator.policyType.value;
        var extendedCoverage = document.rateCalculator.extendedCoverage.value;
        var priorPolicyExists;
        try {
            priorPolicyExists = document.rateCalculator.priorPolicyExistsQuestion.value;
        }
        catch (ex) { }
        // setup the display text for the policy type
        var toWritePolicyType = String("");
        if (policyType == "mortgagePolicy")
            toWritePolicyType = "Lender's";
        else
            toWritePolicyType = "Owner's";

        // verify the required fields have been supplied and the data is in a useable format
        if (!document.rateCalculator.coverageAmount.value) {
            if (transactionType == "newPolicy")
                alert("Please enter a sale price.");
            else
                alert("Please enter the loan amount.");

            document.rateCalculator.coverageAmount.focus();
        }
        else if (isNaN(stripCurrencyCharacters(document.rateCalculator.coverageAmount.value)) || Number(stripCurrencyCharacters(document.rateCalculator.coverageAmount.value)) <= 0) {
            if (transactionType == "newPolicy")
                alert("Please review the sales price you entered.  It must be an amount higher than zero.");
            else
                alert("Please review loan amount you entered.  It must be an amount higher than zero.");

            document.rateCalculator.coverageAmount.focus();
        }
        else if (undefined != priorPolicyExists && document.rateCalculator.priorPolicyExistsQuestion.value == "priorPolicyActive" && undefined != document.rateCalculator.priorPremiumAmount && !document.rateCalculator.priorPremiumAmount.value) {
            alert("Please enter the amount of the prior policy.");
            document.rateCalculator.priorPremiumAmount.focus();
        }
        else if (undefined != priorPolicyExists && document.rateCalculator.priorPolicyExistsQuestion.value == "priorPolicyActive" && undefined != document.rateCalculator.priorPremiumAmount && (isNaN(stripCurrencyCharacters(document.rateCalculator.priorPremiumAmount.value)) || Number(stripCurrencyCharacters(document.rateCalculator.priorPremiumAmount.value)) <= 0)) {
            alert("Please review the prior policy amount you entered.  It must be an amount higher than zero.");
            document.rateCalculator.priorPremiumAmount.focus();
        }
        else {
            var coverageAmount = document.rateCalculator.coverageAmount.value;
            coverageAmount = Number(stripCurrencyCharacters(coverageAmount));
            var toWrite = String("");
            if (coverageAmount > 1000000) {

                toWrite = "<br/><br/>The amount entered is over $1,000.000.00. Please contact the First American office<br/>at 952-829-0498 or <a href='mailto:mproduction@firstam.com'>mproduction@firstam.com</a> for your quote.<br/>";
                toWrite += "<br/><input type='button' value='Calculate rate' onclick='javascript:calculateRatePost080109();'><br>";
            }
            else {
                var cost = Number(getRatePost080109(coverageAmount, policyType, extendedCoverage, transactionType)).toFixed(2);  
                var reissueCredit = Number(0);
                var toWriteSimuPolicyCharges = "";
                var finalCost = 0;
                if (priorPolicyExists == "priorPolicyActive") {
                    if (undefined != document.rateCalculator.priorPremiumAmount) {
                        var priorCoverageAmount = document.rateCalculator.priorPremiumAmount.value;
                        reissueCredit = Number(getRatePost080109(priorCoverageAmount, policyType, extendedCoverage, transactionType) * .4).toFixed(2);
                    }
                    else
                        reissueCredit = Number(getRatePost080109(coverageAmount, policyType, extendedCoverage, transactionType) * .1).toFixed(2);
                }

                // apply any credit for a reissue that is due if applicable
                var finalCost = formatCurrency(cost - reissueCredit);

                // add any simultaneousPolicy charges if they apply
                var toWriteSimuPolicyCharges = String("");
                if (policyType == "simultaneousPolicy") {
                    finalCost = formatCurrency(cost - reissueCredit + 100.00);
                    //toWriteSimuPolicyCharges = "Premium for Simultaneous Loan Policy: $100.00<br>";
                    toWriteSimuPolicyCharges = "Simultaneous Loan Policy: $100.00<br>";
                }                

                // display the cost to the user

                toWrite += "<br/><input type='button' value='Calculate rate' onclick='javascript:calculateRatePost080109();'><br><br>";
                toWrite += "Premium for " + toWritePolicyType + " policy at " + formatCurrency(document.rateCalculator.coverageAmount.value) + ": " + formatCurrency(cost) + "<br>";
                toWrite += toWriteSimuPolicyCharges;
                if (priorPolicyExists == "priorPolicyActive")
                    toWrite += "Reissue credit (10%) for having a prior policy: " + formatCurrency(reissueCredit) + "<br>";

                if (toWriteSimuPolicyCharges.length > 0) 
                {

                    if (transactionType == "newPolicy") 
                    {
                        toWrite = "<br/><input type='button' value='Calculate rate' onclick='javascript:calculateRatePost080109();'><br><br>";
                        toWrite += "Estimated total premium for the policies: " + formatCurrency(finalCost) + " as follows<br/>";
                        toWrite += "Owner's Premium " + formatCurrency(cost - reissueCredit) + "<br/>";
                        toWrite += toWriteSimuPolicyCharges;
                        
                    }
                    else
                        toWrite += "Estimated total premium for the policies: " + formatCurrency(finalCost);
                }
                else
                    toWrite += "Estimated total premium for this policy: " + formatCurrency(finalCost);



            }
            var currentLayer = document.getElementById("calculatePriceLayer");
            currentLayer.innerHTML = toWrite;
        }
    }
    else 
    {
        var coverageAmount = document.rateCalculator.coverageAmount.value;
        coverageAmount = Number(stripCurrencyCharacters(coverageAmount));
        var cost = Number(getJuniorLoanRate(coverageAmount, false)).toFixed(2);
        if (coverageAmount > 1000000) 
        {

            toWrite = "<br/>The amount entered is over $1,000.000.00. Please contact the First American office<br/>at 952-829-0498 or <a href='mailto:mproduction@firstam.com'>mproduction@firstam.com</a> for your quote.<br/>";
            toWrite += "<br/><input type='button' value='Calculate rate' onclick='javascript:calculateRatePost080109();'><br><br>";
        }
        else {

            toWrite = "<br/><input type='button' value='Calculate rate' onclick='javascript:calculateRatePost080109();'><br><br>";
            toWrite += "Premium for Jr. Loan Rate policy at " + formatCurrency(document.rateCalculator.coverageAmount.value) + ": " + formatCurrency(cost) + "<br>";
        }   
        var currentLayer = document.getElementById("calculatePriceLayer");
        currentLayer.innerHTML = toWrite;
    }
}
function getRatePost080109(coverageAmount, policyType, extendedCoverage, transactionType)
{
    var valueToReturn = 0;
    // strip out any currency characters to ensure valid math
    coverageAmount = Number(stripCurrencyCharacters(coverageAmount));
    if (policyType == "ownersPolicy" && extendedCoverage == "noExtendedCoverage")
        valueToReturn = getRateForOwnersPolicy_isExtendedCoverage(coverageAmount, false);
    else if (policyType == "ownersPolicy" && extendedCoverage == "addExtendedCoverage")
        valueToReturn = getRateForOwnersPolicy_isExtendedCoverage(coverageAmount, true);
    
    //SALE LENDERS POLICY
    else if (policyType == "mortgagePolicy" && extendedCoverage == "noExtendedCoverage" && transactionType == "newPolicy")
        valueToReturn = getRateForMortgagePolicy_isExtendedCoverage(coverageAmount, false)
    else if (policyType == "mortgagePolicy" && extendedCoverage == "addExtendedCoverage" && transactionType == "newPolicy")
        valueToReturn = getRateForMortgagePolicy_isExtendedCoverage(coverageAmount, true)
    //REFINANCE LENDERS POLICY
    else if (policyType == "mortgagePolicy" && extendedCoverage == "noExtendedCoverage" && transactionType != "newPolicy")
        valueToReturn = getRateForRefinanceMortgagePolicy_isExtendedCoverage(coverageAmount, false)
    else if (policyType == "mortgagePolicy" && extendedCoverage == "addExtendedCoverage" && transactionType != "newPolicy")
        valueToReturn = getRateForRefinanceMortgagePolicy_isExtendedCoverage(coverageAmount, true)
        
    else if (policyType == "simultaneousPolicy"&& extendedCoverage == "noExtendedCoverage")
        valueToReturn = getRateForOwnersPolicy_isExtendedCoverage(coverageAmount, false);
    else if (policyType == "simultaneousPolicy" && extendedCoverage == "addExtendedCoverage")
        valueToReturn = getRateForOwnersPolicy_isExtendedCoverage(coverageAmount, true);
    
    return valueToReturn;
}

function getRateForOwnersPolicy_isExtendedCoverage(coverageAmount, extended) 
{
    var mountToReturn = 0;
    
    if (coverageAmount >= 0 && coverageAmount <= 50000.99) mountToReturn = !extended ? 154 : ((154 * 0.1) + 154);
    else if (coverageAmount >= 50001 && coverageAmount <= 75000.99) mountToReturn = !extended ? 255 : ((255 * 0.1) + 255);
    else if (coverageAmount >= 75001 && coverageAmount <= 100000.99) mountToReturn = !extended ? 356 : ((356 * 0.1) + 356);
    else if (coverageAmount >= 100001 && coverageAmount <= 125000.99) mountToReturn = !extended ? 448 : ((448 * 0.1) + 448);
    else if (coverageAmount >= 125001 && coverageAmount <= 150000.99) mountToReturn = !extended ? 530 : ((530 * 0.1) + 530);
    else if (coverageAmount >= 150001 && coverageAmount <= 175000.99) mountToReturn = !extended ? 603 : ((603 * 0.1) + 603);
    else if (coverageAmount >= 175001 && coverageAmount <= 200000.99) mountToReturn = !extended ? 667 : ((667 * 0.1) + 667);
    else if (coverageAmount >= 200001 && coverageAmount <= 225000.99) mountToReturn = !extended ? 731 : ((731 * 0.1) + 731);
    else if (coverageAmount >= 225001 && coverageAmount <= 250000.99) mountToReturn = !extended ? 794 : ((794 * 0.1) + 794);
    else if (coverageAmount >= 250001 && coverageAmount <= 275000.99) mountToReturn = !extended ? 858 : ((858 * 0.1) + 858);
    else if (coverageAmount >= 275001 && coverageAmount <= 300000.99) mountToReturn = !extended ? 922 : ((922 * 0.1) + 922);
    else if (coverageAmount >= 300001 && coverageAmount <= 325000.99) mountToReturn = !extended ? 982 : ((982 * 0.1) + 982);
    else if (coverageAmount >= 325001 && coverageAmount <= 350000.99) mountToReturn = !extended ? 1040 : ((1040 * 0.1) + 1040);
    else if (coverageAmount >= 350001 && coverageAmount <= 375000.99) mountToReturn = !extended ? 1097 : ((1097 * 0.1) + 1097);
    else if (coverageAmount >= 375001 && coverageAmount <= 400000.99) mountToReturn = !extended ? 1155 : ((1155 * 0.1) + 1155);
    else if (coverageAmount >= 400001 && coverageAmount <= 425000.99) mountToReturn = !extended ? 1215 : ((1215 * 0.1) + 1215);
    else if (coverageAmount >= 425001 && coverageAmount <= 450000.99) mountToReturn = !extended ? 1270 : ((1270 * 0.1) + 1270);
    else if (coverageAmount >= 450001 && coverageAmount <= 475000.99) mountToReturn = !extended ? 1327 : ((1327 * 0.1) + 1327);
    else if (coverageAmount >= 475001 && coverageAmount <= 500000.99) mountToReturn = !extended ? 1385 : ((1385 * 0.1) + 1385);
    else if (coverageAmount >= 500001 && coverageAmount <= 525000.99) mountToReturn = !extended ? 1442 : ((1442 * 0.1) + 1442);
    else if (coverageAmount >= 525001 && coverageAmount <= 550000.99) mountToReturn = !extended ? 1500 : ((1500 * 0.1) + 1500);
    else if (coverageAmount >= 550001 && coverageAmount <= 575000.99) mountToReturn = !extended ? 1557 : ((1557 * 0.1) + 1557);
    else if (coverageAmount >= 575001 && coverageAmount <= 600000.99) mountToReturn = !extended ? 1615 : ((1615 * 0.1) + 1615);
    else if (coverageAmount >= 600001 && coverageAmount <= 625000.99) mountToReturn = !extended ? 1672 : ((1672 * 0.1) + 1672);
    else if (coverageAmount >= 625001 && coverageAmount <= 650000.99) mountToReturn = !extended ? 1730 : ((1730 * 0.1) + 1730);
    else if (coverageAmount >= 650001 && coverageAmount <= 675000.99) mountToReturn = !extended ? 1787 : ((1787 * 0.1) + 1787);
    else if (coverageAmount >= 675001 && coverageAmount <= 700000.99) mountToReturn = !extended ? 1845 : ((1845 * 0.1) + 1845);
    else if (coverageAmount >= 700001 && coverageAmount <= 725000.99) mountToReturn = !extended ? 1902 : ((1902 * 0.1) + 1902);
    else if (coverageAmount >= 725001 && coverageAmount <= 750000.99) mountToReturn = !extended ? 1960 : ((1960 * 0.1) + 1960);
    else if (coverageAmount >= 750001 && coverageAmount <= 775000.99) mountToReturn = !extended ? 2017 : ((2017 * 0.1) + 2017);
    else if (coverageAmount >= 775001 && coverageAmount <= 800000.99) mountToReturn = !extended ? 2075 : ((2075 * 0.1) + 2075);
    else if (coverageAmount >= 800001 && coverageAmount <= 825000.99) mountToReturn = !extended ? 2132 : ((2132 * 0.1) + 2132);
    else if (coverageAmount >= 825001 && coverageAmount <= 850000.99) mountToReturn = !extended ? 2190 : ((2190 * 0.1) + 2190);
    else if (coverageAmount >= 850001 && coverageAmount <= 875000.99) mountToReturn = !extended ? 2247 : ((2247 * 0.1) + 2247);
    else if (coverageAmount >= 875001 && coverageAmount <= 900000.99) mountToReturn = !extended ? 2305 : ((2305 * 0.1) + 2305);
    else if (coverageAmount >= 900001 && coverageAmount <= 925000.99) mountToReturn = !extended ? 2362 : ((2362 * 0.1) + 2362);
    else if (coverageAmount >= 925001 && coverageAmount <= 950000.99) mountToReturn = !extended ? 2420 : ((2420 * 0.1) + 2420);
    else if (coverageAmount >= 950001 && coverageAmount <= 975000.99) mountToReturn = !extended ? 2477 : ((2477 * 0.1) + 2477);
    else mountToReturn = !extended ? 2535 : ((2535 * 0.1) + 2535);

    return Math.round(mountToReturn);

}
function getRateForMortgagePolicy_isExtendedCoverage(coverageAmount, extended) 
{
    var mountToReturn = 0;
    if (coverageAmount >= 0 && coverageAmount <= 50000.99) mountToReturn = !extended ? 116 : ((116 * 0.1) + 116);
    else if (coverageAmount >= 50001 && coverageAmount <= 75000.99) mountToReturn = !extended ? 192 : ((192 * 0.1) + 192);
    else if (coverageAmount >= 75001 && coverageAmount <= 100000.99) mountToReturn = !extended ? 268 : ((268 * 0.1) + 268);
    else if (coverageAmount >= 100001 && coverageAmount <= 125000.99) mountToReturn = !extended ? 345 : ((345 * 0.1) + 345);
    else if (coverageAmount >= 125001 && coverageAmount <= 150000.99) mountToReturn = !extended ? 421 : ((421 * 0.1) + 421);
    else if (coverageAmount >= 150001 && coverageAmount <= 175000.99) mountToReturn = !extended ? 491 : ((491 * 0.1) + 491);
    else if (coverageAmount >= 175001 && coverageAmount <= 200000.99) mountToReturn = !extended ? 554 : ((554 * 0.1) + 554);
    else if (coverageAmount >= 200001 && coverageAmount <= 225000.99) mountToReturn = !extended ? 618 : ((618 * 0.1) + 618);
    else if (coverageAmount >= 225001 && coverageAmount <= 250000.99) mountToReturn = !extended ? 682 : ((682 * 0.1) + 682);
    else if (coverageAmount >= 250001 && coverageAmount <= 275000.99) mountToReturn = !extended ? 746 : ((746 * 0.1) + 746);
    else if (coverageAmount >= 275001 && coverageAmount <= 300000.99) mountToReturn = !extended ? 825 : ((825 * 0.1) + 825);
    else if (coverageAmount >= 300001 && coverageAmount <= 325000.99) mountToReturn = !extended ? 870 : ((870 * 0.1) + 870);
    else if (coverageAmount >= 325001 && coverageAmount <= 350000.99) mountToReturn = !extended ? 927 : ((927 * 0.1) + 927);
    else if (coverageAmount >= 350001 && coverageAmount <= 375000.99) mountToReturn = !extended ? 985 : ((985 * 0.1) + 985);
    else if (coverageAmount >= 375001 && coverageAmount <= 400000.99) mountToReturn = !extended ? 1042 : ((1042 * 0.1) + 1042);
    else if (coverageAmount >= 400001 && coverageAmount <= 425000.99) mountToReturn = !extended ? 1102 : ((1102 * 0.1) + 1102);
    else if (coverageAmount >= 425001 && coverageAmount <= 450000.99) mountToReturn = !extended ? 1157 : ((1157 * 0.1) + 1157);
    else if (coverageAmount >= 450001 && coverageAmount <= 475000.99) mountToReturn = !extended ? 1215 : ((1215 * 0.1) + 1215);
    else if (coverageAmount >= 475001 && coverageAmount <= 500000.99) mountToReturn = !extended ? 1272 : ((1272 * 0.1) + 1272);
    else if (coverageAmount >= 500001 && coverageAmount <= 525000.99) mountToReturn = !extended ? 1327 : ((1327 * 0.1) + 1327);
    else if (coverageAmount >= 525001 && coverageAmount <= 550000.99) mountToReturn = !extended ? 1378 : ((1378 * 0.1) + 1378);
    else if (coverageAmount >= 550001 && coverageAmount <= 575000.99) mountToReturn = !extended ? 1429 : ((1429 * 0.1) + 1429);
    else if (coverageAmount >= 575001 && coverageAmount <= 600000.99) mountToReturn = !extended ? 1480 : ((1480 * 0.1) + 1480);
    else if (coverageAmount >= 600001 && coverageAmount <= 625000.99) mountToReturn = !extended ? 1532 : ((1532 * 0.1) + 1532);
    else if (coverageAmount >= 625001 && coverageAmount <= 650000.99) mountToReturn = !extended ? 1583 : ((1583 * 0.1) + 1583);
    else if (coverageAmount >= 650001 && coverageAmount <= 675000.99) mountToReturn = !extended ? 1634 : ((1634 * 0.1) + 1634);
    else if (coverageAmount >= 675001 && coverageAmount <= 700000.99) mountToReturn = !extended ? 1685 : ((1685 * 0.1) + 1685);
    else if (coverageAmount >= 700001 && coverageAmount <= 725000.99) mountToReturn = !extended ? 1736 : ((1736 * 0.1) + 1736);
    else if (coverageAmount >= 725001 && coverageAmount <= 750000.99) mountToReturn = !extended ? 1788 : ((1788 * 0.1) + 1788);
    else if (coverageAmount >= 750001 && coverageAmount <= 775000.99) mountToReturn = !extended ? 1839 : ((1839 * 0.1) + 1839);
    else if (coverageAmount >= 775001 && coverageAmount <= 800000.99) mountToReturn = !extended ? 1890 : ((1890 * 0.1) + 1890);
    else if (coverageAmount >= 800001 && coverageAmount <= 825000.99) mountToReturn = !extended ? 1942 : ((1942 * 0.1) + 1942);
    else if (coverageAmount >= 825001 && coverageAmount <= 850000.99) mountToReturn = !extended ? 1993 : ((1993 * 0.1) + 1993);
    else if (coverageAmount >= 850001 && coverageAmount <= 875000.99) mountToReturn = !extended ? 2044 : ((2044 * 0.1) + 2044);
    else if (coverageAmount >= 875001 && coverageAmount <= 900000.99) mountToReturn = !extended ? 2095 : ((2095 * 0.1) + 2095);
    else if (coverageAmount >= 900001 && coverageAmount <= 925000.99) mountToReturn = !extended ? 2147 : ((2147 * 0.1) + 2147);
    else if (coverageAmount >= 925001 && coverageAmount <= 950000.99) mountToReturn = !extended ? 2198 : ((2198 * 0.1) + 2198);
    else if (coverageAmount >= 950001 && coverageAmount <= 975000.99) mountToReturn = !extended ? 2249 : ((2249 * 0.1) + 2249);
    else  mountToReturn = !extended ? 2300 : ((2300 * 0.1) + 2300);
    return Math.round(mountToReturn);

}

function getRateForRefinanceMortgagePolicy_isExtendedCoverage(coverageAmount, extended) {
    var mountToReturn = 0;
    if (coverageAmount >= 0 && coverageAmount <= 50000.99) mountToReturn = !extended ? 100 : 110;
    else if (coverageAmount >= 50001 && coverageAmount <= 75000.99) mountToReturn = !extended ? 144 : 158;
    else if (coverageAmount >= 75001 && coverageAmount <= 100000.99) mountToReturn = !extended ? 201 : 221;
    else if (coverageAmount >= 100001 && coverageAmount <= 125000.99) mountToReturn = !extended ? 259 : 285;
    else if (coverageAmount >= 125001 && coverageAmount <= 150000.99) mountToReturn = !extended ? 316 : 347;
    else if (coverageAmount >= 150001 && coverageAmount <= 175000.99) mountToReturn = !extended ? 368 : 405;
    else if (coverageAmount >= 175001 && coverageAmount <= 200000.99) mountToReturn = !extended ? 416 : 457;
    else if (coverageAmount >= 200001 && coverageAmount <= 225000.99) mountToReturn = !extended ? 464 : 510;
    else if (coverageAmount >= 225001 && coverageAmount <= 250000.99) mountToReturn = !extended ? 512 : 563;
    else if (coverageAmount >= 250001 && coverageAmount <= 275000.99) mountToReturn = !extended ? 560 : 615;
    else if (coverageAmount >= 275001 && coverageAmount <= 300000.99) mountToReturn = !extended ? 619 : 681;
    else if (coverageAmount >= 300001 && coverageAmount <= 325000.99) mountToReturn = !extended ? 653 : 718;
    else if (coverageAmount >= 325001 && coverageAmount <= 350000.99) mountToReturn = !extended ? 695 : 765;
    else if (coverageAmount >= 350001 && coverageAmount <= 375000.99) mountToReturn = !extended ? 739 : 813;
    else if (coverageAmount >= 375001 && coverageAmount <= 400000.99) mountToReturn = !extended ? 782 : 860;
    else if (coverageAmount >= 400001 && coverageAmount <= 425000.99) mountToReturn = !extended ? 827 : 909;
    else if (coverageAmount >= 425001 && coverageAmount <= 450000.99) mountToReturn = !extended ? 868 : 955;
    else if (coverageAmount >= 450001 && coverageAmount <= 475000.99) mountToReturn = !extended ? 911 : 1002;
    else if (coverageAmount >= 475001 && coverageAmount <= 500000.99) mountToReturn = !extended ? 954 : 1049;
    else if (coverageAmount >= 500001 && coverageAmount <= 525000.99) mountToReturn = !extended ? 995 : 1095;
    else if (coverageAmount >= 525001 && coverageAmount <= 550000.99) mountToReturn = !extended ? 1034 : 1137;
    else if (coverageAmount >= 550001 && coverageAmount <= 575000.99) mountToReturn = !extended ? 1072 : 1179;
    else if (coverageAmount >= 575001 && coverageAmount <= 600000.99) mountToReturn = !extended ? 1110 : 1221;
    else if (coverageAmount >= 600001 && coverageAmount <= 625000.99) mountToReturn = !extended ? 1149 : 1264;
    else if (coverageAmount >= 625001 && coverageAmount <= 650000.99) mountToReturn = !extended ? 1187 : 1306;
    else if (coverageAmount >= 650001 && coverageAmount <= 675000.99) mountToReturn = !extended ? 1226 : 1348;
    else if (coverageAmount >= 675001 && coverageAmount <= 700000.99) mountToReturn = !extended ? 1264 : 1390;
    else if (coverageAmount >= 700001 && coverageAmount <= 725000.99) mountToReturn = !extended ? 1302 : 1432;
    else if (coverageAmount >= 725001 && coverageAmount <= 750000.99) mountToReturn = !extended ? 1341 : 1475;
    else if (coverageAmount >= 750001 && coverageAmount <= 775000.99) mountToReturn = !extended ? 1379 : 1517;
    else if (coverageAmount >= 775001 && coverageAmount <= 800000.99) mountToReturn = !extended ? 1418 : 1559;
    else if (coverageAmount >= 800001 && coverageAmount <= 825000.99) mountToReturn = !extended ? 1457 : 1602;
    else if (coverageAmount >= 825001 && coverageAmount <= 850000.99) mountToReturn = !extended ? 1495 : 1644;
    else if (coverageAmount >= 850001 && coverageAmount <= 875000.99) mountToReturn = !extended ? 1533 : 1686;
    else if (coverageAmount >= 875001 && coverageAmount <= 900000.99) mountToReturn = !extended ? 1571 : 1728;
    else if (coverageAmount >= 900001 && coverageAmount <= 925000.99) mountToReturn = !extended ? 1610 : 1771;
    else if (coverageAmount >= 925001 && coverageAmount <= 950000.99) mountToReturn = !extended ? 1649 : 1813;
    else if (coverageAmount >= 950001 && coverageAmount <= 975000.99) mountToReturn = !extended ? 1687 : 1855;
    else mountToReturn = !extended ? 1725 : 1898;

    return Math.round(mountToReturn);

}
function getJuniorLoanRate(coverageAmount, extended) 
{
    var mountToReturn = 0;
    if (coverageAmount >= 0 && coverageAmount <= 50000.99) mountToReturn = 100;
    else if (coverageAmount >= 50001 && coverageAmount <= 75000.99) mountToReturn = 110;
    else if (coverageAmount >= 75001 && coverageAmount <= 100000.99) mountToReturn = 154;
    else if (coverageAmount >= 100001 && coverageAmount <= 125000.99) mountToReturn = 198;
    else if (coverageAmount >= 125001 && coverageAmount <= 150000.99) mountToReturn = 245;
    else if (coverageAmount >= 150001 && coverageAmount <= 175000.99) mountToReturn = 285;
    else if (coverageAmount >= 175001 && coverageAmount <= 200000.99) mountToReturn = 329;
    else if (coverageAmount >= 200001 && coverageAmount <= 225000.99) mountToReturn = 373;
    else if (coverageAmount >= 225001 && coverageAmount <= 250000.99) mountToReturn = 417;
    else if (coverageAmount >= 250001 && coverageAmount <= 275000.99) mountToReturn = 460;
    else if (coverageAmount >= 275001 && coverageAmount <= 300000.99) mountToReturn = 515;
    else if (coverageAmount >= 300001 && coverageAmount <= 325000.99) mountToReturn = 548;
    else if (coverageAmount >= 325001 && coverageAmount <= 350000.99) mountToReturn = 592;
    else if (coverageAmount >= 350001 && coverageAmount <= 375000.99) mountToReturn = 635;
    else if (coverageAmount >= 375001 && coverageAmount <= 400000.99) mountToReturn = 679;
    else if (coverageAmount >= 400001 && coverageAmount <= 425000.99) mountToReturn = 725;
    else if (coverageAmount >= 425001 && coverageAmount <= 450000.99) mountToReturn = 767;
    else if (coverageAmount >= 450001 && coverageAmount <= 475000.99) mountToReturn = 810;
    else if (coverageAmount >= 475001 && coverageAmount <= 500000.99) mountToReturn = 854;
    else if (coverageAmount >= 500001 && coverageAmount <= 525000.99) mountToReturn = 898;
    else if (coverageAmount >= 525001 && coverageAmount <= 550000.99) mountToReturn = 942;
    else if (coverageAmount >= 550001 && coverageAmount <= 575000.99) mountToReturn = 985;
    else if (coverageAmount >= 575001 && coverageAmount <= 600000.99) mountToReturn = 1029;
    else if (coverageAmount >= 600001 && coverageAmount <= 625000.99) mountToReturn = 1073;
    else if (coverageAmount >= 625001 && coverageAmount <= 650000.99) mountToReturn = 1117;
    else if (coverageAmount >= 650001 && coverageAmount <= 675000.99) mountToReturn = 1160;
    else if (coverageAmount >= 675001 && coverageAmount <= 700000.99) mountToReturn = 1204;
    else if (coverageAmount >= 700001 && coverageAmount <= 725000.99) mountToReturn = 1248;
    else if (coverageAmount >= 725001 && coverageAmount <= 750000.99) mountToReturn = 1292;
    else if (coverageAmount >= 750001 && coverageAmount <= 775000.99) mountToReturn = 1335;
    else if (coverageAmount >= 775001 && coverageAmount <= 800000.99) mountToReturn = 1379;
    else if (coverageAmount >= 800001 && coverageAmount <= 825000.99) mountToReturn = 1423;
    else if (coverageAmount >= 825001 && coverageAmount <= 850000.99) mountToReturn = 1467;
    else if (coverageAmount >= 850001 && coverageAmount <= 875000.99) mountToReturn = 1510;
    else if (coverageAmount >= 875001 && coverageAmount <= 900000.99) mountToReturn = 1554;
    else if (coverageAmount >= 900001 && coverageAmount <= 925000.99) mountToReturn = 1598;
    else if (coverageAmount >= 925001 && coverageAmount <= 950000.99) mountToReturn = 1642;
    else if (coverageAmount >= 950001 && coverageAmount <= 975000.99) mountToReturn = 1685;
    else mountToReturn = 1729;
    return Math.round(mountToReturn);

}