function stateOptions()
{
	this.stateOptions = new Array();
	this.stateOptions['US'] = new Array();
	
	this.stateOptions['US']['AL'] = new Option('ALABAMA', 'AL');
	this.stateOptions['US']['AK'] = new Option('ALASKA', 'AK');
	this.stateOptions['US']['AZ'] = new Option('ARIZONA', 'AZ');
	this.stateOptions['US']['AR'] = new Option('ARKANSAS', 'AR');
	this.stateOptions['US']['CA'] = new Option('CALIFORNIA', 'CA');
	this.stateOptions['US']['CO'] = new Option('COLORADO', 'CO');
	this.stateOptions['US']['CT'] = new Option('CONNECTICUT', 'CT');
	this.stateOptions['US']['DE'] = new Option('DELAWARE', 'DE');
	this.stateOptions['US']['DC'] = new Option('DISTRICT OF COLUMBIA', 'DC');
	this.stateOptions['US']['FL'] = new Option('FLORIDA', 'FL');
	this.stateOptions['US']['GA'] = new Option('GEORGIA', 'GA');
	this.stateOptions['US']['HI'] = new Option('HAWAII', 'HI');
	this.stateOptions['US']['ID'] = new Option('IDAHO', 'ID');
	this.stateOptions['US']['IL'] = new Option('ILLINOIS', 'IL');
	this.stateOptions['US']['IN'] = new Option('INDIANA', 'IN');
	this.stateOptions['US']['IA'] = new Option('IOWA', 'IA');
	this.stateOptions['US']['KS'] = new Option('KANSAS', 'KS');
	this.stateOptions['US']['KY'] = new Option('KENTUCKY', 'KY');
	this.stateOptions['US']['LA'] = new Option('LOUISIANA', 'LA');
	this.stateOptions['US']['ME'] = new Option('MAINE', 'ME');
	this.stateOptions['US']['MD'] = new Option('MARYLAND', 'MD');
	this.stateOptions['US']['MA'] = new Option('MASSACHUSETTS', 'MA');
	this.stateOptions['US']['MI'] = new Option('MICHIGAN', 'MI');
	this.stateOptions['US']['MN'] = new Option('MINNESOTA', 'MN');
	this.stateOptions['US']['MS'] = new Option('MISSISSIPPI', 'MS');
	this.stateOptions['US']['MO'] = new Option('MISSOURI', 'MO');
	this.stateOptions['US']['MT'] = new Option('MONTANA', 'MT');
	this.stateOptions['US']['NE'] = new Option('NEBRASKA', 'NE');
	this.stateOptions['US']['NV'] = new Option('NEVADA', 'NV');
	this.stateOptions['US']['NH'] = new Option('NEW HAMPSHIRE', 'NH');
	this.stateOptions['US']['NJ'] = new Option('NEW JERSEY', 'NJ');
	this.stateOptions['US']['NM'] = new Option('NEW MEXICO', 'NM');
	this.stateOptions['US']['NY'] = new Option('NEW YORK', 'NY');
	this.stateOptions['US']['NC'] = new Option('NORTH CAROLINA', 'NC');
	this.stateOptions['US']['ND'] = new Option('NORTH DAKOTA', 'ND');
	this.stateOptions['US']['OH'] = new Option('OHIO', 'OH');
	this.stateOptions['US']['OK'] = new Option('OKLAHOMA', 'OK');
	this.stateOptions['US']['OR'] = new Option('OREGON', 'OR');
	this.stateOptions['US']['PA'] = new Option('PENNSYLVANIA', 'PA');
	this.stateOptions['US']['RI'] = new Option('RHODE ISLAND', 'RI');
	this.stateOptions['US']['SC'] = new Option('SOUTH CAROLINA', 'SC');
	this.stateOptions['US']['SD'] = new Option('SOUTH DAKOTA', 'SD');
	this.stateOptions['US']['TN'] = new Option('TENNESSEE', 'TN');
	this.stateOptions['US']['TX'] = new Option('TEXAS', 'TX');
	this.stateOptions['US']['UT'] = new Option('UTAH', 'UT');
	this.stateOptions['US']['VT'] = new Option('VERMONT', 'VT');
	this.stateOptions['US']['VA'] = new Option('VIRGINIA', 'VA');
	this.stateOptions['US']['WA'] = new Option('WASHINGTON', 'WA');
	this.stateOptions['US']['WV'] = new Option('WEST VIRGINIA', 'WV');
	this.stateOptions['US']['WI'] = new Option('WISCONSIN', 'WI');
	this.stateOptions['US']['WY'] = new Option('WYOMING', 'WY');
	
	this.stateOptions['MX'] = new Array();
	this.stateOptions['MX']['AG'] = new Option('Aguascalientes', 'AG');
	this.stateOptions['MX']['BC'] = new Option('Baja California Norte', 'BC');
	this.stateOptions['MX']['BS'] = new Option('Baja California Sur', 'BS');
	this.stateOptions['MX']['CM'] = new Option('Campeche', 'CM');
	this.stateOptions['MX']['CS'] = new Option('Chiapas', 'CS');
	this.stateOptions['MX']['CH'] = new Option('Chihuahua', 'CH');
	this.stateOptions['MX']['CO'] = new Option('Coahuila', 'CO');
	this.stateOptions['MX']['CL'] = new Option('Colima', 'CL');
	this.stateOptions['MX']['DG'] = new Option('Durango', 'DG');
	this.stateOptions['MX']['DF'] = new Option('Distrito Federal', 'DF');
	this.stateOptions['MX']['GT'] = new Option('Guanajuato', 'GT');
	this.stateOptions['MX']['GR'] = new Option('Guerrero', 'GR');
	this.stateOptions['MX']['HG'] = new Option('Hidalgo', 'HG');
	this.stateOptions['MX']['JA'] = new Option('Jalisco', 'JA');
	this.stateOptions['MX']['MX'] = new Option('Estado de México', 'MX');
	this.stateOptions['MX']['MI'] = new Option('Michoacán', 'MI');
	this.stateOptions['MX']['MO'] = new Option('Morelos', 'MO');
	this.stateOptions['MX']['NA'] = new Option('Nayarit', 'NA');
	this.stateOptions['MX']['NL'] = new Option('Nuevo León', 'NL');
	this.stateOptions['MX']['OA'] = new Option('Oaxaca', 'OA');
	this.stateOptions['MX']['PU'] = new Option('Puebla', 'PU');
	this.stateOptions['MX']['QT'] = new Option('Querétaro', 'QT');
	this.stateOptions['MX']['QR'] = new Option('Quintana Roo', 'QR');
	this.stateOptions['MX']['SL'] = new Option('San Luis Potosí', 'SL');
	this.stateOptions['MX']['SI'] = new Option('Sinaloa', 'SI');
	this.stateOptions['MX']['SO'] = new Option('Sonora', 'SO');
	this.stateOptions['MX']['TB'] = new Option('Tabasco', 'TB');
	this.stateOptions['MX']['TM'] = new Option('Tamaulipas', 'TM');
	this.stateOptions['MX']['TL'] = new Option('Tlaxcala', 'TL');
	this.stateOptions['MX']['VE'] = new Option('Veracruz', 'VE');
	this.stateOptions['MX']['YU'] = new Option('Yucatán', 'YU');
	this.stateOptions['MX']['ZA'] = new Option('Zacatecas', 'ZA');

	this.stateListSwitch = function(selectElementId, country) 
	{
	   document.getElementById(selectElementId).options.length = 0;
	        
	   var dynamicOptions = "this.stateOptions['" + country + "']";
	   dynamicOptions = eval(dynamicOptions);
	   document.getElementById(selectElementId).options[0] = new Option("(Choose one)", "0");
	   var i = 1;
	   for (var abbr in dynamicOptions)
	   {
	       document.getElementById(selectElementId).options[i++] = dynamicOptions[abbr];
	   }
	}
}