// JavaScript Document
function IsNumeric(Value1)
{
	var ValidChars = "0123456789";
	var IsNumber=true;
	var Char;
 
	for (Loop = 0; Loop < Value1.length && IsNumber == true; Loop++) 
	{
		Char = Value1.charAt(Loop); 
		if (ValidChars.indexOf(Char) == -1) 
		{
			IsNumber = false;
		}
	}
	return IsNumber;
}

function IsName(Value1)
{
	var ValidChars = "0123456789 abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-";
	var IsGoodName = true;
	var IsSpace = false;
	var Char;
 
	for (Loop = 0; Loop < Value1.length && IsGoodName == true; Loop++) 
	{
		Char = Value1.charAt(Loop); 
		if (ValidChars.indexOf(Char) == -1) 
		{
			IsGoodName = false;
		}
		if(Char == " ")
		{
			IsSpace = true;
		}
	}
	
	if(IsSpace && IsGoodName)
	{
		RV = true;
	}
	else
	{
		RV = false;
	}
	return(RV);
}

function CheckNo()
{
	var ThisForm = "Brochure";
	var Loop, Sum, Weight, RV;
	var CardNumber = document.forms[ThisForm].CardNo.value;
	var CVN = document.forms[ThisForm].CardCCV.value;
	var CardIssue = document.forms[ThisForm].CardIssue.value;
	var CardName = document.forms[ThisForm].CardName.value;
	var CardType = document.forms[ThisForm].CardType.value;
	var CardStartMonth = document.forms[ThisForm].CardStartMonth.value;
	var CardStartYear = document.forms[ThisForm].CardStartYear.value;
	var CardEndMonth = document.forms[ThisForm].CardExpMonth.value;
	var CardEndYear = document.forms[ThisForm].CardExpYear.value;
	var CVNError = "The card CVN you have entered is incorrect - please try again.";
	var CardNumberError = "The card number you have entered is incorrect - please try again.";
	var CardIssueError = "The card issue number you have entered is incorrect - please try again.";
	var CardNameError = "The card name you have entered is incorrect - please try again.";
	var CardTypeError1 = "You have not selected a valid card type - please try again.";
	var CardTypeError2 = "The card type you have entered does not match the card number - please try again.";
	var CardStartMonthError = "The card start month you have entered is incorrect - please try again.";
	var CardStartYearError = "The card start year you have entered is incorrect - please try again.";
	var CardEndMonthError = "The card end month you have entered is incorrect - please try again.";
	var CardEndYearError = "The card end year you have entered is incorrect - please try again.";

	RV = true;
	
	// Make sure all details only contain numbers!
	if(!IsNumeric(CardNumber))
	{
		alert(CardNumberError);
		return(false);
	}
	
	if(!IsNumeric(CVN))
	{
		alert(CVNError);
		return(false);
	}
	
	if(!IsNumeric(CardIssue))
	{
		alert(CardIssueError);
		return(false);
	}
	
	if(!IsName(CardName))
	{
		alert(CardNameError);
		return(false);
	}
	
	if(CardType == "")
	{
		alert(CardTypeError1);
		return(false);
	}

	if(CardEndMonth == "")
	{
		alert(CardEndMonthError);
		return(false);
	}

	if(CardEndYear == "")
	{
		alert(CardEndYearError);
		return(false);
	}
	

	// Make Sure Card Number Right Length
	if( (CardNumber.length >= 12) && (CardNumber.length <= 19) )
	{
		// All OK
		// Make Sure Card Number is correct
		Sum = 0;
		for(Loop = 0; Loop < CardNumber.length -1; Loop++)
		{
			Weight = CardNumber.substr(CardNumber.length - (Loop + 2 ), 1) * (2 - (Loop % 2));
			Sum += ((Weight < 10) ? Weight : (Weight - 9));
		}
	
		if(parseInt(CardNumber.substr(CardNumber.length-1)) == ((10 - Sum % 10) % 10))
		{
			// All OK 
			RV = true;
		}
		else
		{
			// Card CRC Fail
			alert(CardNumberError);
			return(false);
		}
	}
	else
	{
		// Card Length Fail
		alert(CardNumberError);
		return(false);
	}

	// Make Sure CVN OK
	if(CVN.length != 3)
	{
		//CVN Fail
		alert(CVNError);
		return(false);
	}

	// All Data is checked as being OK - Lets make sure everything else matches up
	var CardChecker = new Array(4);
	CardChecker = IdentifyCard(CardNumber);
	CheckCardType = x[0];
	CheckCardSubType = x[1];
	CheckCardNumIssueDigits = x[2];
	CheckCardOldType = x[3];

	// Check if Checker matches card Type
	if(CheckCardOldType != CardType)
	{
		alert(CardTypeError2);
		return(false);
	}
	
	// Check if Checker matches Card Issue Digits
	if(CheckCardNumIssueDigits != CardIssue.length)
	{
		alert(CardIssueError);
		return(false);
	}
	return(true);
}

