	var fuels = new Array();
	
	fuels[0] = new Array( "Petrol", "", "true", "calcPetrol" );
	fuels[1] = new Array( "Diesel", "", "true", "calcDiesel" );
	fuels[2] = new Array( "Diesel IV", "", "true", "calcDieselIV" );
	fuels[3] = new Array( "Electric", "", "false", "calcElectric" );
	fuels[4] = new Array( "Hybrid Electric", "", "true", "calcHybrid" );
	fuels[5] = new Array( "LPG or Dual Fuel", "", "true", "calcDual" );
	

	//var y2002qualify = 165;
	var y2003qualify = 145;
	var y2004qualify = 140;
	var y2005qualify = 140;
	
	var firstPercent = 15;
	var co2increment = 5;
	var percentIncrement = 1;
	var maxPercent = 35;
	var dieselSupplement = 3;
	var dieselIVSupplement = 0;
	var electricSupplement = -6;
	var hybridSupplement = -2;
	var dualSupplement = -1;
	var emissionSupplement = -1;
	var emissionSupplementCo2 = 20;

	var lowerTax = 22;
	var higherTax = 40;

	function calculate()
	{
		eval( fuels[cardetails.fuel.value][3]+"()"  );
		return false;
	}

	function findPercent( qualify, theco2 )
	{
		//alert( theco2 );
		var percent = firstPercent;
		var emmisionRating = qualify;
		if ( theco2 > qualify )
		{
			percent--;
			while ( percent <= 35 && emmisionRating <= theco2 )
			{
				percent = percent + percentIncrement;
				emmisionRating = emmisionRating + co2increment;
				//alert( "rating = "+emmisionRating+" percent = "+percent );
			}
			if ( percent > 35 ) percent = 35;
		}
		return percent;
	}

	function findDiscount( qualify, theco2 )
	{
		var percent = 0;
		var temp = qualify - emissionSupplementCo2;
		while ( theco2 < temp )
		{
			percent = percent + emissionSupplement;
			temp = temp - emissionSupplementCo2;
		}
		return percent;

	}
	
	function changeFuelType()
	{
		if ( fuels[cardetails.fuel.value][2] == "false" )
		{
			cardetails.co2.value = "0";
			cardetails.co2.readonly = true;
		}
	}

	function calcPetrol()
	{
		//calculate 2002/2003
		//var percent = findPercent( y2002qualify, cardetails.co2.value );
		//var result = (percent)*cardetails.price.value/100;
		//var resultLower = result*lowerTax/100;
		//var resultHigher = result*higherTax/100;

		//y2002basic.innerHTML = percent+"%";
		//y2002discount.innerHTML = "0%";
		//y2002applied.innerHTML = percent+"%";
		//y2002benefit.innerHTML = "&pound;"+result;
		//y2002Lower.innerHTML = "&pound;"+resultLower;
		//y2002Higher.innerHTML = "&pound;"+resultHigher;

		//calculate 2003/2004
		var percent = findPercent( y2003qualify, cardetails.co2.value );
		var result = (percent)*cardetails.price.value/100;
		var resultLower = result*lowerTax/100;
		var resultHigher = result*higherTax/100;
		
		//PJS
		//resultLower = Math.round(resultLower)
		//

		y2003basic.innerHTML = percent+"%";
		y2003discount.innerHTML = "0%";
		y2003applied.innerHTML = percent+"%";
		y2003benefit.innerHTML = "&pound;"+result;
		y2003Lower.innerHTML = "&pound;"+resultLower;
		y2003Higher.innerHTML = "&pound;"+resultHigher;
		
		//calculate 2004/2005
		percent = findPercent( y2004qualify, cardetails.co2.value );
		result = (percent)*cardetails.price.value/100;
		resultLower = result*lowerTax/100;
		resultHigher = result*higherTax/100;
		
		//PJS
		//resultLower = Math.round(resultLower)
		//

		y2004basic.innerHTML = percent+"%";
		y2004discount.innerHTML = "0%";
		y2004applied.innerHTML = percent+"%";
		y2004benefit.innerHTML = "&pound;"+result;
		y2004Lower.innerHTML = "&pound;"+resultLower;
		y2004Higher.innerHTML = "&pound;"+resultHigher;
		
		//calculate 2005/2006
		percent = findPercent( y2005qualify, cardetails.co2.value );
		result = (percent)*cardetails.price.value/100;
		resultLower = result*lowerTax/100;
		resultHigher = result*higherTax/100;
		
		//PJS
		//resultLower = Math.round(resultLower)
		//

		y2005basic.innerHTML = percent+"%";
		y2005discount.innerHTML = "0%";
		y2005applied.innerHTML = percent+"%";
		y2005benefit.innerHTML = "&pound;"+result;
		y2005Lower.innerHTML = "&pound;"+resultLower;
		y2005Higher.innerHTML = "&pound;"+resultHigher;
	}

	function calcDiesel()
	{
		//calculate 2002/2003
		//var percent = firstPercent;
		//percent = findPercent( y2002qualify, cardetails.co2.value );
		//y2002basic.innerHTML = percent+"% + "+dieselSupplement+"%";
		//y2002discount.innerHTML = "0%";
		//percent = percent + dieselSupplement;
		//y2002applied.innerHTML = percent+"%";
		//if ( percent > 35 ) percent = 35;
		//var result = (percent)*cardetails.price.value/100;
		//var resultLower = result*lowerTax/100;
		//var resultHigher = result*higherTax/100;

		//y2002benefit.innerHTML = "&pound;"+result;
		//y2002Lower.innerHTML = "&pound;"+resultLower;
		//y2002Higher.innerHTML = "&pound;"+resultHigher;
		
		//calculate 2003/2004
		var percent = findPercent( y2003qualify, cardetails.co2.value );
		if ( percent > 32 ) dieselSupplement = 2;
		if ( percent > 33 ) dieselSupplement = 1;
		if ( percent > 34 ) dieselSupplement = 0;
		if ( percent < 32 ) dieselSupplement = 3;
		y2003basic.innerHTML = percent+"% + "+dieselSupplement+"%";
		y2003discount.innerHTML = "0%";
		percent = percent + dieselSupplement;
		y2003applied.innerHTML = percent+"%";
		if ( percent > 35 ) percent = 35;
		var result = (percent)*cardetails.price.value/100;
		var resultLower = result*lowerTax/100;
		var resultHigher = result*higherTax/100;

		y2003benefit.innerHTML = "&pound;"+result;
		y2003Lower.innerHTML = "&pound;"+resultLower;
		y2003Higher.innerHTML = "&pound;"+resultHigher;

        //calculate 2004/2005
		percent = findPercent( y2004qualify, cardetails.co2.value );
		if ( percent > 32 ) dieselSupplement = 2;
		if ( percent > 33 ) dieselSupplement = 1;
		if ( percent > 34 ) dieselSupplement = 0;
		if ( percent < 32 ) dieselSupplement = 3;
		y2004basic.innerHTML = percent+"% + "+dieselSupplement+"%";
		y2004discount.innerHTML = "0%";
		percent = percent + dieselSupplement;
		y2004applied.innerHTML = percent+"%";
		if ( percent > 35 ) percent = 35;
		result = (percent)*cardetails.price.value/100;
		resultLower = result*lowerTax/100;
		resultHigher = result*higherTax/100;

		y2004benefit.innerHTML = "&pound;"+result;
		y2004Lower.innerHTML = "&pound;"+resultLower;
		y2004Higher.innerHTML = "&pound;"+resultHigher;
		
		//calculate 2005/2006
		percent = findPercent( y2005qualify, cardetails.co2.value );
		if ( percent > 32 ) dieselSupplement = 2;
		if ( percent > 33 ) dieselSupplement = 1;
		if ( percent > 34 ) dieselSupplement = 0;
		if ( percent < 32 ) dieselSupplement = 3;
		y2005basic.innerHTML = percent+"% + "+dieselSupplement+"%";
		y2005discount.innerHTML = "0%";
		percent = percent + dieselSupplement;
		y2005applied.innerHTML = percent+"%";
		if ( percent > 35 ) percent = 35;
		result = (percent)*cardetails.price.value/100;
		resultLower = result*lowerTax/100;
		resultHigher = result*higherTax/100;

		y2005benefit.innerHTML = "&pound;"+result;
		y2005Lower.innerHTML = "&pound;"+resultLower;
		y2005Higher.innerHTML = "&pound;"+resultHigher;
	}
	
	function calcDieselIV()
	{
		//calculate 2002/2003
		//var percent = firstPercent;
		//percent = findPercent( y2002qualify, cardetails.co2.value );
		//y2002basic.innerHTML = percent+"% + "+dieselIVSupplement+"%";
		//y2002discount.innerHTML = "0%";
		//percent = percent + dieselIVSupplement;
		//y2002applied.innerHTML = percent+"%";
		//if ( percent > 35 ) percent = 35;
		//var result = (percent)*cardetails.price.value/100;
		//var resultLower = result*lowerTax/100;
		//var resultHigher = result*higherTax/100;

		//y2002benefit.innerHTML = "&pound;"+result;
		//y2002Lower.innerHTML = "&pound;"+resultLower;
		//y2002Higher.innerHTML = "&pound;"+resultHigher;

		//calculate 2003/2004
		var percent = findPercent( y2003qualify, cardetails.co2.value );
		y2003basic.innerHTML = percent+"% + "+dieselIVSupplement+"%";
		y2003discount.innerHTML = "0%";
		percent = percent + dieselIVSupplement;
		y2003applied.innerHTML = percent+"%";
		if ( percent > 35 ) percent = 35;
		var result = (percent)*cardetails.price.value/100;
		var resultLower = result*lowerTax/100;
		var resultHigher = result*higherTax/100;

		y2003benefit.innerHTML = "&pound;"+result;
		y2003Lower.innerHTML = "&pound;"+resultLower;
		y2003Higher.innerHTML = "&pound;"+resultHigher;
		
		//calculate 2004/2005
		percent = findPercent( y2004qualify, cardetails.co2.value );
		y2004basic.innerHTML = percent+"% + "+dieselIVSupplement+"%";
		y2004discount.innerHTML = "0%";
		percent = percent + dieselIVSupplement;
		y2004applied.innerHTML = percent+"%";
		if ( percent > 35 ) percent = 35;
		result = (percent)*cardetails.price.value/100;
		resultLower = result*lowerTax/100;
		resultHigher = result*higherTax/100;

		y2004benefit.innerHTML = "&pound;"+result;
		y2004Lower.innerHTML = "&pound;"+resultLower;
		y2004Higher.innerHTML = "&pound;"+resultHigher;
		
		//calculate 2005/2006
		percent = findPercent( y2005qualify, cardetails.co2.value );
		y2005basic.innerHTML = percent+"% + "+dieselIVSupplement+"%";
		y2005discount.innerHTML = "0%";
		percent = percent + dieselIVSupplement;
		y2005applied.innerHTML = percent+"%";
		if ( percent > 35 ) percent = 35;
		result = (percent)*cardetails.price.value/100;
		resultLower = result*lowerTax/100;
		resultHigher = result*higherTax/100;

		y2005benefit.innerHTML = "&pound;"+result;
		y2005Lower.innerHTML = "&pound;"+resultLower;
		y2005Higher.innerHTML = "&pound;"+resultHigher;
	}



	function calcElectric()
	{
		//calculate 2002/2003
		//y2002basic.innerHTML = firstPercent+"%";
		//y2002discount.innerHTML = electricSupplement+"%";
		//percent = firstPercent+electricSupplement;
		//y2002applied.innerHTML = percent+"%";
		//calculate 2003/2004
		y2003basic.innerHTML = firstPercent+"%";
		y2003discount.innerHTML = electricSupplement+"%";
		percent = firstPercent+electricSupplement;
		y2003applied.innerHTML = percent+"%";
		//calculate 2004/2005
		y2004basic.innerHTML = firstPercent+"%";
		y2004discount.innerHTML = electricSupplement+"%";
		percent = firstPercent+electricSupplement;
		y2004applied.innerHTML = percent+"%";
		//calculate 2005/2006	
		y2005basic.innerHTML = firstPercent+"%";
		y2005discount.innerHTML = electricSupplement+"%";
		percent = firstPercent+electricSupplement;
		y2005applied.innerHTML = percent+"%";

		var result = (firstPercent+electricSupplement)*cardetails.price.value/100;
		//y2002benefit.innerHTML = "&pound;"+result;
		y2003benefit.innerHTML = "&pound;"+result;
		y2004benefit.innerHTML = "&pound;"+result;
		y2005benefit.innerHTML = "&pound;"+result;

		var resultLower = result*lowerTax/100;
		//y2002Lower.innerHTML = "&pound;"+resultLower;
		y2003Lower.innerHTML = "&pound;"+resultLower;
		y2004Lower.innerHTML = "&pound;"+resultLower;
		y2005Lower.innerHTML = "&pound;"+resultLower;

		var resultHigher = result*higherTax/100;
		//y2002Higher.innerHTML = "&pound;"+resultHigher;
		y2003Higher.innerHTML = "&pound;"+resultHigher;
		y2004Higher.innerHTML = "&pound;"+resultHigher;
		y2005Higher.innerHTML = "&pound;"+resultHigher;
	}

	function calcHybrid()
	{
		//calculate 2002/2003
		//var percent = findPercent( y2002qualify, cardetails.co2.value );
		//var discount = findDiscount( y2002qualify, cardetails.co2.value );
		//var applied = percent+hybridSupplement+discount;
		//var result = applied*cardetails.price.value/100;
		//var resultLower = result*lowerTax/100;
		//var resultHigher = result*higherTax/100;
		//if ( discount == 0 ) discount = "+ 0";
		
		//y2002basic.innerHTML = percent+"%";
		//y2002discount.innerHTML = hybridSupplement+"% "+discount+"%";
		//y2002applied.innerHTML = applied+"%";
		//y2002benefit.innerHTML = "&pound;"+result;
		//y2002Lower.innerHTML = "&pound;"+resultLower;
		//y2002Higher.innerHTML = "&pound;"+resultHigher;
		
		//calculate 2003/2004
		var percent = findPercent( y2003qualify, cardetails.co2.value );
		var discount = findDiscount( y2003qualify, cardetails.co2.value );
		var applied = percent+hybridSupplement+discount;
		var result = applied*cardetails.price.value/100;
		var resultLower = result*lowerTax/100;
		var resultHigher = result*higherTax/100;
		if ( discount == 0 ) discount = "+ 0";

		y2003basic.innerHTML = percent+"%";
		y2003discount.innerHTML = hybridSupplement+"% "+discount+"%";
		y2003applied.innerHTML = applied+"%";
		y2003benefit.innerHTML = "&pound;"+result;
		y2003Lower.innerHTML = "&pound;"+resultLower;
		y2003Higher.innerHTML = "&pound;"+resultHigher;

		//calculate 2004/2005
		percent = findPercent( y2004qualify, cardetails.co2.value );
		discount = findDiscount( y2004qualify, cardetails.co2.value );
		applied = percent+hybridSupplement+discount;
		result = applied*cardetails.price.value/100;
		resultLower = result*lowerTax/100;
		resultHigher = result*higherTax/100;
		if ( discount == 0 ) discount = "+ 0";

		y2004basic.innerHTML = percent+"%";
		y2004discount.innerHTML = hybridSupplement+"% "+discount+"%";
		y2004applied.innerHTML = applied+"%";
		y2004benefit.innerHTML = "&pound;"+result;
		y2004Lower.innerHTML = "&pound;"+resultLower;
		y2004Higher.innerHTML = "&pound;"+resultHigher;
		
		//calculate 2005/2006
		percent = findPercent( y2005qualify, cardetails.co2.value );
		discount = findDiscount( y2005qualify, cardetails.co2.value );
		applied = percent+hybridSupplement+discount;
		result = applied*cardetails.price.value/100;
		resultLower = result*lowerTax/100;
		resultHigher = result*higherTax/100;
		if ( discount == 0 ) discount = "+ 0";

		y2005basic.innerHTML = percent+"%";
		y2005discount.innerHTML = hybridSupplement+"% "+discount+"%";
		y2005applied.innerHTML = applied+"%";
		y2005benefit.innerHTML = "&pound;"+result;
		y2005Lower.innerHTML = "&pound;"+resultLower;
		y2005Higher.innerHTML = "&pound;"+resultHigher;
	}

	function calcDual()
	{
		//calculate 2002/2003
		//var percent = findPercent( y2002qualify, cardetails.co2.value );
		//var discount = findDiscount( y2002qualify, cardetails.co2.value );
		//var result = (percent+dualSupplement+discount)*cardetails.price.value/100;
		//var resultLower = result*lowerTax/100;
		//var resultHigher = result*higherTax/100;
		//if ( discount == 0 ) discount = "+ 0";
		
		//y2002basic.innerHTML = percent+"%";
		//y2002discount.innerHTML = dualSupplement+"% "+discount+"%";
		//y2002applied.innerHTML = (percent+dualSupplement+discount)+"%";
		//y2002benefit.innerHTML = "&pound;"+result;
		//y2002Lower.innerHTML = "&pound;"+resultLower;
		//y2002Higher.innerHTML = "&pound;"+resultHigher;

		//calculate 2003/2004
		var percent = findPercent( y2003qualify, cardetails.co2.value );
		var discount = findDiscount( y2003qualify, cardetails.co2.value );
		var result = (percent+dualSupplement+discount)*cardetails.price.value/100;
		var resultLower = result*lowerTax/100;
		var resultHigher = result*higherTax/100;
		if ( discount == 0 ) discount = "+ 0";

		y2003basic.innerHTML = percent+"%";
		y2003discount.innerHTML = dualSupplement+"% "+discount+"%";
		y2003applied.innerHTML = (percent+dualSupplement+discount)+"%";
		y2003benefit.innerHTML = "&pound;"+result;
		y2003Lower.innerHTML = "&pound;"+resultLower;
		y2003Higher.innerHTML = "&pound;"+resultHigher;

		//calculate 2004/2005
		percent = findPercent( y2004qualify, cardetails.co2.value );
		discount = findDiscount( y2004qualify, cardetails.co2.value );
		result = (percent+dualSupplement+discount)*cardetails.price.value/100;
		resultLower = result*lowerTax/100;
		resultHigher = result*higherTax/100;
		if ( discount == 0 ) discount = "+ 0";

		y2004basic.innerHTML = percent+"%";
		y2004discount.innerHTML = dualSupplement+"% "+discount+"%";
		y2004applied.innerHTML = (percent+dualSupplement+discount)+"%";
		y2004benefit.innerHTML = "&pound;"+result;
		y2004Lower.innerHTML = "&pound;"+resultLower;
		y2004Higher.innerHTML = "&pound;"+resultHigher;
		
		//calculate 2005/2006
		percent = findPercent( y2005qualify, cardetails.co2.value );
		discount = findDiscount( y2005qualify, cardetails.co2.value );
		result = (percent+dualSupplement+discount)*cardetails.price.value/100;
		resultLower = result*lowerTax/100;
		resultHigher = result*higherTax/100;
		if ( discount == 0 ) discount = "+ 0";

		y2005basic.innerHTML = percent+"%";
		y2005discount.innerHTML = dualSupplement+"% "+discount+"%";
		y2005applied.innerHTML = (percent+dualSupplement+discount)+"%";
		y2005benefit.innerHTML = "&pound;"+result;
		y2005Lower.innerHTML = "&pound;"+resultLower;
		y2005Higher.innerHTML = "&pound;"+resultHigher;
	}