var TravelModel = {
	"destination":{
		"USA":[
			{"name":"Atlanta", "data":"Atlanta, GA, US"}, 
			{"name":"Boston", "data":"Boston, MA, US"}, 
			{"name":"Chicago", "data":"Chicago, IL, US"}, 
			{"name":"Dallas", "data":"Dallas, TX, US"}, 
			{"name":"Houston", "data":"Houston, TX, US"}, 
			{"name":"Las Vegas", "data":"Las Vegas, NV, US"}, 
			{"name":"Los Angeles", "data":"Los Angeles, CA, US"}, 
			{"name":"Miami", "data":"Miami, FL, US"}, 
			{"name":"Minneapolis", "data":"Minneapolis, MN, US"}, 
			{"name":"New York", "data":"New York, NY, US"}, 
			{"name":"Orlando", "data":"Orlando, FL, US"}, 
			{"name":"Philadelphia", "data":"Philadelphia, PA, US"}, 
			{"name":"San Diego", "data":"San Diego, CA, US"}, 
			{"name":"San Francisco", "data":"San Francisco, CA, US"}, 
			{"name":"San Jose", "data":"San Jose, CA, US"}, 
			{"name":"Seattle", "data":"Seattle, WA, US"}, 
			{"name":"Washington DC", "data":"Washington DC, US"}
		],
		"Canada":[
			{"name":"Calgary", "data":"Calgary, Canada"}, 
			{"name":"Montreal", "data":"Montreal, Canada"}, 
			{"name":"Niagara Falls", "data":"Niagara Falls, Canada"}, 
			{"name":"Ottawa", "data":"Ottawa, Canada"}, 
			{"name":"Quebec", "data":"Quebec, Canada"}, 
			{"name":"Toronto", "data":"Toronto, Canada"}, 
			{"name":"Vancouver", "data":"Vancouver, Canada"}, 
			{"name":"Victoria", "data":"Victoria, Canada"}, 
			{"name":"Whistler", "data":"Whistler, Canada"}, 
			{"name":"Winnepeg", "data":"Winnepeg, Canada"}
		],
		"Europe":[
			{"name":"Amsterdam", "data":"Amsterdam, Netherlands"}, 
			{"name":"Barcelona", "data":"Barcelona, Spain"}, 
			{"name":"Berlin", "data":"Berlin, Germany"}, 
			{"name":"Brussels", "data":"Brussels, Belgium"}, 
			{"name":"Dublin", "data":"Dublin, Ireland"}, 
			{"name":"London", "data":"London, England"}, 
			{"name":"Madrid", "data":"Madrid, Spain"}, 
			{"name":"Munich", "data":"Munich, Germany"}, 
			{"name":"Paris", "data":"Paris, France"}, 
			{"name":"Prague", "data":"Prague, Czech"}, 
			{"name":"Rome", "data":"Rome, Italy"}, 
			{"name":"Vienna", "data":"Vienna, Austria"}
		],
		"Carribean":[
			{"name":"Aruba", "data":"Aruba"}, 
			{"name":"Bahamas", "data":"Bahamas"}, 
			{"name":"Curacao", "data":"Curacao, Netherlands Antilles"}, 
			{"name":"Puerto Rico", "data":"Puerto Rico"}, 
			{"name":"St. Kitts", "data":"St. Kitts"}, 
			{"name":"St. Lucia", "data":"St. Lucia"}, 
			{"name":"US Virgin Islands", "data":"US Virgin Islands"}
		],
		"Islands":[
			{"name":"Bali", "data":"Bali"}, 
			{"name":"Bermuda", "data":"Bermuda"}, 
			{"name":"Bora bora", "data":"Bora bora"}, 
			{"name":"Boracay", "data":"Boracay"}, 
			{"name":"Cebu", "data":"Cebu"}, 
			{"name":"Fiji", "data":"Fiji"}, 
			{"name":"Guam", "data":"Guam"}, 
			{"name":"Hawaii", "data":"Hawaii"}, 
			{"name":"Kauai", "data":"Kauai"}, 
			{"name":"Lanai", "data":"Lanai"}, 
			{"name":"Macau", "data":"Macau"}, 
			{"name":"Maldives", "data":"Maldives"}, 
			{"name":"Maui", "data":"Maui"}, 
			{"name":"Phi phi", "data":"Phi phi"}, 
			{"name":"Phuket", "data":"Phuket"}, 
			{"name":"Saipan", "data":"Saipan"}
		],
		"Asia":[
			{"name":"Bali", "data":"Bali"}, 
			{"name":"Bangkok", "data":"Bangkok"}, 
			{"name":"Beijing", "data":"Beijing"}, 
			{"name":"Brisbane", "data":"Brisbane"}, 
			{"name":"Hong Kong", "data":"Hong Kong"}, 
			{"name":"Kuala Lumpur", "data":"Kuala Lumpur"}, 
			{"name":"Melbourne", "data":"Melbourne"}, 
			{"name":"Perth", "data":"Perth"}, 
			{"name":"Phuket", "data":"Phuket"}, 
			{"name":"Phuket", "data":"Phuket"}, 
			{"name":"Seoul", "data":"Seoul"}, 
			{"name":"Shanghai", "data":"Shanghai"}, 
			{"name":"Singapore", "data":"Singapore"}, 
			{"name":"Sydney", "data":"Sydney"}, 
			{"name":"Taipei", "data":"Taipei"}, 
			{"name":"Tokyo", "data":"Tokyo"}
		]
	},
	"hostel":{
		"Albania":["Berat", "Borshi", "Durres", "Gjirokaster", "Kavaje", "Korca", "Pogradec", "Puka", "Saranda", "Shkoder", "Tirana", "Vlora", "Voskopoje"],
		"Algeria":["Oran"], 
		"Andorra":["Andorra la Vella", "Arinsal", "Encamp", "Escaldes-Engordany", "Ordino", "Sant Julia de Loria", "Soldeu"], 
		"Antigua And Barbuda":["English Harbour", "Seatons", "St. John&amp;apos;s"], 
		"Argentina":["Adrogue", "Alta Gracia", "Bariloche", "Buenos Aires", "Cafayate", "Canuelas", "Capilla del Monte", "Capitan Sarmiento", "Carlos Pellegrini", "Caviahue", "Chacras de Coria-Lujan", "Chilecito", "Colon", "Cordoba", "El Bolson", "El Calafate", "Esquel", "Gaiman", "Goya", "Humahuaca", "Itati", "La Cumbre", "Lago Puelo", "Malargue", "Mar del Plata", "Mendoza", "Mercedes", "Mina Clavero", "Miramar", "Obera", "Parana", "Pinamar", "Posadas", "Puerto Iguazu", "Puerto Madryn", "Puerto Piramides - Peninsula Valdes", "Rio Cuarto", "Rio Gallegos", "Rosario", "Salta", "San Antonio de Areco", "San Antonio de los Cobres", "San Juan", "San Marcos Sierras", "San Martin de los Andes", "San Rafael", "San Salvador de Jujuy", "Santa Elena, Entre Rios", "Santa Fe", "Sierras de Cordoba", "Susques", "Tanti", "Tigre", "Tilcara", "Trevelin", "Tucuman", "Ushuaia", "Valle de la Luna", "Villa Carlos Paz", "Villa Cura Brochero", "Villa La Angostura", "Yala"], 
		"Armenia":["Gyumri", "Stepanakert", "Yerevan"], 
		"Aruba":["Oranjestad"], 
		"Australia":["1770 Town of", "Adelaide", "Agnes Water", "Airlie Beach", "Albany", "Alice Springs", "Apollo Bay", "Ayr", "Bega", "Bellingen", "Blue Mountains", "Bright", "Brisbane", "Broome", "Bunbury", "Bundaberg", "Byron Bay", "Cairns", "Caloundra", "Canberra", "Cape Tribulation", "Coffs Harbour", "Coober Pedy", "Cooktown", "Cooma", "Coral Bay", "Coromandel Valley", "Crescent Heads", "Daintree", "Darwin", "Denmark", "Devonport", "Esperance", "Faulconbridge", "Fraser Island", "Fremantle", "Glass House Mountains", "Glen Innes", "Gold Coast - Coolangatta", "Gold Coast - Currumbin", "Gold Coast - Main Beach", "Gold Coast - Southport", "Gosford", "Grampians", "Hervey Bay", "Hidden Valley", "Hobart", "Hunter Valley", "Kalbarri", "Kangaroo Island", "Katherine", "Kununurra", "Kuranda", "Lake Conjola", "Launceston", "Lismore", "Maffra", "Magnetic Island", "Margaret River", "Maroochydore", "McLaren Vale", "Melbourne", "Merimbula", "Mildura", "Mission Beach", "Monkey Mia", "Mooloolaba", "Mount Gambier", "Newcastle", "Nimbin", "Noosa", "Pacific Palms", "Perth", "Peterborough", "Phillip Island", "Port Arthur", "Port Campbell", "Port Douglas", "Port Macquarie", "Port Pirie", "Port Stephens", "Princetown", "Rainbow Beach", "Richmond", "Robe", "Rockhampton", "Stawell", "Sunshine Coast - Caboolture", "Sunshine Coast - Montville", "Surfers Paradise", "Swansea", "Sydney", "Tennant Creek", "Thredbo", "Townsville", "Tumut", "Venus Bay", "Whitsundays", "Wollongong"], 
		"Austria":["Altenmarkt", "Annaberg bei Mariazell", "Arlberg", "Axams", "Bad Aussee", "Bad Bleiberg", "Bad Gastein", "Bad Ischl", "Bregenz", "Feldkirch", "Gerlos", "Graz", "Grunau im Almtal", "Hermagor-Pressegger See", "Innsbruck", "Kaprun", "Kirchdorf", "Kitzbuhel", "Klagenfurt", "Koetschach Mauthen", "Krems", "Kremsmuenster", "Leogang", "Linz", "Lofer", "Mariazell", "Melk", "Mieming", "Neusiedl am See", "Obertraun", "Reutte", "Salzburg", "Schladming", "Silz", "St Gilgen", "St Johann in Tirol", "Steinach am Brenner", "Tulln", "Vienna", "Villach", "Voitsberg", "Wagrain", "Zell am See"], 
		"Azerbaijan":["Baku", "Quba"], 
		"Bahamas":["George Town", "Grand Bahama Island", "Gregory Town", "Nassau"], 
		"Bangladesh":["Dhaka"], 
		"Barbados":["Bridgetown", "Saint James", "Silver Sands", "St Lawrence Gap", "Worthing"], 
		"Belarus":["Minsk"], 
		"Belgium":["Aalst", "Antwerp", "Bouillon", "Bruges", "Brussels", "Champlon", "Charleroi", "Gembloux", "Gent", "Leuven", "Liege", "Mechelen", "Mons", "Namur", "Ostend", "Torhout", "Tournai", "Ypres"], 
		"Belize":["Belize City", "Caye Caulker", "Corozal Town", "Dangriga", "Punta Gorda", "San Ignacio"], 
		"Benin":["Cotonou"], 
		"Bolivia":["Cochabamba", "Copacabana", "Coroico", "La Paz", "Potosi", "Puerto Quijarro", "Samaipata", "Santa Cruz", "Sucre", "Tupiza", "Uyuni"], 
		"Bosnia And Herzegovina":["Medjugorje", "Mostar", "Sarajevo"], 
		"Botswana":["Gaborone"], 
		"Brazil":["Angra dos Reis", "Aracaju", "Arraial da Ajuda", "Arraial do Cabo", "Belem", "Belo Horizonte", "Bombinhas", "Bonito", "Buzios", "Cabo Frio", "Campo Grande", "Canoa Quebrada", "Conceicao do Mato Dentro", "Cristiano Otoni", "Cuiaba", "Curitiba", "Florianopolis", "Fortaleza", "Foz do Iguacu", "Guaratuba", "Guaruja", "Ilha de Boipeba", "Ilha do Mel", "Ilha Grande", "Ilhabela", "Ilheus", "Imbassai", "Imbituba", "Itacare", "Itacoatiara", "Jericoacoara", "Joao Pessoa", "Lencois", "Manaus", "Mangue Seco", "Maragogi", "Maresias", "Natal", "Nova Friburgo", "Ouro Preto", "Paraty", "Peruibe", "Petropolis", "Pipa", "Porto Seguro", "Recife", "Rio de Janeiro", "Salvador", "Sana", "Sao Paulo", "Saquarema", "Serra da Canastra", "Trancoso", "Ubatuba", "Visconde de Maua"], 
		"Britain":[], 
		"British Virgin Islands":["Tortola"], 
		"Brunei":["Bandar Seri Begawan"], 
		"Bulgaria":["Arbanassi", "Balchik", "Bansko", "Belogradchik", "Blagoevgrad", "Burgas", "Dobrinishte", "Kamen Bryag", "Kardjali", "Kavarna", "Kazanlak", "Kresna", "Nessebar", "Pamporovo", "Plovdiv", "Russe", "Samokov", "Shipka", "Sinemoretz", "Smolyan", "Sofia", "Sozopol", "Srednogorovo", "Sunny Beach", "Varna", "Veliko Tarnovo"], 
		"Burkina Faso":["Burkina Faso"], 
		"Cambodia":["Banlung", "Phnom Penh", "Siem Reap", "Sihanoukville"], 
		"Canada":["Ainsworth Hot Springs", "Algonquin", "Baddeck", "Banff", "Barkerville", "Barrie", "Bella Coola", "Brockville", "Calgary", "Campbell River", "Canmore", "Cape Breton", "Charlottetown", "Courtenay", "Dawson City", "Digby", "Edmonton", "Fernie", "Gros Morne National Park", "Halifax", "Hamilton", "Jasper", "Kamloops", "Kananaskis", "Kelowna", "London", "Madawaska", "Mahone Bay", "Moncton", "Mont-Tremblant", "Montebello", "Montreal", "Nanaimo", "Nelson", "Niagara Falls", "Nordegg", "Ottawa", "Oxtongue Lake", "Pemberton", "Penticton", "Port Alberni", "Port Colborne", "Port Hardy", "Prince George", "Prince Rupert", "Quebec", "Regina", "Revelstoke", "Rimouski", "Riviere-du-Loup", "Rossland", "Sainte-Agathe-des-Monts", "Sainte-Anne-Des-Monts", "Salt Spring Island", "Squamish", "St. John&amp;apos;s", "Sunshine Coast", "Sutton", "Thunder Bay", "Toronto", "Trois-Rivieres", "Ucluelet", "Val-David", "Vancouver", "Vancouver Island", "Vernon", "Victoria", "Wasaga Beach", "Whistler", "Whitehorse", "Whitney", "Winnipeg", "Yarmouth"], 
		"Cape Verde":["Mindelo", "Santo Antao"], 
		"Chile":["Antofagasta", "Arica", "Castro", "Chanco", "Chillan", "Coquimbo", "Curacautin", "Easter Island", "Huelmo", "Iquique", "Juan Fernandez Archipelago", "La Serena", "Los Andes", "Pichilemu", "Pisco Elqui", "Pucon", "Puerto Montt", "Puerto Natales", "Puerto Octay", "Puerto Varas", "Puerto Williams", "Punta Arenas", "San Pedro de Atacama", "Santiago", "Temuco", "Valdivia", "Valparaiso", "Villarrica", "Vina del Mar"], 
		"China":["Beijing", "Changsha", "Changshu", "Changzhou", "Chengdu", "Chongqing", "Dali", "Dalian", "Daocheng", "Dongguan", "Dunhuang", "Fenghuang-Phoenix County", "Four Girls Mountains", "Guangzhou", "Guilin", "Guiyang", "Haikou", "Haining", "Hangzhou", "Harbin", "Hohhot", "Huangshan", "Huizhou", "Jiangyin", "Jinan", "Jiu Zhai Gou", "Jiujiang", "Kang Ding", "Kashgar", "Kunming", "Lhasa", "Lijiang", "Liuzhou", "Lugu Lake", "Luoyang", "Lushan", "Maanshan", "Mt.Emei", "Nanchang", "Nanjing", "Nanning", "Nantong", "Ningbo", "Nu Jiang River", "Pingyao", "Qingdao", "Qinghai Lake", "Qinhuangdao", "Qufu", "Sanya", "Shanghai", "Shangri-la", "Shaoxing", "Shenyang", "Shenzhen", "Shijiazhuang", "Suzhou", "Tai&amp;apos;an", "Tengchong", "Tianjin", "Urumqi", "Weihai", "Wenzhou", "Wuhan", "Wuhu", "Wuxi", "Xi&amp;apos;an", "Xiahe", "Xiamen", "Xinchang", "Xining", "Yangshuo", "Yangzhou", "Yantai", "Yinchuan", "Yizheng", "Zhangjiajie", "Zhengzhou", "Zhenjiang", "Zhongshan", "Zhuhai", "Zhuji"], 
		"Colombia":["Bogota", "Cali", "Cartagena", "Eje Cafetero", "Giron", "Leticia", "Malaga", "Medellin", "Mompos", "Popayan", "San Agustin", "San Andres Island", "San Gil", "Santa Marta", "Taganga", "Tolu"], 
		"Cook Islands":["Aitutaki Island", "Atiu Island", "Mangaia Island", "Rarotonga", "Titikaveka"], 
		"Costa Rica":["Alajuela", "Cahuita", "Cano Negro", "Cartago", "Copey de Dota", "Dominical", "Heredia", "Jaco", "La Cruz", "La Fortuna", "Liberia", "Mal Pais", "Manuel Antonio", "Monteverde", "Montezuma", "Nosara", "Playa Santa Teresa", "Playa Tamarindo", "Puerto Viejo", "Puntarenas", "Quepos", "Rincon De La Vieja National Park", "Sabalito", "San Gerardo de Rivas", "San Jose", "San Juanillo", "Santa Teresa", "Tamarindo", "Tortuguero", "Uvita"], 
		"Croatia":["Baska Voda", "Biograd na Moru", "Blato", "Bol", "Brac", "Brela", "Cavtat", "Ciovo", "Dubrovnik", "Hvar", "Jelsa", "Kastel Stafilic", "Kastela", "Klek", "Korcula", "Makarska", "Mali Losinj", "Marina", "Mlini", "Novalja", "Novigrad", "Omis", "Orasac", "Orihi", "Osijek", "Pag", "Peljesac Peninsula", "Pisak", "Plitvice Lakes", "Podstrana", "Porec", "Pula", "Rab", "Rijeka", "Rogoznica", "Rovinj", "Sibenik", "Soline", "Split", "Stari Grad", "Trogir", "Umag", "Veli Losinj", "Vis", "Vodice", "Zadar", "Zagreb", "Zminj"], 
		"Cuba":["Baracoa", "Camaguey", "Cienfuegos", "Havana", "Holguin", "Matanzas", "Moron", "Remedios", "Santa Clara", "Santiago de Cuba", "Trinidad", "Varadero", "Vinales"], 
		"Cyprus":["Ayia Marina", "Ayia Napa", "Girne", "Kakopetria", "Kyrenia", "Larnaca", "Lefke", "Limassol", "Lythrodontas", "Magusa", "Nicosia", "Oroklini Larnaca", "Paphos", "Pedhoulas", "Polis"], 
		"Czech Republic":["Bechyne", "Benesov", "Brno", "Ceske Budejovice", "Cesky Krumlov", "Haj u Loucne", "Hradec Kralove", "Jablonec nad Nisou", "Jindrichuv Hradec", "Kaplice", "Karlovy Vary", "Loket", "Loucovice", "Marianske Lazne", "Mnetes", "Olomouc", "Ostrava", "Ostrov", "Pec pod Snizkou", "Plzen", "Prague", "Rokytnice nad Jizerou", "Stramberk", "Svitavy", "Telc", "Trebic", "Valtice", "Vrchlabi", "Znojmo"], 
		"Denmark":["Aalborg", "Aarhus", "Billund", "Copenhagen", "Denmark", "Rodbyhavn", "Sonderborg", "Stege"], 
		"Dominica":["Rosalie"], 
		"Dominican Republic":["Bonao", "Cabarete", "Juan Dolio", "La Hacienda", "Las Galeras", "Las Terrenas", "Miches", "Moncion", "Puerto Plata", "Santo Domingo", "Sosua"], 
		"Ecuador":["Banos", "Canoa", "Chugchilan - Quilotoa", "Coca", "Coca - Yasuni National Park", "Cuenca", "Guayaquil", "Isinlivi", "Latacunga", "Los Bancos", "Machachi", "Manglaralto", "Manta", "Mindo", "Otavalo", "Puerto Lopez", "Puerto Rico", "Puyo - Amazon Region", "Quito", "Riobamba", "Salinas", "Tena"], 
		"Egypt":["Aswan", "Bahariya Oasis", "Cairo", "Dahab", "El Quseir", "Hurghada", "Luxor", "Marsa Alam", "Nuweiba", "Sharm el Sheikh", "St.Katherine"], 
		"El Salvador":["Apaneca", "Cuscatlan", "El Salvador", "La Libertad", "San Salvador"], 
		"England":["Arundel", "Ashby de la Zouch", "Ayr", "Bath", "Berwick on Tweed", "Birmingham", "Blackpool", "Bournemouth", "Bradford", "Brighton", "Bristol", "Broadstairs", "Bude", "Burnham Deepdale", "Cambridge", "Canterbury", "Chester", "Colne", "Cornwall", "Cotswolds", "Coventry", "Derby", "Doncaster", "Durham", "East Sussex", "Epworth", "Exeter", "Exford", "Gateshead", "Gatwick", "Gloucestershire", "Grouville", "Harlow", "Hastings", "Hawes", "Haworth", "Heathrow", "Hexham", "High Wycombe", "Hounslow", "Kent", "Kidderminster", "Lake District", "Ledbury", "Lee Valley - Stansted Airport", "Leeds", "Liverpool", "London", "Loughborough", "Louth", "Luton", "Manchester", "Marlow", "Middlesbrough", "Middlesex", "Newcastle upon Tyne", "Newquay", "North Yorkshire", "Nottingham", "Oakham", "Oxford", "Oxfordshire", "Penrith", "Penzance", "Peterborough", "Plymouth", "Portsmouth", "Preston", "Reading", "Romsey", "Salisbury", "Settle", "Sheffield", "Southampton", "St Ives", "St.Helier", "Stansted", "Stevenage", "Stockton on Tees", "Stratford-upon-Avon", "Surrey", "Tetbury", "Torquay", "Warwick", "Whitby", "Windermere", "York"], 
		"Estonia":["Haapsalu", "Kuressaare", "Parnu", "South East Estonia", "Tallinn", "Tartu", "West Estonia"], 
		"Ethiopia":["Addis Ababa"], 
		"Faroe Islands":["Torshavn"], 
		"Fiji":["Beachcomber Island", "Bekana Island", "Bounty Island", "Coral Coast", "Kadavu", "Lautoka", "Leleuvia Island", "Lomoviti", "Malolo Island", "Mana Beach", "Nadi", "Pacific Harbour", "Qamea Island", "Rakiraki", "Robinson Crusoe Island", "Savusavu", "Sigatoka", "Suva", "Yanuca Island", "Yasawa Islands"], 
		"Finland":["Hamina", "Heinola", "Helsinki", "Inari", "Kotka", "Rovaniemi", "Tervola", "Turku", "Vaasa"], 
		"France":["Agen", "Aimargues", "Aix Les Bains", "Aix-en-Provence", "Albi", "Amboise", "Angers", "Annecy", "Antibes", "Anzex", "Argeles sur Mer", "Argenton Sur Creuse", "Arles", "Arreau", "Arvieux", "Aubenas", "Aurons", "Autun", "Avignon", "Bandol", "Baux de Provence", "Beaucaire", "Beaune", "Bergerac", "Beziers", "Biarritz", "Blois", "Bordeaux", "Bourg St. Maurice", "Brantome", "Brest", "Caissargues", "Cajarc", "Calais", "Cannes", "Capvern les Bains", "Carcassonne", "Carqueiranne", "Castres", "Chalon Sur Saone", "Chamonix", "Chamrousse", "Chevreuse", "Clermont-Ferrand", "Cognac", "Colmar", "Concarneau", "Confolens", "Cordes", "Corsica", "Courbevoie", "Deauville", "Dijon", "Dinan", "Dinard", "Draguignan", "Dreux", "Evian", "Evry", "Feclaz", "Font-Romeu", "Fos Sur Mer", "Frontignan", "Geneva", "Ghisonnacia", "Giverny", "Goersdorf", "Gourdon", "Grenoble", "Gruissan", "Honfleur", "Hyeres", "Isola", "Issy les Moulineaux", "Istres", "Jausiers", "Journet", "Juan les Pins", "La Bourboule", "La Croix Valmer", "La Rochelle", "Lauzet Ubaye", "Le Bourget", "Le Mans", "Les Arcs", "Les Menuires", "Levignac", "Lezay", "Lille", "Limoges", "Limoges-Rochechouart", "Lourdes", "Lucciana", "Lyon", "Lyon-Massieux", "Marseille", "Marseille Airport", "Marvejols", "Megeve", "Menton", "Mereville", "Metz", "Mont St. Michel", "Montpellier", "Morzine", "Nanterre", "Nantes", "Narbonne", "Nice", "Nimes", "Niort", "Noves", "Orange", "Orbey", "Orly", "Ouistreham", "Paris", "Paris Beauvais", "Paris-Cergy Pontoise", "Paris-Disneyland", "Paris-La Defense", "Paris-Roissy CDG", "Paris-Tremblay-en-France", "Perigueux", "Perpignan", "Poitiers", "Pontault Combault", "Pouligny Notre Dame", "Pra Loup", "Puy Saint Vincent", "Quillan", "Reims", "Rennes", "Richelieu", "Riquewihr", "Rodez", "Romorantin", "Roquebrune Cap Martin", "Rouen", "Ruffec", "Sahorre", "Saint Julien en Genevois", "Saint Michel de Lanes", "Saint Remy de Provence", "Saint Tropez", "Saint-Malo", "Saint-Maximin", "Sainte Foy la Longue", "Saintes Maries de la Mer", "Salignac", "Salon de Provence", "Salon-de-Provence", "Sanary", "Saumur", "Semeac", "Sete", "Siradan", "Siran", "Six Fours les Plages", "Solaize", "Souillac", "St Emilion", "St Lary Soulan", "Strasbourg", "Thones", "Toulon", "Toulouse", "Tours", "Valence", "Valfrejus", "Vence", "Verneuil", "Verteuil sur Charente", "Vieux Boucau", "Villedieu-les-Poeles", "Villefranche de Rouergue", "Vouvant", "Vouzon"], 
		"French Guiana":["Saint Martin"], 
		"French Polynesia":["Huahine", "Moorea", "Tahiti"], 
		"Gambia":["Banjul", "Gunjur", "Tujereng"], 
		"Georgia":["Kutaisi", "Stepantsminda", "Tbilisi"], 
		"Germany":["Aachen", "Albbruck-Unteralpfen", "Alsfeld", "Augsburg", "Bad Grund", "Bad Krozingen", "Bad Sooden-Allendorf", "Bad Wurzach", "Baden-Baden", "Bamberg", "Bautzen", "Bayerisch Eisenstein", "Bayrischzell", "Berchtesgaden", "Berlin", "Bibarac", "Bochum", "Bonn", "Bottrop", "Bremen", "Bullay", "Cologne", "Dinkelsbuhl", "Dortmund", "Dresden", "Duisburg", "Dusseldorf", "Erfurt", "Erlangen", "Essen", "Euskirchen", "Frankfurt", "Frankfurt Hahn", "Freiburg", "Friedrichshafen", "Fussen", "Garmisch-Partenkirchen", "Gersfeld", "Gottingen", "Halle", "Hamburg", "Hannover", "Heide", "Heidelberg", "Hohenlinden", "Horn Bad Meinberg", "Kassel", "Kiel", "Kleve", "Kobern-Gondorf", "Koblenz", "Lauter", "Leipzig", "Limburg an der Lahn", "Lubeck", "Lubeck - Schattin", "Magdeburg", "Mannheim", "Meissen", "Menzenschwand", "Muenster", "Munich", "Naumburg", "Noerdlingen", "Nuremberg", "Offenbach", "Offenburg", "Oppenau", "Osnabruck", "Passau", "Pfronten", "Plankenfels", "Potsdam", "Rees", "Regensburg", "Rickenbach", "Rosshaupten", "Rostock", "Rothenburg", "Rudesheim am Rhein", "Saarbrucken", "Schweinfurt", "Sinzig", "Stuttgart", "Thossfell", "Titisee", "Titisee Neustadt", "Trier", "Ulm", "Vohenstrauss", "Weimar", "Wernigerode", "Wiesbaden", "Wilhelmshaven", "Wuppertal"], 
		"Ghana":["Accra", "Akwidaa", "Busua via Dixcove", "Cape Coast", "Ho, Volta Region", "Kumasi", "Tema"], 
		"Greece":["Achaia", "Aegina", "Agios Nikolaos", "Agistri", "Alonissos", "Amorgos", "Andros", "Arkadi", "Arta", "Athens", "Chalkidiki", "Chania", "Chios", "Corfu", "Crete", "Delphi", "Elounda", "Florina", "Galissas", "Gavdos", "Gouvia", "Heraklion", "Ikaria", "Imathia", "Ioannina", "Ios", "Ithaca", "Kalamata", "Kalambaka", "Kalampaka", "Kalymnos Island", "Kardamili", "Karditsa", "Karpathos", "Kastoria", "Kavala", "Kavala Town", "Kefalonia", "Kerkyra", "Komotini", "Korinthia", "Kos", "Laconia", "Lagonissi", "Lamia", "Lefkada", "Lesvos", "Levadia", "Litohoro", "Loutraki", "Matala", "Messolongi", "Milos", "Monemvasia", "Mykonos", "Myrina", "Nafplio", "Naoussa", "Naxos", "Olympia", "Papingo", "Parga", "Paros", "Patra", "Patras", "Pelion", "Perama", "Plomari", "Poros Island", "Porto Heli", "Rethymno", "Rhodes", "Rhodes Town", "Samos", "Samos Island", "Santorini", "Serres", "Sifnos", "Sithonia", "Skiathos", "Skopelos Island", "Sounio", "Sparta", "Stoupa", "Syros", "Thassos Island", "Thessaloniki", "Tinos", "Tolo", "Trikala", "Volos", "Zagora", "Zagori", "Zakynthos", "Zante"], 
		"Greenland":["Qaqortoq"], 
		"Grenada":["St Georges"], 
		"Guadeloupe":["Saint Francois"], 
		"Guatemala":["Antigua", "El Remate", "Guatemala", "Guatemala City", "Jaibalito", "Lake Atitlan", "Livingston", "Nebaj", "Panajachel", "Quetzaltenango", "Sacatepequez", "Suchitepequez- Patulul"], 
		"Haiti":["Port Salut"], 
		"Holland":[], 
		"Honduras":["Comayagua", "Copan Ruinas", "La Ceiba", "Roatan", "San Pedro Sula", "Tegucigalpa", "Tela", "Trujillo"], 
		"Hong Kong":["Hong Kong"], 
		"Hungary":["Balaton", "Balatonfured", "Balatongyorok", "Balatonmariafurdo", "Balatonszemes", "Budapest", "Debrecen", "Gyenesdias", "Gyor", "Heviz", "Heviz-Felsopahok", "Keszthely", "Kisoroszi", "Lispeszentadorjan", "Mohacs", "Nagykanizsa", "Pecs", "Siofok", "Sopron", "Szeged", "Szentendre", "Tarjan", "Tata", "Tornaszentandras", "Zalakaros"], 
		"Iceland":["Akureyri", "Grundarfjordur", "Hvammstangi", "Keflavik", "Kopavogur", "Neskaupstaour", "Njardvik", "Reykjavik", "Siglufjordur"], 
		"India":["Agra", "Ahmedabad", "Ajmer", "Alappuzha", "Alleppey", "Amritsar", "Assagao", "Aurangabad", "Bandhavgarh", "Bangalore", "Bikaner", "Chandigarh", "Chennai", "Cochin", "Dalhousie", "Darjeeling", "Dehradun", "Dharamsala", "Ernakulam", "Faridabad", "Fatehpur Sikri", "Goa", "Greater Noida", "Gurgaon", "Havelock", "Hyderabad", "Indore", "Jaipur", "Jaisalmer", "Jalandhar", "Jammu", "Jodhpur", "Kanchipuram", "Kanha", "Kannur", "Kanpur", "Kausani", "Kerala", "Khajuraho", "Kochi", "Kodaikanal", "Kolkata", "Kollam", "Kottayam", "Kovalam", "Kumarakom", "Kumily", "Leh Ladakh", "Lonavala", "Lucknow", "Madurai", "Mahabalipuram", "Manali", "Mananthavady", "Mandrem", "Mathura", "Mumbai", "Munnar", "Mussoorie", "Nagercoil", "Nagothane", "Nagpur", "Naini Tal", "Nainital", "Nawalgarh", "New Delhi", "North Goa", "Orchha", "Pahalgam", "Palakkad", "Pondicherry", "Poshina", "Pune", "Puri", "Pushkar", "Rishikesh", "Sakleshpur", "Sawai Madhopur", "Shillong", "Shimla", "Shri Mahavir Ji", "Spiti Valley", "Srinagar", "Thanjavur", "Thekkady", "Thrissur", "Tiruchirapalli", "Trivandrum", "Udaipur", "Varanasi", "Varkala", "Vellore", "Wayanad"], 
		"Indonesia":["Bali", "Bandung", "Batam", "Bintan Island", "Cisarua Bogor", "Denpasar", "Jakarta", "Jimbaran", "Karangasem", "Kuta", "Kuta Beach", "Lembang", "Lombok", "Lovina Beach", "Magelang", "Malang", "Mataram", "Mentawai Islands", "Mojokerto", "North Sumatera", "Nusa Dua", "Padang", "Palembang", "Sanur", "Singaraja", "Surabaya", "Tabanan", "Timur Samarinde", "Tulamben", "Ubud", "Yogyakarta"], 
		"Iran":["Tehran"], 
		"Ireland":["Achill", "Adare", "Aran Islands", "Armagh", "Athy", "Ballinasloe", "Ballinderry", "Ballinskelligs", "Ballycastle", "Ballycotton", "Ballyferriter", "Ballymena", "Ballyvaughan", "Baltimore", "Bantry", "Bawnboy", "Beara", "Beaufort", "Belfast", "Borris-in-Ossory", "Boyle", "Buncrana", "Bundoran", "Bushmills", "Cahersiveen", "Carlow", "Cashel", "Castlebar", "Castlerock", "Cavan", "Celbridge", "Clifden", "Cliffs of Moher", "Clonakilty", "Cong", "Connemara", "Cork", "Corofin", "Derry", "Dingle", "Donegal", "Doolin", "Drogheda", "Dublin", "Dundalk", "Dunfanaghy", "Dunmanway", "Ennis", "Enniskillen", "Galway", "Inch", "Kells", "Kenmare", "Kerry", "Kilfenora", "Kilfinane", "Kilkenny", "Killala", "Killaloe", "Killarney", "Killybegs", "Kilrush", "Kinsale", "Kinvara", "Knock", "Lahinch", "Leixlip", "Letterkenny", "Limerick", "Lisburn", "Listowel", "Loughrea", "Louth", "Maynooth", "Midleton", "Mohill", "Mourne Mountains", "Navan", "New Ross", "Newcastle", "Newcastle West", "Newgrange", "Newport", "Omagh", "Portaferry", "Portlaoise", "Portmagee", "Portstewart", "Rathgormack", "Shannon", "Skibbereen", "Sligo", "Swanlinbar", "Tarbert", "The Burren", "Tipperary", "Tivoli", "Tralee", "Trim", "Waterford", "Waterville", "Westmeath", "Westport", "Wexford", "Wicklow", "Youghal"], 
		"Israel":["Afula", "Akko", "Arad", "Arava", "Dead Sea", "Eilat", "Galilee", "Golan Heights", "Haifa", "Jaffa", "Jerusalem", "Mitzpe Ramon", "Nazareth", "Tel Aviv", "Tiberias"], "Italy":["Abano Terme", "Abbadia San Salvatore", "Abbatteggio", "Acireale", "Acquappesa", "Adria", "Agnone Cilento", "Agrigento", "Agropoli", "Alba", "Alberobello", "Alessandria", "Alghero", "Ali Terme", "Amalfi", "Amalfi Coast", "Amantea", "Amelia", "Ancona", "Antholz", "Anzio", "Aosta", "Arbus", "Arce", "Arezzo", "Ascoli Piceno", "Assisi", "Asti", "Azzani - Loiri Porto san Paolo", "Badesi", "Balestrate", "Bari", "Barletta", "Barolo", "Barumini", "Bassano del Grappa", "Bedizzole", "Benevento", "Bergamo", "Bergamo-Foresto Sparso", "Bionaz", "Bisceglie", "Bologna", "Bolzano", "Bormio", "Bosa", "Brembate", "Brescia", "Brindisi", "Buseto Palizzolo", "Cagliari", "Cala Gonone", "Calenzano", "Caltagirone", "Camaiore-Lucca", "Camerana", "Campora San Giovanni", "Cannobio", "Capo d&amp;apos;Orlando", "Capolona", "Capri", "Caprie Val Susa", "Carlentini", "Carmagnola", "Carru", "Casale Monferrato", "Casole d&amp;apos;Elsa", "Cassine", "Cassino", "Castegnato", "Castel di Sangro", "Castel San Giorgio", "Castel San Pietro Romano", "Castelgandolfo", "Castelguelfo di Bologna", "Castellamare del Golfo", "Castellammare del Golfo", "Castellana Grotte", "Castelli Romani", "Castelsardo", "Castelvetrano", "Castiglione D&amp;apos;orcia", "Castiglione del Lago", "Castiglione di Sicilia", "Castione della Presolana", "Catania", "Cattolica", "Cava de&amp;apos; Tirreni", "Cavriglia", "Cefalu", "Cernobbio", "Certaldo", "Cesana Torinese", "Cesano di Roma", "Cesena", "Cetraro", "Chianciano Terme", "Chianti", "Chiarano", "Chieri", "Chieti", "Chioggia", "Cinque Terre", "Citta di Castello", "Citta Sant &amp;apos;Angelo", "Citta&amp;apos; di Castello", "Cittadella", "Civitavecchia", "Civitella Paganico", "Coldrano - Laces", "Colle di Val d&amp;apos;Elsa", "Collecchio", "Como", "Conflenti", "Contrada Monaco di Mezzo", "Controguerra", "Corato", "Corinaldo", "Correggio", "Cortina D&amp;apos; Ampezzo", "Cortina d&amp;apos;Ampezzo", "Cortona", "Cosenza", "Courmayeur", "Cremeno", "Cropani Marina", "Cuneo", "Desenzano del Garda", "Dobbiaco", "Dogato", "Dolceacqua", "Dolo", "Dorgali", "Elba Island", "Enna", "Erice", "Este", "Fano", "Favignana", "Feltre", "Ferentillo", "Fermo", "Ferrara", "Fiesole", "Finale Ligure", "Fiumicino", "Florence", "Foggia", "Foligno", "Fontignano", "Forli", "Frascati", "Frassinoro", "Gabicce Mare", "Gaeta", "Gaiole in Chianti", "Galeazza di Crevalcore", "Gallipoli", "Genoa", "Giardini Naxos", "Giarre", "Gibellina", "Giffoni Valle Piana", "Gioiosa Marea", "Greve in Chianti", "Grosseto", "Grosseto Roccatederighi", "Guardavalle", "Gubbio", "Imola", "Ischia", "Iseo", "Isola Rossa", "Isole Eolie", "Jesi", "L&amp;apos;Aquila", "La Caletta di Siniscola", "La Spezia", "Lake Como", "Lake Garda", "Lake Iseo", "Lake Maggiore", "Lake of Como", "Lamezia Terme", "Lauro", "Lecce", "Lentini", "Lerici", "Levico Terme", "Lido di Camaiore", "Lido di Jesolo", "Limone Piemonte", "Lipari", "Livorno", "Lizzano in Belvedere", "Locri", "Loreto", "Lovere", "Lucca", "Macerata", "Magione", "Maglie", "Maida", "Malpensa", "Mantova", "Maratea", "Marina di Massa", "Marina di Ragusa", "Marotta di Fano", "Marsala", "Massa Lubrense", "Massarella", "Matera", "Mazara del Vallo", "Medesano", "Melazzo", "Melito Porto Salvo", "Merano", "Mercato San Severino", "Messina", "Mestre", "Meta di Sorrento", "Miane", "Milan", "Milazzo", "Misano Adriatico", "Modena", "Modica", "Mogliano Veneto", "Monopoli", "Montagnana", "Montalcino", "Montecatini Terme", "Montecatini Val di Cecina", "Montecchio Emilia", "Montefiascone", "Montelparo", "Montemerano", "Montepulciano", "Montepulciano Stazione", "Monterotondo", "Montese", "Montesilvano", "Montespertoli", "Monzuno", "Muravera", "Naples", "Naples-Sant&amp;apos;Antimo", "Nicolosi", "Nocera Umbra", "Norcia", "Noto", "Novara", "Numana", "Nuoro", "Ognina", "Olbia", "Olevano Romano", "Olmedo", "Oria", "Oristano", "Orosei", "Orta San Giulio", "Ortona", "Orvieto", "Osimo", "Ospedaletti", "Ostia Antica", "Ostuni", "Otranto", "Padua", "Paestum", "Palaia", "Palermo", "Palestrina", "Palinuro", "Palmadula", "Paola", "Parma", "Perugia", "Pesaro", "Pescara", "Peschiera del Garda", "Pescosolido", "Petralia Sottana", "Pettenasco", "Piano di Sorrento", "Piazza Armerina", "Pienza", "Pietralunga", "Pietrasanta", "Piombino", "Pisa", "Pistoia", "Ploaghe-Sassari", "Poggibonsi", "Pontedera", "Pordenone", "Porto Cervo OT", "Porto Cesareo", "Porto Rotondo", "Porto Torres", "Portofino", "Portofino-Leivi", "Posada", "Positano", "Possagno", "Postiglione", "Pozzallo", "Pragelato", "Praia a Mare", "Prato", "Procida Island", "Pula", "Quartu Sant&amp;apos;Elena", "Quiliano", "Racalmuto-Agrigento", "Ragusa", "Ranzanico", "Rapolla", "Ravenna", "Reggello", "Reggio Calabria", "Reggio Emilia", "Riccione", "Ricco del Golfo", "Rimini", "Riva del Garda", "Rocca di Papa", "Rodi Garganico", "Rome", "Rome Ciampino", "Roseto Degli Abruzzi", "Rosolina", "Rovereto", "S.Agata Sui Due Golfi", "Saint Vincent", "Salerno", "Salerno-Raito di Vietri Sul Mare", "Salice Terme", "Salsomaggiore Terme", "Salve", "San Benedetto Del Tronto", "San Casciano in Val di Pesa", "San Fedele D&amp;apos;Intelvi", "San Felice Circeo", "San Gimignano", "San Giovanni in Fiore", "San Giovanni Rotondo", "San Giuliano Terme", "San Marino", "San Martino di Castrozza", "San Pantaleo", "San Pellegrino", "San Remo", "San Severino Lucano", "San Teodoro", "San Venanzo", "San Vincenzo", "San Vito", "San Vito Chietino", "San Vito Lo Capo", "San Vito sullo Ionio", "Sant Agata Militello", "Sant Agnello", "Sant&amp;apos; Antioco", "Santa Cristina", "Santa Maria di Leuca", "Santa Teresa di Gallura", "Sapri", "Sarteano", "Sassari", "Sassetta", "Saturnia", "Savigno", "Savona", "Scalea", "Sciacca", "Scilla", "Scopello", "Segesta", "Seiano of Sorrento", "Selinunte", "Senigallia", "Sermoneta", "Serravalle Pistoiese", "Sesto Fiorentino", "Settimo Torinese", "Siena", "Siena Sovicille", "Silvi Marina", "Sinalunga", "Siniscola", "Smerillo", "Soave", "Solcio di Lesa", "Sorrento", "Sottomarina di Chioggia", "Sovicille", "Specchia", "Spello", "Spoleto", "St Antonio di Santadi", "Stintino", "Stresa", "Stromboli", "Stroncone", "Subbiano", "Sulmona", "Susa", "Syracuse", "Taormina", "Tavarnelle Val di Pesa", "Tempio Pausania", "Termini Imerese", "Terricciola", "Tivoli", "Todi", "Torraca", "Torre Annunziata", "Torre dei Corsari", "Tortoli", "Trani", "Trapani", "Trecase", "Trecastagni", "Trento", "Trevi", "Treviso", "Trieste", "Tropea", "Turin", "Tuscania", "Udine", "Urbino", "Urbisaglia", "Uta", "Valledoria", "Valmontone", "Vasto Marina", "Venice", "Venice Borgoricco", "Venice Chioggia", "Venice Dolo", "Venice Lido", "Venice Malcontenta", "Venice Mestre", "Venice Mira", "Venice Mirano", "Venice Mogliano Veneto", "Venice Tessera", "Ventimiglia", "Verona", "Viareggio", "Vicenza", "Vico Equense", "Vieste", "Vigevano", "Villammare", "Viterbo", "Vittorio Veneto", "Vogogna", "Volterra", "Zafferana Etnea"], 
		"Jamaica":["Green Island", "Kingston", "Koblenz", "Montego Bay", "Negril", "Port Antonio", "Port Maria", "Priory", "St Ann&amp;apos;s Bay", "St. Ann Runaway Bay", "St. Mary", "Treasure Beach"], 
		"Japan":["Aomori", "Beppu City", "Beppu Spa Resort", "Fukui", "Fukuoka City", "Fukushima Prefecture", "Gifu Gero Spa", "Gifu Prefecture", "Gunma", "Hakodate", "Hakone National Park", "Hida Takayama", "Hiroshima", "Hitachi", "Hokkaido", "Hokkaido Chitose", "Ise-shima National Park", "Izu Peninsula", "Izumi", "Kagawa Pref", "Kagoshima", "Kanazawa", "Kansai International Airport", "Kinosaki Spa Hyogo Pref.", "Kinugawa Spa (Nikko National Park)", "Kitakyushu city", "Kobe", "Kochi", "Kumamoto Pref", "Kumamoto-shi", "Kurashiki city", "Kyoto", "Matsuyama Dogo Spa", "Minakami", "Mount Fuji", "Myoko Niigata Prefecture", "Nagano", "Nagano (Hakuba)", "Nagano(Monkey Park)", "Nagasaki", "Nagoya", "Nara", "Nara (Sakurai city)", "Narita Airport", "Narita City", "Nasu", "Nikko", "Okinawa", "Okinawa (Miyakojima)", "Osaka", "Otaru", "Sagamihara", "Sapporo", "Sendai", "Shimonoseki-shi", "Shirahama Spa Wakayama pref", "Shirakawago Gifu", "Shizuoka", "Sukagawa", "Tanabe", "Tokushima Pref", "Tokyo", "Toyama Pref", "Ureshino Spa", "Volcano Aso", "Yokohama", "Yuasa"], 
		"Jordan":["Amman", "Aqaba", "Dana City", "Madaba", "Petra"], 
		"Kazakhstan":["Almaty", "Karaganda"], 
		"Kenya":["Gede", "Lamu", "Malaba", "Mombasa", "Nairobi", "Nyahururu"], 
		"Kosovo":["Pristina"], 
		"Kyrgyzstan":["Bishkek"], 
		"Laos":["Luang Prabang", "Muang Ngoi Neua", "Phonsavan", "Vang Vieng", "Vientiane"], 
		"Latvia":["Jurmala", "Liepaja", "Riga", "Sigulda", "Tukums"], 
		"Lebanon":["Beirut", "Sidon"], 
		"Lesotho":["Malealea"], 
		"Liechtenstein":["Schaan"], 
		"Lithuania":["Birstonas", "Druskininkai", "Kaunas", "Klaipeda", "Palanga", "Vilnius"], 
		"Luxembourg":["Beaufort", "Bourglinster", "Echternach", "Hollenfels", "Larochette", "Lultzhausen", "Luxembourg City", "Schengen", "Vianden", "Wiltz"], 
		"Macau":["Macau", "Macau (Macao)"], 
		"Macedonia":["Gevgelija", "Ohrid", "Skopje"], 
		"Madagascar":["Antananarivo", "Majunga"], 
		"Malawi":["Blantyre", "Lilongwe", "Monkey Bay", "Nkhata Bay"], 
		"Malaysia":["Alor Setar", "Bario", "Bukit Tinggi", "Ipoh", "Jerantut", "Johor", "Johor Bahru", "Kota Belud", "Kota Bharu", "Kota Kinabalu", "Kota Tinggi", "Kuala Lumpur", "Kuala Terengganu", "Kuantan", "Kuching", "Kulai", "Labuan", "Langkawi", "Lumut", "Melaka", "Miri", "Penang", "Petaling Jaya", "Ranau", "Sandakan", "Semporna", "Sepang", "Shah Alam", "Sibu Island", "Tanah Rata"], 
		"Malta":["Bugibba", "Gozo", "Gzira", "Marsalforn", "Mellieha", "Qawra", "Sliema", "St. Julians", "Tarxien", "Valletta", "Victoria", "Xlendi"], 
		"Martinique":["Fort-de-France"], 
		"Mauritius":["Belle Mare", "Black River", "Blue Bay", "Flic En Flac", "Grand Bay", "La Gaulette", "Le Morne", "Mahebourg", "Mont Choisy", "Pereybere", "Port Louis", "Quatre Bornes", "Souillac", "Tombeau Bay", "Trou Aux Biches", "Wolmar"], 
		"Mexico":["Acapulco", "Actopan", "Aguascalientes", "Azoyu", "Boca del Rio", "Cabo San Lucas", "Calderitas", "Campeche", "Cancun", "Celestun", "Chapala", "Chetumal", "Chichen Itza", "Chihuahua", "Coatepec", "Cordoba", "Cozumel", "Cuernavaca", "Cunduacan", "Ensenada", "Guadalajara", "Guanajuato", "Holbox Island", "Isla Mujeres", "Mahahual", "Manzanillo", "Mazatlan", "Merida", "Mexico City", "Monterrey", "Morelia", "Oaxaca", "Palenque", "Papantla", "Playa del Carmen", "Puebla", "Puerto Angel", "Puerto Escondido", "Puerto Vallarta", "Queretaro", "San Carlos", "San Cristobal de las Casas", "San Luis Potosi", "San Miguel de Allende", "Taxco", "Tijuana", "Tlacotalpan", "Tulum", "Tuxtla Gutierrez", "Veracruz", "Villa Victoria", "Villahermosa", "Xalapa", "Zacatecas", "Zihuatanejo"], 
		"Micronesia":["Lelu"], 
		"Moldova":["Chisinau", "Ivancea", "Krasnaya Besarabka", "Lalova", "Tiraspol"], 
		"Monaco":["Monaco", "Monte Carlo"], 
		"Mongolia":["Kharkhorin", "Ulaanbaatar"], 
		"Montenegro":["Bar", "Berane", "Budva", "Kotor", "Podgorica", "Tivat", "Ulcinj"], 
		"Montserrat":["Montserrat"], 
		"Morocco":["Agadir", "Assilah", "Atlas Mountains", "Casablanca", "Chaouen", "Essaouira", "Fez", "Imarigha", "Imelghas", "Imlil", "Marrakech", "Meknes", "Merzouga", "Rabat", "Tangier", "Taroudant", "Zagora"], 
		"Mozambique":["Inhaca Island", "Maputo", "Vilanculos"], 
		"Myanmar":["Yangon"], 
		"Namibia":["Maltahohe", "Otjiwarongo", "Swakopmund", "Windhoek"], 
		"Nepal":["Bhaktapur", "Chitwan", "Kathmandu", "Pokhara"], 
		"Netherlands":["Aarle-Rixtel", "Afalst", "Amsterdam", "Apeldoorn", "Arnhem", "Asten-Eindhoven", "Bakkum", "Bergambacht", "Bergen op Zoom", "Delft", "Den Burg", "Domburg", "Dordrecht", "Eext", "Egmond", "Etten-Leur", "Haarlem", "Heemskerk", "Helmond", "Hilversum", "Hollum-Ameland", "Katwijk", "Maastricht", "Noordwijk", "Purmerend", "Rotterdam", "Soest", "The Hague", "Utrecht", "Valkenswaard", "West -Terschelling", "Wijhe", "Zwanenburg"], 
		"Netherlands Antilles":["Banda Abou", "Bonaire", "Saba", "St. Maarten"], 
		"New Zealand":["Akaroa", "Arrowtown", "Arthurs Pass", "Auckland", "Blenheim", "Carterton", "Charleston", "Christchurch", "Coromandel", "Dunedin", "Egmont National Park", "Fox Glacier", "Franz Josef", "Gisborne", "Golden Bay", "Greymouth", "Hamilton", "Hawera", "Hokitika", "Invercargill", "Kaikoura", "Kaitaia", "Kapiti Coast", "Karikari Peninsula", "KeriKeri", "Lake Tekapo", "Marlborough Sounds", "Martinborough", "Matauri Bay", "Methven", "Mokau", "Mount Maunganui", "Mt Cook", "Napier", "National Park", "Nelson", "New Plymouth", "Ninety Mile Beach", "Oamaru", "Ohakune", "Opoutere", "Otago", "Paihia", "Picton", "Queenstown", "Raetihi", "Raglan", "Rotorua", "Springfield", "Tairua", "Taupo", "Tauranga", "Te Anau", "Thames", "Tongariro National Park", "Turangi", "Twizel", "Waitomo", "Wanaka", "Wanganui", "Wellington", "Whakatane", "Whangarei", "Whitianga"], 
		"Nicaragua":["Granada", "Jinotega", "Leon", "Managua", "Pochomil", "Puerto Sandino", "San Juan del Sur"], 
		"Nigeria":["Jos"], 
		"Northern Ireland":["Armagh", "Ballycastle", "Ballymena", "Belfast", "Bushmills", "Castlerock", "Derry", "Enniskillen", "Lisburn", "Mourne Mountains", "Newcastle", "Omagh", "Portaferry", "Portstewart"], 
		"Norway":["Alesund", "Bergen", "Bo i Telemark", "Dombas", "Hamar", "Hellesylt", "Hitra", "Honningsvag", "Karasjok", "Kopervik", "Lillehammer", "Oslo", "Sognefjord", "Stryn", "Trondheim", "Ulsteinvik", "Voss"], 
		"Oman":["Muscat", "Salalah"], 
		"Pakistan":["Islamabad", "Lahore"], 
		"Palestine":["Bethlehem"], 
		"Panama":["Bocas del Toro", "Boquete", "Chitre", "Colon", "David City", "Fortuna Forest Reserve", "Las Nubes", "Panama City", "Penonome", "Playa Las Lajas", "Puerto Lindo", "Santa Rita Arriba", "Santiago de Veraguas", "Taboga Island", "Volcan"], 
		"Papua New Guinea":["Alotau", "Bauwame Village", "Gariva Village", "Jebo Village", "Kofure Village", "Orotoaba Village", "Port Moresby", "Siu Village", "Tufi"], 
		"Paraguay":["Altos", "Asuncion", "San Bernardino"], 
		"Peru":["Arequipa", "Cusco", "Huacachina", "Huaraz", "Ica", "Iquitos", "Juliaca", "Lima", "Lima-Chaclacayo", "Machu Picchu", "Madre de Dios", "Mancora", "Nazca", "Pisco", "Piura", "Puerto Maldonado", "Puno", "Tarma", "Trujillo", "Urubamba", "Valle Sagrado"], 
		"Philippines":["Angeles", "Bauang", "Bohol", "Bontoc", "Boracay Island", "Calatagan", "Camiguin", "Carabao Island", "Cavite", "Cebu", "Dapitan City", "Dauin", "Davao City", "Dipolog", "Dumaguete", "Hinunangan", "Kalibo", "Laoag City", "Larena  Sandugan Beach", "Makati", "Manila", "Puerto Galera", "Puerto Princesa City", "Subic Bay", "Tacloban", "Tagaytay"], 
		"Poland":["Bielsko-Biala", "Bydgoszcz", "Ciechocinek", "Gdansk", "Grodzisko Dolne", "Grzybowo", "Kalisz Kaszubski", "Karpacz", "Kolobrzeg", "Krakow", "Leba", "Lodz", "Lupkow", "Malbork", "Mizerna", "Nowe", "Nysa", "Polanica Zdroj", "Poznan", "Sobacz", "Torun", "Warsaw", "Wieliczka", "Wroclaw", "Zakopane"], 
		"Portugal":["Agua de Moura", "Albufeira", "Alcanena", "Alenquer", "Altura", "Apulia", "Batalha", "Bemposta", "Braga", "Caldas da Rainha", "Canico", "Carvoeiro", "Cascais", "Castelo de Vide", "Coimbra", "Constancia", "Costa da Caparica", "Curia", "Ericeira", "Esposende", "Evora", "Faro", "Fatima", "Figueira da Foz", "Funchal", "Fundao", "Guarda", "Lagos", "Lisbon", "Lisbon-Queluz", "Loureiro de Sande", "Madeira Island", "Marinha Grande", "Miranda do Douro", "Monchique", "Nazare", "Obidos", "Peniche", "Peso da Regua", "Pinhao", "Ponta Delgada", "Porches-Algarbe", "Portimao", "Porto", "Porto-Villa do Conde", "Povoa de Varzim", "Quarteira", "Sagres", "Santa Clara a Velha", "Santa Clara-a-Velha", "Sao Vicente", "Serra D&amp;apos;el Rei-Peniche", "Setubal", "Sintra", "St Antonio da Caparica", "Tabua", "Tavira", "Torres Vedras", "Viana do Castelo", "Vieira de Leiria", "Vieira do Minho", "Vila de Prado", "Vila Nova de Cerveira", "Vila Nova de Gaia", "Vilamoura-Loule", "Viseu"], 
		"Puerto Rico":["Culebra", "Lajas", "Patillas", "Rincon", "San Juan"], 
		"Qatar":["Doha"], 
		"Reunion":["Entre Deux", "Saint Denis", "Salazie", "St Gilles les Hauts"], 
		"Romania":["2 Mai", "Alba Iulia", "Baile Herculane", "Bran", "Brasov", "Bucharest", "Campulung Moldovenesc", "Caransebes", "Cluj-Napoca", "Constanta", "Danube Delta", "Gura Humorului", "Maramures", "Nasaud", "Neptun", "Oradea", "Piatra-Neamt", "Pitesti", "Predeal", "Rosia Montana", "Salciua", "Sibiu", "Sighetu Marmatiei", "Sighisoara", "Slanic", "Suceava", "Targu Mures", "Targu Ocna", "Techirghiol", "Timisoara", "Vama"], 
		"Russia":["Arkaim", "Irkutsk", "Kazan", "Kirillov", "Moscow", "Olkhon Island", "Petrozavodsk", "Severobaikalsk", "Slyudyanka", "St Petersburg", "Suzdal", "Ulan Ude", "Vladivostok", "Yekaterinburg"], 
		"Saint Lucia":["Castries", "Choiseul", "Gros Islet", "Mamiku", "Micoud", "Soufriere", "Vieux Fort"], 
		"Saint Vincent And The Grenadines":["Kingstown"], 
		"Samoa":["Apia"], 
		"Scotland":["Aberdeen", "Arbroath", "Aviemore", "Ayr", "Ballater", "Banff", "Ben Lomond", "Braemar", "Carbisdale", "Carrbridge", "Crianlarich", "Crieff", "Dundee", "Durness", "Edinburgh", "Falkirk", "Falkland", "Fort William", "Gairloch", "Glasgow", "Glencoe", "Grantown-on-Spey", "Helmsdale", "Inverness", "Irvine", "Isle of Arran", "Isle of Islay", "Isle of Lewis", "Isle of Skye", "Killin", "Kingussie", "Kirkwall", "Kyle of Lochalsh", "Lairg", "Loch Lomond", "Loch Ness", "Melrose", "New Lanark", "Newton Stewart", "Newtonmore", "Oban", "Orkney Islands", "Perth", "Pitlochry", "Prestwick", "Ratagan", "Shetland", "St Andrews", "Stirling", "Strathpeffer", "Thurso", "Tobermory", "Tomintoul", "Tongue", "Torridon", "Ullapool", "Yarrowford"],
		"Senegal":["Bignona", "Dakar", "Mbour", "Ziguinchor"], 
		"Serbia":["Bajina Basta", "Belgrade", "Cacak", "Kragujevac", "Kraljevo", "Krusevac", "Negotin", "Nis", "Novi Pazar", "Novi Sad", "Sombor", "Sremska Mitrovica", "Subotica", "Uzice", "Zajecar", "Zrenjanin"], 
		"Seychelles":["Mahe Island", "Praslin Island"], 
		"Sierra Leone":["Lungi"], 
		"Singapore":["Singapore"], 
		"Slovakia":["Banska Bystrica", "Banska Stiavnica", "Bojnice", "Bratislava", "Dobsina", "Donovaly", "High Tatras", "Hrabusice", "Kosice", "Levoca", "Liptovsky Mikulas", "Poprad", "Prosiek", "Ruzemberok", "Trnava", "Zdiar"], 
		"Slovenia":["Bled", "Bohinj", "Bovec", "Celje", "Cerklje", "Idrija", "Izola", "Kobarid", "Koper", "Kranj", "Kranjska Gora", "Ljubljana", "Ljubno ob Savinji", "Logatec", "Maribor", "Novo Mesto", "Piran", "Podcetrtek", "Portoroz", "Postojna", "Zalec"], 
		"South Africa":["Addo", "Bantry Bay", "Bethlehem", "Betty&amp;apos;s Bay", "Cape Agulhas", "Cape Town", "Cederberg Concervancy", "Cintsa", "Coffee Bay", "Colesberg", "Drakensberg", "Durban", "East London", "Elandsbay", "Eshowe", "Franschhoek", "Gansbaai", "Garden Route", "George", "Gonubie", "Gordons Bay", "Graaff-Reinet", "Grahamstown", "Graskop", "Greyton", "Harkerville", "Hartbeespoort", "Hazyview", "Hermanus", "Hluhluwe", "Hogsback", "Jeffreys Bay", "Johannesburg", "Kempton Park", "Kestell", "Knysna", "Kruger Park", "Ladismith", "Ladysmith", "Leydsdorp", "Malelane", "Margate", "Montagu", "Mossel Bay", "Mtubatuba", "Muizenberg", "Napier", "Nelspruit", "Nieu Bethesda", "Oudtshoorn", "Phalaborwa", "Pietermaritzburg", "Plettenberg Bay", "Port Alfred", "Port Edward", "Port Elizabeth", "Port Nolloth", "Port St Johns", "Pretoria", "Riebeek West", "Robertson", "Roodepoort", "Sabie", "Saldanha Bay", "Simonstown", "Somerset West", "Southbroom", "St Francis Bay", "St Lucia", "Stellenbosch", "Storms River", "Strand", "Studtis Baviaanskloof", "Swellendam", "Tsitsikamma", "Tulbagh", "Tzaneen", "Umkomaas", "Upington", "Welkom", "Wilderness", "Winelands, Stellenbosch", "Worcester"], 
		"South Korea":["Busan", "Gyeong Gi Do", "Gyeong-ju", "Incheon", "Jeju Island", "Kangwon-do", "Seoul"], 
		"Spain":["A Capela", "Abanto-Zierbena", "Ainsa", "Alcala de Henares", "Alcala la Real", "Alcoceber", "Alcorisa", "Alfaz del Pi", "Alhama de Granada", "Alhama de Murcia", "Alicante", "Almeria", "Almogia", "Almunecar", "Alora", "Altea", "Antequera", "Arcos de la Frontera", "Ardales", "Arta", "Avila", "Aviles", "Ayamonte", "Badajoz", "Badalona", "Baena", "Baeza", "Banyalbufar", "Baqueira - Salardu", "Barcelona", "Baza", "Benalmadena", "Benicarlo", "Benicassim", "Benidorm", "Berzocana", "Bilbao", "Binibona", "Boadilla del Monte", "Bocairent", "Boceguillas", "Burgos", "Caceres", "Cadiz", "Cala Ratjada", "Calella", "Calpe", "Cambrils", "Campo de Criptana", "Campos", "Carmona", "Cartagena", "Castellbisbal", "Castelldefels", "Cazalla de la Sierra", "Chipiona", "Chucena", "Ciudad Real", "Conil de la Frontera", "Consuegra", "Cordoba", "Cudillero", "Denia", "El Gastor", "El Prat de Llobregat", "El Puerto de Santa Maria", "Empuriabrava", "Estepona", "Formentera", "Frigiliana", "Fuengirola", "Fuerteventura", "Gaucin", "Girona", "Gran Canaria Is. (Canary Is)", "Granada", "Guardamar del Segura", "Gurrea De Gallego(Huesca)", "Huescar", "Ibiza", "Islantilla", "Istan", "Jaca", "Jaen", "Jerez de la Frontera", "Jimena de la frontera", "La Coruna", "La Gomera", "La Seu d Urgell", "Lanjaron", "Lanjaron-Alpujarra", "Las Cabezas", "Las Palmas", "Las Palmas de Gran Canaria", "Leon", "Llanes Asturias", "Lleida", "Lles de Cerdanya", "Lloret de Mar", "Logrono", "Los Alcazares", "Los Canos de Meca", "Lugo", "Madrid", "Malaga", "Mallorca", "Manilva", "Marbella", "Margarida-Planes", "Mataro", "Mazaricos", "Medina del Campo", "Menorca", "Mijas", "Mino - A Coruna", "Monistrol de Montserrat", "Monreal del Campo", "Montefrio", "Motril", "Mundaka", "Murcia", "Muro de Alcoy - Alicante", "Navajas", "Nerja", "Noriega-Asturias", "Ocana", "Oliva", "Orba", "Osuna", "Oviedo", "Palencia", "Palma de Mallorca", "Palma del Rio", "Pamplona", "Peniscola", "Picos de Europa", "Pineda de Mar", "Platja d`Aro", "Playa del Ingles", "Pollensa", "Polopos", "Ponferrada", "Porreres", "Port de la Selva", "Port de Soller", "Portugalete", "Potes", "Priego De Cordoba-Cordoba", "Ronda", "Roses", "Rota", "Sabiote", "Salamanca", "Salobrena", "Salou", "San Antonio", "San Clemente", "San Juan Alicante", "San Sebastian", "San Vicente de la Barquera", "Sant Feliu de Guixols", "Santa Lucia de Tirajana", "Santa Perpetua de Mogoda", "Santander", "Santiago de Compostela", "Santiago de la Ribera", "Segovia", "Segura de la Sierra", "Seron", "Seville", "Sitges", "Tarifa", "Tarragona", "Tenerife", "Toledo", "Torre del mar", "Torrelavega", "Torremolinos", "Torrevieja", "Torroella de Fluvia", "Tortosa", "Torvizcon", "Tossa de Mar", "Trevelez", "Trujillo", "Ubeda", "Valencia", "Valencia de Alcantara", "Valencia-Yatova", "Vall d Ebo", "Valladolid", "Valls", "Vielha", "Vigo", "Villanueva de Guadamejud", "Vinaros", "Vitoria", "Xativa", "Zaragoza"], 
		"Sri Lanka":["Adam&amp;apos;s Peak", "Ahangama", "Ambalangoda", "Anuradhapura", "Colombo", "Galle", "Hikkaduwa", "Kandy", "Negombo", "Tangalle", "Unawatuna"], 
		"Swaziland":["Lobamba", "Mbabane"], 
		"Sweden":["Arjang", "Broddetorp", "Degerhamn", "Gafsele", "Gnarp", "Gothenburg", "Hallefors", "Helsingborg", "Horby", "Kvillsfors", "Lakene", "Malmo", "Nykoping", "Salbohed", "Solna", "Stockholm", "Stromsbruk", "Svanstein", "Tarnaby", "Uppsala", "Vasteras", "Vastervik"], 
		"Switzerland":["Adelboden", "Aeschi", "Aigle", "Alpnachstad", "Andermatt", "Arienz", "Arosa", "Aurigeno", "Ausserberg", "Avenches", "Basel", "Beckenried", "Bern", "Bevaix", "Biel", "Biel-Bienne", "Bivio", "Boltigen", "Boudevilliers", "Braunwald", "Brienz", "Brig", "Bulle", "Celerina", "Chateau d", "Chateau d&amp;apos;oex", "Cheseaux", "Cointrin", "Cortaillod", "Crans-Montana", "Cudrefin", "Davos", "Davos Platz", "Delemont", "Eschenz", "Fiesch", "Fluelen", "Fribourg", "Geneva", "Giswil", "Goldiwil", "Grenchen", "Grindelwald", "Gryon", "Gstaad", "Gsteigwiler", "Heiligenschwendi", "Hergiswil", "Interlaken", "Iseltwald", "Kandersteg", "Kiental", "Kilchberg", "L&amp;apos;Etivaz", "La Chaux-de-Fonds", "La Lecherette", "Lausanne", "Lauterbrunnen", "Le Chable", "Les Brenets", "Locarno", "Lucerne", "Maloja", "Meggen", "Meiringen", "Montana", "Montreux", "Muntelier", "Murren", "Naters", "Neuchatel", "Nods", "Olivone", "Pontresina", "Portalban", "Rohr Aarau", "Romainm&amp;#65533;tier", "Romanel", "S-chanf", "Saanen", "Saas-Fee", "Saas-Grund", "Saillon", "Samedan", "Schoenried", "Sedrun", "Sent", "Sierre", "St. Moritz", "Stein am Rhein", "Vevey", "Wengen", "Wilderswil", "Wilderswil/ Interlaken", "Winterthur", "Yverdon-les-Bains", "Zermatt", "Zug", "Zuoz", "Zurich"], 
		"Syria":["Aleppo", "Damascus", "Palmyra"], 
		"Taiwan":["Hsinchu", "Hualien", "Ilan", "Kaohsiung", "Keng Ting", "Lienkiang", "Taichung", "Taipei", "Taitung"], 
		"Tanzania":["Arusha", "Dar es Salaam", "Jambiani", "Kilimanjaro", "Moshi", "Nungwi", "Zanzibar"], 
		"Thailand":["Ao Nang", "Aranyaprathet", "Ayutthaya", "Bangkok", "Buriram", "Cha-Am", "Chiang Khong", "Chiang Mai", "Chiang Rai", "Chumphon", "Hua Hin", "Kaengkrachan", "Kamphaeng Phet", "Kanchanaburi", "Karon Beach", "Kata Beach Phuket Thailand", "Khao Lak", "Khon Kaen", "Koh Chang", "Koh Kood", "Koh Lanta", "Koh Pha-ngan", "Koh Phangan", "Koh Phi Phi", "Koh Samui", "Koh Tao", "Kohlan Island", "Krabi", "Lampang", "Maehongson", "Muang", "Mukdahan", "Nai Yang", "Nang Rong", "Patong Beach", "Pattaya", "Petchburi", "Phang Nga", "Phitsanulok", "Phuket", "Prachuap Khiri Khan", "Ranong", "Ratchaburi", "Rayong", "Sattahip", "Sukhothai", "Surin", "Trat", "Ubon Ratchathani", "Udon Thani", "Umphang", "Wang Nam Yen"], 
		"Tonga":["Nuku&amp;apos;alofa", "Vava&amp;apos;u"], 
		"Trinidad and Tobago":["Buccoo Point", "Crown Point", "Diego Martin", "Englishman&amp;apos;s Bay", "Maracas Bay", "Maraval", "Port of Spain", "Sangre Grande", "Santa Cruz", "Scarborough", "St. Ann&amp;apos;s"], 
		"Tunisia":["Djerba", "Douz", "Gabes", "Hammamet", "Mahdia", "Matmata", "Monastir", "Nabeul", "Qairouan", "Sfax", "Sousse", "Tabarqa", "Tataouine", "Tunis", "Zarzis"], 
		"Turkey":["Alanya", "Altinkum", "Ankara", "Antalya", "Ayvalik", "Bergama", "Bodrum", "Canakkale", "Cavusin", "Cirali", "Dalyan", "Datca", "Duzce", "Eceabat", "Egirdir", "Fethiye", "Goreme", "Istanbul", "Izmir", "Karabuk", "Kas", "Kemer", "Koycegiz", "Kusadasi", "Marmaris", "Mugla", "Nevsehir", "Nigde", "Oludeniz Fethiye", "Olympos", "Pamukkale", "Patara", "Sakarya", "Selcuk", "Side", "Uchisar", "Urgup"], 
		"UK":["Aberdeen", "Abersoch", "Arbroath", "Armagh", "Arundel", "Ashby de la Zouch", "Aviemore", "Ayr", "Ballater", "Ballycastle", "Ballymena", "Banff", "Bath", "Belfast", "Ben Lomond", "Berwick on Tweed", "Betws-y-Coed", "Birmingham", "Blackpool", "Bournemouth", "Bradford", "Braemar", "Brecon", "Brighton", "Bristol", "Broadstairs", "Bude", "Burnham Deepdale", "Bushmills", "Caernarfon", "Cambridge", "Canterbury", "Carbisdale", "Cardiff", "Carmarthen", "Carrbridge", "Castlerock", "Ceredigion", "Chepstow", "Chester", "Colne", "Conwy", "Cornwall", "Cotswolds", "Coventry", "Crianlarich", "Crieff", "Derby", "Derry", "Doncaster", "Dundee", "Durham", "Durness", "East Sussex", "Edinburgh", "Enniskillen", "Epworth", "Exeter", "Exford", "Falkirk", "Falkland", "Fishguard", "Fort William", "Gairloch", "Gateshead", "Gatwick", "Glasgow", "Glencoe", "Gloucestershire", "Grantown-on-Spey", "Grouville", "Gwynedd", "Harlow", "Hastings", "Hawes", "Haworth", "Heathrow", "Helmsdale", "Hexham", "High Wycombe", "Hounslow", "Inverness", "Irvine", "Isle of Arran", "Isle of Islay", "Isle of Lewis", "Isle of Skye", "Kent", "Kidderminster", "Killin", "Kingussie", "Kirkwall", "Kyle of Lochalsh", "Lairg", "Lake District", "Ledbury", "Lee Valley - Stansted Airport", "Leeds", "Lisburn", "Liverpool", "Llandudno", "Loch Lomond", "Loch Ness", "London", "Loughborough", "Louth", "Luton", "Manchester", "Marlow", "Melrose", "Middlesbrough", "Middlesex", "Mourne Mountains", "New Lanark", "Newcastle", "Newcastle upon Tyne", "Newquay", "Newton Stewart", "Newtonmore", "North Yorkshire", "Nottingham", "Oakham", "Oban", "Omagh", "Orkney Islands", "Oxford", "Oxfordshire", "Penrith", "Penzance", "Perth", "Peterborough", "Pitlochry", "Plymouth", "Portaferry", "Porthmadog", "Portsmouth", "Portstewart", "Preston", "Prestwick", "Ratagan", "Reading", "Romsey", "Salisbury", "Settle", "Sheffield", "Shetland", "Southampton", "St Andrews", "St Ives", "St.Helier", "Stansted", "Stevenage", "Stirling", "Stockton on Tees", "Stratford-upon-Avon", "Strathpeffer", "Surrey", "Swansea", "Tetbury", "Thurso", "Tobermory", "Tomintoul", "Tongue", "Torquay", "Torridon", "Trawsfynydd", "Ullapool", "Warwick", "Whitby", "Windermere", "Yarrowford", "York"], 
		"US Virgin Islands":["St. John"], 
		"USA":["Aberdeen", "Ahwahnee", "Albany", "Albuquerque", "Anaheim", "Anchorage", "Antioch", "Arroyo Seco", "Asheville", "Ashland", "Atlanta", "Austin", "Baltimore", "Bar Harbor", "Bennington", "Berkeley", "Big Bear Lake", "Bingen", "Blue Hill", "Bonifay", "Boston", "Branson", "Breckenridge", "Brigham City", "Buena Park", "Buffalo", "Burbank", "Cameron Park", "Cape Cod", "Carmel Valley", "Catskill", "Charleston", "Chicago", "Clermont", "Clewiston", "Columbus", "Concord", "Conway", "Dallas", "Davenport", "De Pere", "Death Valley", "Denver", "Detroit", "Durango", "Durham", "El Paso", "Elmhurst", "Encinitas", "Englewood", "Estes Park", "Eugene", "Fairbanks", "Fayetteville", "Flagstaff", "Florida City", "Fort Lauderdale", "Fort Myers", "Fountain Hills", "Fowler", "Fullerton", "Gilroy", "Glenwood Springs", "Gorham", "Grants Pass", "Great Falls", "Hamilton", "Hanalei", "Hartford", "Harvard", "Hawaii&amp;apos;s Big Island", "Homer", "Houston", "Hyder", "Indianapolis", "Jamesport", "Jersey City", "Kennebunkport", "Killington", "Kissimmee", "Klamath", "Knoxville", "Lackawaxen", "Lafayette LA", "Lake Tahoe", "Las Vegas", "Lincoln", "Littleton", "Logan", "Los Angeles", "Ludlow", "Macon", "Madison", "Makaha", "Mammoth Lakes", "Mariposa", "Martha&amp;apos;s Vineyard", "Martinez", "Maryland", "Maui", "McCarthy", "Miami", "Middletown", "Midpines", "Milledgeville", "Minerva", "Minneapolis", "Montara", "Monterey", "Montgomery", "Morgantown", "Mount Pleasant", "Mt.Rainier", "Murray", "Nampa", "Nantucket", "Naples", "Nashville", "Nashville IN", "New Orleans", "New York", "Newark", "Newcastle", "Newport RI", "Newport WA", "Newry", "Niagara Falls", "Norfolk", "North Chelmsford", "Northeast Harbor, ME", "Oahu", "Oakley", "Orlando", "Palm Beach", "Palm Springs", "Parthenon", "Peru", "Pescadero", "Petersburg AK", "Philadelphia", "Phoenix", "Pigeon Forge", "Plattsburgh", "Point Reyes Station", "Portales", "Portland", "Poughkeepsie", "Putney", "Redding", "Rehoboth", "Roaring Spring", "Round Rock", "Rumney", "Sacramento", "Saint George", "Salinas", "Salmon", "Salt Lake City", "San Antonio", "San Diego", "San Francisco", "San Jose", "Santa Barbara", "Santa Cruz", "Santa Monica", "Saranac Lake", "Sarasota", "Sausalito", "Seaside CA", "Seattle", "Sedona", "Seekonk", "Silver Bay", "South Carolina", "South Lake Tahoe", "St Augustine", "St. Agatha", "St. Petersburg", "Talkeetna", "Tampa", "Tannersville", "Timonium", "Truth or Consequences", "Tucson, AZ", "Utica", "Volcano", "Washington DC", "Wesley Chapel", "West Yellowstone", "Westerly RI", "Wilkes-Barre", "Williams", "Williamsburg", "Wilmington", "Winter Haven", "Winter Park-Fraser", "Woburn", "Yosemite"], 
		"Uganda":["Entebbe", "Jinja", "Kabale", "Kampala", "Kichwamba", "Lake Bunyonyi"], 
		"Ukraine":["Alushta", "Chernivtsi", "Feodosia", "Genichesk", "Huzul Land", "Kamyanets Podilski", "Kiev", "Kolomiya", "Lviv", "Mukachevo", "Nikolaev", "Novgorod-Siverskiy", "Odessa", "Peschanoe", "Sevastopol", "Simferopol", "Slavskoe", "Sudak", "Uzhgorod", "Yalta"], 
		"United Arab Emirates":["Dubai", "Ras Al Khaimah"], 
		"Uruguay":["Cabo Polonio", "Colonia del Sacramento", "La Paloma", "La Pedrera", "Minas", "Montevideo", "Punta del Diablo", "Punta del Este", "Treinta y Tres"], 
		"Uzbekistan":["Bukhara", "Tashkent"], 
		"Vanuatu":["Port Vila", "Santo"], 
		"Venezuela":["Caracas", "Margarita Island"], 
		"Vietnam":["Da Nang", "Dalat", "Dong Ha", "Dong Hoi", "Ha Long", "Ha Long Bay", "Haiphong", "Hanoi", "Ho Chi Minh", "Hoi An", "Hue", "Laocai", "Nha Trang", "Ninh Binh", "Phan Thiet", "Sapa", "Tuyen Quang Town"], 
		"Wales":["Abersoch", "Betws-y-Coed", "Brecon", "Caernarfon", "Cardiff", "Carmarthen", "Ceredigion", "Chepstow", "Conwy", "Fishguard", "Gwynedd", "Llandudno", "Porthmadog", "Swansea", "Trawsfynydd"], 
		"Zambia":["Livingstone", "Lusaka", "Mfuwe"], 
		"Zimbabwe":["Bulawayo", "Harare", "Victoria Falls"]
	},
	"cruise":["cruisedirect", "kayak", "expedia"],
	"cache":{
		"air":"",
		"hotel":"",
		"hostel":"",
		"car":"",
		"cruise":""
	}
}