var CC_PART = 0;
var CC_LENGTH = 1;
var CC_TYPE = 2;
var CC_SUBTYPE = 3;
var CC_ISSUE_DIGITS = 4;
var CC_OLD_TYPE = 5;
	
var VISA = 1;
var MC = 2;
var AMEX = 3;	
var SWITCH = 4;
var LASER = 5;
var DINERS = 6;

var CardType = new Array();
CardType[1] = "VISA";
CardType[2] = "MC";
CardType[3] = "AMEX";
CardType[4] = "SWITCH";
CardType[5] = "LASER";
CardType[6] = "DINERS";

var i=0;
var cardarray = new Array();

CreateEntry(VISA, 4, 13, 'visa', 0, 'VL');
CreateEntry(VISA, 4, 16, 'visa', 0, 'VL');
CreateEntry(MC, 51, 16, 'mc', 0, 'ML');
CreateEntry(MC, 52, 16, 'mc', 0, 'ML');
CreateEntry(MC, 53, 16, 'mc', 0, 'ML');
CreateEntry(MC, 54, 16, 'mc', 0, 'ML');
CreateEntry(MC, 55, 16, 'mc', 0, 'ML');
CreateEntry(AMEX, 34, 12, 'amex', 0, 'AX');
CreateEntry(AMEX, 34, 15, 'amex', 0, 'AX');
CreateEntry(AMEX, 37, 12, 'amex', 0, 'AX');
CreateEntry(AMEX, 37, 15, 'amex', 0, 'AX');
CreateEntry(DINERS, 300, 14, 'diners', 0, 'DN');
CreateEntry(DINERS, 36, 14, 'diners', 0, 'DN');
CreateEntry(DINERS, 38, 14, 'diners', 0, 'DN');
CreateEntry(SWITCH, 490302, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 490303, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 490304, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 490305, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 490306, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 490307, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 490308, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 490309, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 490335, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 490336, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 490337, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 490338, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 490339, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 490340, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 490525, 16, 'switch', 0, 'WL');
CreateEntry(SWITCH, 490326, 16, 'switch', 0, 'WL');
CreateEntry(SWITCH, 490327, 16, 'switch', 0, 'WL');
CreateEntry(SWITCH, 490526, 16, 'switch', 0, 'WL');
CreateEntry(SWITCH, 490527, 16, 'switch', 0, 'WL');
CreateEntry(SWITCH, 490528, 16, 'switch', 0, 'WL');
CreateEntry(SWITCH, 490529, 16, 'switch', 0, 'WL');
CreateEntry(SWITCH, 491100, 16, 'switch', 1, 'WL');
CreateEntry(SWITCH, 491101, 16, 'switch', 1, 'WL');
CreateEntry(SWITCH, 491102, 16, 'switch', 1, 'WL');
CreateEntry(SWITCH, 491174, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 491175, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 491176, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 491177, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 491178, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 491179, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 491180, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 491181, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 491182, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 4933, 19, 'switch', 0, 'WL');
CreateEntry(SWITCH, 4936, 19, 'switch', 0, 'WL');
CreateEntry(SWITCH, 560398, 19, 'switch', 0, 'WL');
CreateEntry(SWITCH, 564182, 16, 'switch', 2, 'WL');
CreateEntry(SWITCH, 633110, 16, 'switch', 2, 'WL');
CreateEntry(SWITCH, 633301, 19, 'switch', 1, 'WL');
CreateEntry(SWITCH, 675905, 19, 'switch', 1, 'WL');
CreateEntry(SWITCH, 675901, 19, 'switch', 1, 'WL');
CreateEntry(SWITCH, 675918, 19, 'switch', 1, 'WL');
CreateEntry(SWITCH, 675938, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 675939, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 675940, 18, 'switch', 1, 'WL');
CreateEntry(SWITCH, 67595, 19, 'switch', 1, 'WL');
CreateEntry(SWITCH, 675960, 19, 'switch', 1, 'WL');
CreateEntry(SWITCH, 675961, 19, 'switch', 1, 'WL');
CreateEntry(SWITCH, 675962, 19, 'switch', 1, 'WL');
CreateEntry(SWITCH, 675998, 19, 'switch', 0, 'WL');
CreateEntry(SWITCH, 633300, 16, 'switch', 0, 'WL');
CreateEntry(SWITCH, 6333, 16, 'switch', 0, 'WL');
CreateEntry(SWITCH, 675900, 16, 'switch', 0, 'WL');
CreateEntry(SWITCH, 6759, 16, 'switch', 0, 'WL');
CreateEntry(LASER, 560390, 19, 'laser', 0, 'LZ');
CreateEntry(LASER, 630493, 19, 'laser', 0, 'LZ');
CreateEntry(LASER, 630485, 18, 'laser', 0, 'LZ');
CreateEntry(LASER, 630486, 18, 'laser', 0, 'LZ');
CreateEntry(LASER, 630487, 19, 'laser', 0, 'LZ');
CreateEntry(LASER, 630488, 18, 'laser', 0, 'LZ');
CreateEntry(LASER, 630489, 18, 'laser', 0, 'LZ');
CreateEntry(LASER, 630490, 19, 'laser', 0, 'LZ');
CreateEntry(LASER, 630495, 18, 'laser', 0, 'LZ');
CreateEntry(LASER, 630498, 19, 'laser', 0, 'LZ');
CreateEntry(LASER, 630499, 16, 'laser', 0, 'LZ');
CreateEntry(LASER, 6304, 18, 'laser', 0, 'LZ');
CreateEntry(LASER, 6304, 19, 'laser', 0, 'LZ');

CreateEntry(SWITCH, 676700, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676701, 19, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676702, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676703, 18, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676704, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676705, 19, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676706, 16, 'solo', 2, 'WL');
CreateEntry(SWITCH, 676707, 16, 'solo', 2, 'WL');
CreateEntry(SWITCH, 676708, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676709, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676710, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676711, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676712, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676713, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676714, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676715, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676716, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676717, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676718, 19, 'solo', 1, 'WL');

CreateEntry(SWITCH, 676719, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676720, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676721, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676722, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676723, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676724, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676725, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676726, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676727, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676728, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676729, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676730, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676731, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676732, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676733, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676734, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676735, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676736, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676737, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676738, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676739, 16, 'solo', 0, 'WL');

CreateEntry(SWITCH, 676740, 18, 'solo', 1, 'WL');

CreateEntry(SWITCH, 676741, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676742, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676743, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676744, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676745, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676746, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676747, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676748, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676749, 16, 'solo', 0, 'WL');

CreateEntry(SWITCH, 676750, 19, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676751, 19, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676752, 19, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676753, 19, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676754, 19, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676755, 19, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676756, 19, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676757, 19, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676758, 19, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676759, 19, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676760, 19, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676761, 19, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676762, 19, 'solo', 1, 'WL');

CreateEntry(SWITCH, 676763, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676764, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676765, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676766, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676767, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676768, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676769, 16, 'solo', 0, 'WL');

CreateEntry(SWITCH, 676770, 19, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676771, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676772, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676773, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676774, 18, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676775, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676776, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676777, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676778, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676779, 18, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676780, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676781, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676782, 18, 'solo', 1, 'WL');