// Model Data Alias
TravelModel["hostel"]["Britain"] = TravelModel["hostel"]["England"];
TravelModel["hostel"]["Holland"] = TravelModel["hostel"]["Denmark"];


// Controller
var TravelController = new Class.create({
	initialize:function(form, action) {
		this.form = form;
		this.action = action;
		this.parent = this.form.up();

		this._observeEvent();
	},

	changeAction:function(values) {
		var actionOld = this.action;
		var actionParent = values.split("_")[0];

		if (this.action.split("_")[0] != actionParent) {
			switch (actionParent) {
				case "air":
					var remoteUrl = "/template/FlightsForm.asp";
					break;
				case "hotel":
					var remoteUrl = "/template/HotelsForm.asp";
					break;
				case "car":
					var remoteUrl = "/template/CarsForm.asp";
					break;
				case "cruise":
					var remoteUrl = "/template/CruisesForm.asp";
					break;
				case "hostel":
					var remoteUrl = "/template/HostelsForm.asp";
					break;
			}

			// AjAX Caching
			if (TravelModel["cache"][actionParent] == "") {
				new Ajax.Request(remoteUrl, {
					method:"GET",
					parameters: { package:values },
					onSuccess: function(res) {
						TravelModel["cache"][actionOld] = this.parent.innerHTML;

						this.parent.update(res.responseText);
						this.form = this.parent.down();

						this._observeEvent();
						this._changeActionAfter(values);
					}.bind(this)
				});
			} else {
				TravelModel["cache"][actionOld] = this.parent.innerHTML;
				this.parent.update(TravelModel["cache"][actionParent]);
				this.form = this.parent.down();

				this._observeEvent();
				this._changeActionAfter(values);
			}
		} else {
			this._changeActionAfter(values);
		}

		this.action = values;
		this.form.getInputs("radio", "singlemenu").each(function(s){
			if (s.value == values) {
				s.checked = true;
				s.up(1).addClassName("select");
			} else {
				s.checked = false;
				s.up(1).removeClassName("select");
			}
		});
	},
	
	submitAction:function() {
		var actionParent = this.action.split("_")[0];
		var validStatus = true;

		function _verifyInput(obj, message) {
			if (!obj.value && validStatus == true) {
				alert(message);
				obj.focus();
				new Effect.Highlight(obj);

				validStatus = false;
			}
		}

		// Form Validation
		switch (actionParent) {
			case "air":
				this.form.writeAttribute("action", "/travel/submit.html");
				_verifyInput($("frombox"), "Please enter a valid city or 3 letter airport code\nwhere you are departing from");
				_verifyInput($("tobox"), "Please enter a valid city or 3 letter airport code\nwhere you are traveling to");
				break;
			case "hotel":
				this.form.writeAttribute("action", "/travel/submit.html");
				_verifyInput($("frombox"), "Please enter a valid destination city");
				break;
			case "hostel":
				_verifyInput($("FABCountryChoice"), "Please select a valid destination country");
				_verifyInput($("FABChoice"), "Please select a valid destination city");
				break;
			case "car":
				this.form.writeAttribute("action", "/travel/submit.html");
				_verifyInput($("frombox"), "Please enter a valid city or 3 letter airport code\nwhere you will pick-up the car");
				break;
			case "cruise":
				_verifyInput(this.form.select("select.select[name='destination']")[0], "Please select a cruise destination from the list");
				break;
		}

		// Form Submit
		if (validStatus == true) this.form.submit();
	},

	_changeActionAfter:function(values) {
		switch (values) {
			case "air":
				$("blockCars").hide();
				$("blockCars").select("input[name='car']")[0].checked = false;
				$("blockHotels").hide();
				break;
			case "air_hotel":
				$("blockCars").hide();
				$("blockCars").select("input[name='car']")[0].checked = false;
				$("blockHotels").show();
				break;
			case "air_car":
				$("blockCars").show();
				$("blockCars").select("input[name='car']")[0].checked = true;
				$("blockHotels").hide();
				break;
			case "air_hotel_car":
				$("blockCars").show();
				$("blockCars").select("input[name='car']")[0].checked = true;
				$("blockHotels").show();
				break;
			case "hotel":
				$("blockCars").hide();
				$("blockCars").select("input[name='car']")[0].checked = false;
				break;
			case "hotel_car":
				$("blockCars").show();
				$("blockCars").select("input[name='car']")[0].checked = true;
				break;
		}
	},

	_changeHostelCountry:function(country, highlight) {
		if (country != "") {
			var objData = TravelModel["hostel"][country];
			$("FABChoice").update("<option value=''>-- City Select --</option>");
			objData.each(function(s){
				$("FABChoice").insert(new Template("<option value='#{city};#{country}'>#{city}</option>").evaluate({ country:country, city:s }));
			});
			$("FABChoice").selectedIndex = 0;

			if (highlight != null) new Effect.Highlight("FABChoice");
		} else {
			$("FABChoice").update("<option value=''>-- City Select --</option>");
			$("FABChoice").selectedIndex = 0;
		}
	},

	_showCalendar:function(obj) {
		function _convertDate(values) {
			var tmpArray = values.split("/");
			var curMonth = Number(tmpArray[0]) - 1;
			var curDate	= Number(tmpArray[1]);
			var curYear	= Number(tmpArray[2]);

			return new Date(curYear, curMonth, curDate);
		}

		if ($("iframe_calendars")) $("iframe_calendars").remove();
		$("calendars").toggle();

		var departDate = $("departDate");
		var returnDate = $("returnDate");
		var container = $("calendars");

		if (!container) {
			alert("Sorry, Failed to initiaize Calendar widget");
			return null;
		}

		// Common Attribute
		var minDate = new Date();
		var maxDate = new Date(new Date().getTime() + (86400000 * 365));

		var curOption = {
			close:true,
			minDate:minDate,
			pageDate:_convertDate(departDate.value),
			maxDate:maxDate,
			locale_weekdays:"1char",
			iframe:false
		};

		if (returnDate) {
			// Two ways
			var startDate = departDate.value;
			var endDate	= returnDate.value;

			Object.extend(curOption, {
				selected:startDate + "-" + endDate
			});
		} else {
			// One ways
			var selectDate = departDate.value;
			obj = departDate;

			Object.extend(curOption, {
				selected:selectDate
			});
		}

		// Common Constructor
		iCal = new YAHOO.widget.CalendarGroup(container, curOption);
		iCal.renderEvent.subscribe(function(type, args){
			var CurPageDate = this.pages[0].cfg.getProperty("pagedate");
			var CurHeader = container.select("div.calheader");
			var ChangerMonth = ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"];
			var ChangerDate = new Date();


			// Making Select Box
			var ChangerForm = new Element("select");
			$R(0, 11).each(function(s){
				var ChangerDateString	= String(ChangerDate.toDateString()).split(" ");

				var ChangerOption = new Element("option", {
					value:(ChangerDate.getMonth() + 1) + "/" + ChangerDateString[3]
				}).update(ChangerMonth[ChangerDate.getMonth()] + " " + ChangerDateString[3]);

				if ((CurPageDate.getFullYear() == ChangerDate.getFullYear()) && (CurPageDate.getMonth() == ChangerDate.getMonth())) {
					ChangerOption.setAttribute("selected", "selected");
				}

				ChangerForm.insert(ChangerOption);
				ChangerDate.setMonth(ChangerDate.getMonth() + 1);
			});

			// Insert Select Box
			CurHeader[0].update(ChangerForm);


			// Process Navigation Button
			var curMonth = CurPageDate.getMonth();
			var maxMonth = maxDate.getMonth();
			var minMonth = minDate.getMonth();
			if (curMonth < 10) curMonth = "0" + curMonth;
			if (maxMonth < 10) maxMonth = "0" + maxMonth;
			if (minMonth < 10) minMonth = "0" + minMonth;

			var curIndex = parseInt(CurPageDate.getFullYear() + "" + curMonth);
			var maxIndex = parseInt(maxDate.getFullYear() + "" + maxMonth);
			var minIndex = parseInt(minDate.getFullYear() + "" + minMonth);

			if (curIndex >= maxIndex - 1) {
				CurHeader[1].select("a")[0].remove();
			}

			if (curIndex > minIndex) {	
				var CurLink = new Element("a", {
					"class":"calnavleft",
					"href":"javascript:void(0);"
				});
				CurLink.update("Previous Month (" + ChangerMonth[minDate.getMonth()] + " " + minDate.getFullYear() + ")");
				CurLink.observe("click", function(evt){
					iCal.previousMonth();
				});

				CurHeader[0].insert({ top:CurLink });
			}


			// Observing Select Box
			ChangerForm.observe("change", function(evt){
				iCal.cfg.setProperty("pagedate", this[this.selectedIndex].value);
				iCal.render();
			});
		}, iCal, true);

		iCal.hideEvent.subscribe(function(type, args){
			if ($("iframe_calendars")) $("iframe_calendars").remove();
		}, iCal, true);

		iCal.selectEvent.subscribe(function(type, args){
			var curTemp		= String(args).split(",");
			var curYear		= curTemp[0];
			var curMonth	= curTemp[1];
			var curDay		= curTemp[2];

			if (curDay.length==1) curDay = "0" + curDay;
			if (curMonth.length==1) curMonth = "0" + curMonth;

			obj.value = curMonth + "/" + curDay + "/" + curYear;
			iCal.hide();
		}, iCal, true);


		// Custom Select Event
		if (returnDate) {
		} else {
			iCal.selectEvent.subscribe(function(type, args){
				var curTemp		= String(args).split(",");
				var curYear		= curTemp[0];
				var curMonth	= curTemp[1];
				var curDay		= curTemp[2];

				if (curDay.length==1) curDay = "0" + curDay;
				if (curMonth.length==1) curMonth = "0" + curMonth;

				departDate.value = curMonth + "/" + curDay + "/" + curYear;
				iCal.hide();
			}, iCal, true);
		}

		iCal.render();

		// Make for IE6
		if (Prototype.Browser.IE6 && $("calendars").style.display != "none") {
			var iFrame = new Element("iframe", {
				id:"iframe_calendars"
			});

			// Calculate Size
			var iFrameSize = $("calendars").getDimensions();

			iFrame.setStyle({
				width:iFrameSize.width + "px",
				height:iFrameSize.height + "px"
			});

			$("calendars").insert({after: iFrame });
		}
	},

	_observeEvent:function() {
		// Remove Browser Based AutoComplete
		if ($("tobox")!=null) $("tobox").setAttribute("autocomplete", "off");
		if ($("frombox")!=null) $("frombox").setAttribute("autocomplete", "off");

		// Action Changer
		this.form.getInputs("radio", "singlemenu").invoke("observe", "click", function(evt) { 
			Prototype.Browser.IE6 ? document.location.href = "/travel/?package=" + Event.element(evt).value : this.changeAction(Event.element(evt).value);
		}.bindAsEventListener(this));

		// + Car Option (Flights / Hotel)
		this.form.getInputs("checkbox", "car").invoke("observe", "click", function(evt) {
			switch (this.action) {
				case "hotel_car":
					this.changeAction("hotel");
					break;
				case "air_car":
					this.changeAction("air");
					break;
				case "air_hotel_car":
					this.changeAction("air_hotel");
					break;
			}
		}.bindAsEventListener(this));

		// Flights Type (Flights)
		this.form.getInputs("radio", "flighttype").invoke("observe", "click", function(evt) {
			if (Event.element(evt).value == "1") {
				$("blockOneway").hide();
				$('returnDate').value = $('departDate').value;
			} else {
				$("blockOneway").show();
			}

			$("calendars").hide();
			$("calendars").update(null);
		}.bindAsEventListener(this));

		// AjAX Autocomplete (Flights / Car)
		if (["air", "car"].include(this.action)) {
			this.form.select("li.country input").each(function(s){
				var objData = new YAHOO.util.XHRDataSource("/travel/airport.asp");
				objData.responseType = YAHOO.util.XHRDataSource.TYPE_JSON;
				objData.responseSchema = {
					resultsList : "result",
					fields :["code", "query"]
				};

				var objAutoComplete = new YAHOO.widget.AutoComplete(s.readAttribute("id"), "autocomplete_" + s.readAttribute("id"), objData);
				if (Prototype.Browser.IE6) objAutoComplete.useIFrame = true;
				objAutoComplete.queryDelay = 0;
				objAutoComplete.minQueryLength = 3;
				objAutoComplete.formatResult = function(objResultData, strQuery, strResultMatch) {
					return "<span class=\"code\">" + objResultData[0] + "</span> " + objResultData[1];
				};
			});
		}

		// Custom Calendars (Common)
		this.form.select("a.calendar, li.calendar input[type='text']").each(function(s){
			if (s.tagName.toUpperCase() == "A") s.writeAttribute("href", "javascript:void(0);");

			s.observe("click", function(evt){
				this._showCalendar(Event.element(evt).up().down("input"));
			}.bindAsEventListener(this));
		}.bind(this));

		// Specified Destination (Hotel)
		this.form.getInputs("radio", "destination").invoke("observe", "click", function(evt) {
			var objData = TravelModel["destination"][Event.element(evt).value];
			var list = new Element("ul");
			objData.each(function(s){
				list.insert(new Template("<li><a href=\"javascript:void(0);\" onclick=\"$('frombox').value = '#{data}'\">#{name}</a></li>").evaluate(s));
			});
			$("country").update(list);
		}.bindAsEventListener(this));

		// Specified Country Dynamic Selection (Hostel)
		if ($("FABCountryChoice") != null) {
			$("FABCountryChoice").observe("change", function(evt) {
				this._changeHostelCountry(Event.element(evt).value, true);
			}.bindAsEventListener(this));

			// Define Default Value - USA
			$("FABCountryChoice").value = "USA";
			this._changeHostelCountry("USA");
		}

		// Specified Destination (Cruise)
		this.form.select("select.select[name='destination']").invoke("observe", "change", function(evt) {
			$("submitWrapper").update(null);

			if (Event.element(evt).value) {
				var curInput = "<input type='submit' name='group' class='#{value}' value='#{value}' />";

				if (Prototype.Browser.IE6) {
					$("submitWrapper").insert("<input type='hidden' name='group' id='group' value='' />");
					curInput = "<input type=\"button\" name=\"group\" class=\"#{value}\" value=\"#{value}\" onclick=\"$('group').value = this.value; $('reserved').submit(); \" />";
				}

				TravelModel["cruise"].each(function(s){ $("submitWrapper").insert(new Template(curInput).evaluate({ value:s })); });
			}
		}.bindAsEventListener(this));

		// Hooking Form Submit
		if (this.action != "cruise") {
			this.form.observe("submit", function(evt){
				this.submitAction();
				Event.stop(evt);
			}.bindAsEventListener(this));
		}
	}
});