CreateEntry(SWITCH, 676783, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676784, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676785, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676786, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676787, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676788, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676789, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676790, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676791, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676792, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676793, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676794, 16, 'solo', 0, 'WL');

CreateEntry(SWITCH, 676795, 18, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676796, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676797, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 676798, 19, 'solo', 1, 'WL');
CreateEntry(SWITCH, 676799, 16, 'solo', 0, 'WL');

CreateEntry(SWITCH, 491100, 16, 'switch', 0, 'WL');
CreateEntry(SWITCH, 491101, 16, 'switch', 0, 'WL');
CreateEntry(SWITCH, 491102, 16, 'switch', 0, 'WL');
CreateEntry(SWITCH, 491174, 18, 'switch', 0, 'WL');
CreateEntry(SWITCH, 491175, 18, 'switch', 0, 'WL');
CreateEntry(SWITCH, 491176, 18, 'switch', 0, 'WL');
CreateEntry(SWITCH, 491177, 18, 'switch', 0, 'WL');
CreateEntry(SWITCH, 491178, 18, 'switch', 0, 'WL');
CreateEntry(SWITCH, 491179, 18, 'switch', 0, 'WL');
CreateEntry(SWITCH, 491180, 18, 'switch', 0, 'WL');
CreateEntry(SWITCH, 491181, 18, 'switch', 0, 'WL');
CreateEntry(SWITCH, 491182, 18, 'switch', 0, 'WL');
CreateEntry(SWITCH, 633450, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633451, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633452, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633453, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633454, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633455, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633456, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633457, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633458, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633459, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633460, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633461, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633462, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633463, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633464, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633465, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633466, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633467, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633468, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633469, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633470, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633471, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633472, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633473, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633474, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633475, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633476, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633477, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633478, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633479, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633480, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633481, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633482, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633483, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633484, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633485, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633486, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633487, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633488, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633489, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633490, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633491, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633492, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633493, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633494, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633495, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633496, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633497, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633498, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633499, 16, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633450, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633451, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633452, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633453, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633454, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633455, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633456, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633457, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633458, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633459, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633460, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633461, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633462, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633463, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633464, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633465, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633466, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633467, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633468, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633469, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633470, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633471, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633472, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633473, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633474, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633475, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633476, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633477, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633478, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633479, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633480, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633481, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633482, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633483, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633484, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633485, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633486, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633487, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633488, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633489, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633490, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633491, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633492, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633493, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633494, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633495, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633496, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633497, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633498, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633499, 18, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633450, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633451, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633452, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633453, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633454, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633455, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633456, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633457, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633458, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633459, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633460, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633461, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633462, 19, 'solo', 0, 'WL');

CreateEntry(SWITCH, 633463, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633464, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633465, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633466, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633467, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633468, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633469, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633470, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633471, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633472, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633473, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633474, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633475, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633476, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633477, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633478, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633479, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633480, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633481, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633482, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633483, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633484, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633485, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633486, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633487, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633488, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633489, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633490, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633491, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633492, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633493, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633494, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633495, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633496, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633497, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633498, 19, 'solo', 0, 'WL');
CreateEntry(SWITCH, 633499, 19, 'solo', 0, 'WL');

CreateEntry(SWITCH, 6759, 19, 'switch', 0, 'WL');
CreateEntry(DINERS, 301, 14, 'diners', 0, 'DI');
CreateEntry(DINERS, 302, 14, 'diners', 0, 'DI');
CreateEntry(DINERS, 303, 14, 'diners', 0, 'DI');
CreateEntry(DINERS, 304, 14, 'diners', 0, 'DI');
CreateEntry(DINERS, 305, 14, 'diners', 0, 'DI');
CreateEntry(VISA, 4462, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 453978, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 453979, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 454313, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 454432, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 454433, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 454434, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 454435, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 454742, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456725, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456726, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456727, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456728, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456729, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456730, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456731, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456732, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456733, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456734, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456735, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456736, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456737, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456738, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456739, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456740, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456741, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456742, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456743, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456744, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 456745, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490960, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490961, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490962, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490963, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490964, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490965, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490966, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490967, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490968, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490969, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490970, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490971, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490972, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490973, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490974, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490975, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490976, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490977, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490978, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 490979, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 492181, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 492182, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 498824, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465830, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465831, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465832, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465833, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465834, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465835, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465836, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465837, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465838, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465839, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465840, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465841, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465842, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465843, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465844, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465845, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465846, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465847, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465848, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465849, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465850, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465851, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465852, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465853, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465854, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465855, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465856, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465857, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465858, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465859, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465860, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465861, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465862, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465863, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465864, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465865, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465866, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465867, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465868, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465869, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465870, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465871, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465872, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465873, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465874, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465875, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465876, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465877, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465878, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465879, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465901, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465902, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465903, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465904, 16, 'delta', 0, 'VD');

CreateEntry(VISA, 465905, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465906, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465907, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465908, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465909, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465910, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465911, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465912, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465913, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465914, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465915, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465916, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465917, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465918, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465919, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465920, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465921, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465922, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465923, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465924, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465925, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465926, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465927, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465928, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465929, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465930, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465931, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465932, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465933, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465934, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465935, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465936, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465937, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465938, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465939, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465940, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465941, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465942, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465943, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465944, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465945, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465946, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465947, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465948, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465949, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 465950, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 413733, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 413734, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 413735, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 413736, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 413737, 16, 'delta', 0, 'VD');
// New Cards
CreateEntry(VISA, 417500, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 4917, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 4913, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 4508, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 4539, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 4844, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 4751, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 4543, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 4737, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 4757, 16, 'delta', 0, 'VD');
CreateEntry(VISA, 4567, 16, 'delta', 0, 'VD');

function CreateEntry(Type, Bin, Len, SubType, IssueDigits, OldType)
{
	cardarray[i] = new Array(6);
	cardarray[i][CC_PART] = Bin;
	cardarray[i][CC_LENGTH] = Len;
	cardarray[i][CC_TYPE] = Type;
	cardarray[i][CC_SUBTYPE] = SubType;
	cardarray[i][CC_ISSUE_DIGITS] = IssueDigits;
	cardarray[i][CC_OLD_TYPE] = OldType;
	i++;
}

function IdentifyCard(CCNumber)
{
	var Len = CCNumber.length;
	x = new Array(2);
	x[0] = -1;
	
	if (Len < 6)
	{
		return x;
	}
	else
	{		
		var SixDigits = parseInt(CCNumber.substring(0,6));
		x = Search(SixDigits, Len);
		if (x[0] == -1){				
			var FiveDigits = parseInt(CCNumber.substring(0,5));
			x = Search(FiveDigits, Len);
			if (x[0] == -1){
				var FourDigits = parseInt(CCNumber.substring(0,4));
				x = Search(FourDigits, Len);
				if ((x[0]) == -1){
					var ThreeDigits = parseInt(CCNumber.substring(0,3));
					x = Search(ThreeDigits, Len);										
					if (x[0] == -1){
						var TwoDigits = parseInt(CCNumber.substring(0,2));
						x = Search(TwoDigits, Len);

						if (x[0] == -1){
							var OneDigit = parseInt(CCNumber.substring(0,1));								
							x = Search(OneDigit, Len);			
						}
					}				
				}										
			}
		} // end of if loop
	} // end of main if		

	if (x[0] == -1)
	{
		return(x);
	}
	else
	{
		return(new Array(CardType[x[0]], x[1], x[2], x[3]));
	}
}
		
function Search(CCPart, CCLen)
{		
	var i = 0;
	rtn = new Array(3);
	while (i < cardarray.length)
	{ 
		if (cardarray[i][CC_PART] == CCPart)
		{
			if (cardarray[i][CC_LENGTH] == CCLen)
			{
				rtn[0] = CardType[cardarray[i][CC_TYPE]];
				rtn[1] = cardarray[i][CC_SUBTYPE];
				rtn[2] = cardarray[i][CC_ISSUE_DIGITS];
				rtn[3] = cardarray[i][CC_OLD_TYPE];
				return rtn;			
			}
		}
	i++; 
	}
	rtn[0] = -1;
	return(rtn);
}
