TP = new Array();
TPA = new Array();

TPA[0]="Afghanistan";
TP[0]="0|Herat";
TP[1]="0|Kabul";
TP[2]="0|Kandahar";
TP[3]="0|Mazar-e Sharif";
TPA[1]="Afrique du Sud";
TPA[2]="Albania";
TPA[3]="Algeria";
TPA[4]="Allemagne";
TP[4]="4|Baden-Württemberg";
TP[5]="4|Bayern";
TP[6]="4|Berlin";
TP[7]="4|Brandenburg";
TP[8]="4|Bremen";
TP[9]="4|Hamburg";
TP[10]="4|Hessen";
TP[11]="4|Mecklenburg-Vorpommern";
TP[12]="4|Niedersachsen";
TP[13]="4|Nordrhein-Westfalen";
TP[14]="4|Rheinland-Pfalz";
TP[15]="4|Saarland";
TP[16]="4|Sachsen";
TP[17]="4|Sachsen-Anhalt";
TP[18]="4|Schleswig-Holstein";
TP[19]="4|Thuringen";
TPA[5]="America Samoa";
TPA[6]="Andora";
TPA[7]="Angola";
TPA[8]="Anguilla";
TPA[9]="Antarctique";
TPA[10]="Antigua and Barbuda";
TPA[11]="Argentine";
TP[20]="11|Buenos Aires";
TP[21]="11|Capital Federal";
TP[22]="11|Catamarca";
TP[23]="11|Chaco";
TP[24]="11|Chubut";
TP[25]="11|Cordoba";
TP[26]="11|Corrientes";
TP[27]="11|Entre Rios";
TP[28]="11|Formosa";
TP[29]="11|Jujuy";
TP[30]="11|La Pampa";
TP[31]="11|La Rioja";
TP[32]="11|Mendoza";
TP[33]="11|Misiones";
TP[34]="11|Neuquen";
TP[35]="11|Rio Negro";
TP[36]="11|Salta";
TP[37]="11|San Juan";
TP[38]="11|San Luis";
TP[39]="11|Santa Cruz";
TP[40]="11|Santa Fe";
TP[41]="11|Santiago del Estero";
TP[42]="11|Tierra del Fuego Antartida e Islas del Atlantico Sur";
TP[43]="11|Tucuman";
TPA[12]="Armenia";
TPA[13]="Aruba";
TPA[14]="Australie";
TP[44]="14|Australian Capital Territory";
TP[45]="14|New South Wales";
TP[46]="14|Northern Territory";
TP[47]="14|Queensland";
TP[48]="14|South Australia";
TP[49]="14|Tasmania";
TP[50]="14|Victoria";
TP[51]="14|Western Australia";
TPA[15]="Autriche";
TP[52]="15|Burgenland";
TP[53]="15|Karnten";
TP[54]="15|Lower Austria";
TP[55]="15|Salzburg";
TP[56]="15|Steiermark";
TP[57]="15|Tirol";
TP[58]="15|Upper Austria";
TP[59]="15|Vorarlberg";
TP[60]="15|Wien";
TPA[16]="Azerbaijan";
TPA[17]="Bahamas";
TPA[18]="Bahrain";
TPA[19]="Bangladesh";
TPA[20]="Barbades";
TPA[21]="Belarus";
TPA[22]="Belgique";
TP[61]="22|Antwerpen";
TP[62]="22|Brabant wallon";
TP[63]="22|Bruxelles";
TP[64]="22|Flemish Brabant";
TP[65]="22|Hainaut";
TP[66]="22|Liege";
TP[67]="22|Limburg";
TP[68]="22|Luxembourg";
TP[69]="22|Namur";
TP[70]="22|Oost-Vlaanderen";
TP[71]="22|West-Vlaanderen";
TPA[23]="Belize";
TPA[24]="Benin";
TPA[25]="Bermudes";
TPA[26]="Bolivia";
TPA[27]="Bosnie et Herzegovine";
TPA[28]="Botswana";
TPA[29]="Bouvet Island";
TPA[30]="Brésil";
TP[72]="30|Acre";
TP[73]="30|Alagoas";
TP[74]="30|Amapa";
TP[75]="30|Amazonas";
TP[76]="30|Bahia";
TP[77]="30|Ceara";
TP[78]="30|Distrito Federal";
TP[79]="30|Espirito Santo";
TP[80]="30|Goias";
TP[81]="30|Maranhao";
TP[82]="30|Mato Grosso";
TP[83]="30|Mato Grosso do Sul";
TP[84]="30|Minas Gerais";
TP[85]="30|Para";
TP[86]="30|Paraiba";
TP[87]="30|Parana";
TP[88]="30|Pernambuco";
TP[89]="30|Piaui";
TP[90]="30|Rio de Janeiro";
TP[91]="30|Rio Grande do Norte";
TP[92]="30|Rio Grande do Sul";
TP[93]="30|Rondonia";
TP[94]="30|Roraima";
TP[95]="30|Santa Catarina";
TP[96]="30|Sao Paulo";
TP[97]="30|Sergipe";
TP[98]="30|Tocantins";
TP[99]="30|Zona Litigiosa";
TPA[31]="British Indian ocean territory";
TPA[32]="Brunei Darussalam";
TPA[33]="Bulgaria";
TP[100]="33|Burgas";
TP[101]="33|Grad Sofiya";
TP[102]="33|Khaskovo";
TP[103]="33|Lovech";
TP[104]="33|Montana";
TP[105]="33|Plovdiv";
TP[106]="33|Ruse";
TP[107]="33|Sofiya";
TP[108]="33|Varna";
TPA[34]="Burkina Faso";
TPA[35]="Burundi";
TPA[36]="Buthan";
TPA[37]="Cambodge";
TPA[38]="Cameroon";
TPA[39]="Canada";
TP[109]="39|Alberta";
TP[110]="39|Colombie-Britannique";
TP[111]="39|Île-du-Prince-Édouard";
TP[112]="39|Manitoba";
TP[113]="39|Nouveau-Brunswick";
TP[114]="39|Nouvelle-Écosse";
TP[115]="39|Nunavut";
TP[116]="39|Ontario";
TP[117]="39|Québec";
TP[118]="39|Saskatchewan";
TP[119]="39|Terre-Neuve";
TP[120]="39|Territoires du Nord-Ouest";
TP[121]="39|Yukon";
TPA[40]="Cape Verde";
TPA[41]="Cayman Islands";
TPA[42]="Chad";
TPA[43]="Chile";
TP[122]="43|Magallanes y Antartica Chilena";
TP[123]="43|Metropolitana de Santiago";
TP[124]="43|Region de Aisen del General Carlos Ibanez del Campo";
TP[125]="43|Region de Antofagasta";
TP[126]="43|Region de Atacama";
TP[127]="43|Region de Coquimbo";
TP[128]="43|Region de la Araucania";
TP[129]="43|Region de los Lagos";
TP[130]="43|Region de OrHiggins";
TP[131]="43|Region de Tarapaca";
TP[132]="43|Region de Valparaiso";
TP[133]="43|Region del Biobio";
TP[134]="43|Region del Maule";
TPA[44]="Chine";
TP[135]="44|Anhui";
TP[136]="44|Beijing";
TP[137]="44|Chongqing";
TP[138]="44|Fujian";
TP[139]="44|Gansu";
TP[140]="44|Guangdong";
TP[141]="44|Guangxi";
TP[142]="44|Guizhou";
TP[143]="44|Hainan";
TP[144]="44|Hebei";
TP[145]="44|Heilongjiang";
TP[146]="44|Henan";
TP[147]="44|Hubei";
TP[148]="44|Hunan";
TP[149]="44|Jiangsu";
TP[150]="44|Jiangxi";
TP[151]="44|Jilin";
TP[152]="44|Liaoning";
TP[153]="44|Nei Menggu";
TP[154]="44|Ningxia";
TP[155]="44|Qinghai";
TP[156]="44|Shaanxi";
TP[157]="44|Shandong";
TP[158]="44|Shanghai";
TP[159]="44|Shanxi";
TP[160]="44|Sichuan";
TP[161]="44|Tianjin";
TP[162]="44|Xinjiang Uygur";
TP[163]="44|Xizang";
TP[164]="44|Yunnan";
TP[165]="44|Zhejiang";
TPA[45]="Christmas Island";
TPA[46]="Cocos (keeling) Island";
TPA[47]="Colombie";
TPA[48]="Comoros";
TPA[49]="Congo, République Démocratique du";
TPA[50]="Cook Island";
TPA[51]="Costa Rica";
TPA[52]="Cote d'ivoire";
TPA[53]="Croatia (local name : Hrvatska)";
TPA[54]="Cuba";
TPA[55]="Cyprus";
TPA[56]="Czech Republic";
TP[166]="56|Jihocesky Kraj";
TP[167]="56|Jihormoravsky Kraj";
TP[168]="56|Praha";
TP[169]="56|Severocesky Kraj";
TP[170]="56|Severomoravsky Kraj";
TP[171]="56|Stredocesky Kraj";
TP[172]="56|Vychodocesky Kraj";
TP[173]="56|Zapadocesky Kraj";
TPA[57]="Denmark";
TPA[58]="Djibouti";
TPA[59]="Dominica";
TPA[60]="East Timor";
TPA[61]="Ecuador";
TP[174]="61|Azuay";
TP[175]="61|Bolivar";
TP[176]="61|Canar";
TP[177]="61|Carchi";
TP[178]="61|Chimborazo";
TP[179]="61|Cotopaxi";
TP[180]="61|El Oro";
TP[181]="61|Esmeraldas";
TP[182]="61|Galapagos Islands";
TP[183]="61|Guayas";
TP[184]="61|Imbabura";
TP[185]="61|Loja";
TP[186]="61|Los Rios";
TP[187]="61|Manabi";
TP[188]="61|Morona-Santiago";
TP[189]="61|Napo";
TP[190]="61|Pastaza";
TP[191]="61|Pichincha";
TP[192]="61|Sucumbios";
TP[193]="61|Tungurahua";
TP[194]="61|Zamora Chinchipe";
TPA[62]="Egypt";
TP[195]="62|Alexandria";
TP[196]="62|Aswan";
TP[197]="62|Cairo";
TP[198]="62|Giza";
TP[199]="62|Shubra al Khaymah";
TPA[63]="El Savador";
TPA[64]="equatorial Guinea";
TPA[65]="Eritrea";
TPA[66]="Estonia";
TPA[67]="Ethiopie";
TPA[68]="Falkland Island (Mavinas)";
TPA[69]="Faroe Island";
TPA[70]="Fiji";
TPA[71]="Finlande";
TP[200]="71|Ahvenanmaa";
TP[201]="71|Hame";
TP[202]="71|Keski-Suomi";
TP[203]="71|Kuopio";
TP[204]="71|Kymi";
TP[205]="71|Lappi";
TP[206]="71|Mikkeli";
TP[207]="71|Oulu";
TP[208]="71|Pohjois-Karjala";
TP[209]="71|Turku ja Pori";
TP[210]="71|Uusimaa";
TP[211]="71|Vaasa";
TPA[72]="France";
TP[212]="72|Ain";
TP[213]="72|Aisne";
TP[214]="72|Allier";
TP[215]="72|Alpes-de-Haute-Provence";
TP[216]="72|Alpes-Maritimes";
TP[217]="72|Ardeche";
TP[218]="72|Ardennes";
TP[219]="72|Ariege";
TP[220]="72|Aube";
TP[221]="72|Aude";
TP[222]="72|Aveyron";
TP[223]="72|Bas-Rhin";
TP[224]="72|Bouches-du-Rhone";
TP[225]="72|Calvados";
TP[226]="72|Cantal";
TP[227]="72|Charente";
TP[228]="72|Charente-Maritime";
TP[229]="72|Cher";
TP[230]="72|Correze";
TP[231]="72|Corse-du-Sud";
TP[232]="72|Cote-d`Or";
TP[233]="72|Cotes-d`Armor";
TP[234]="72|Creuse";
TP[235]="72|Deux-Sevres";
TP[236]="72|Dordogne";
TP[237]="72|Doubs";
TP[238]="72|Drome";
TP[239]="72|Essonne";
TP[240]="72|Eure";
TP[241]="72|Eure-et-Loir";
TP[242]="72|Finistere";
TP[243]="72|Gard";
TP[244]="72|Gers";
TP[245]="72|Gironde";
TP[246]="72|Haute-Corse";
TP[247]="72|Haute-Garonne";
TP[248]="72|Haute-Loire";
TP[249]="72|Haute-Marne";
TP[250]="72|Hautes-Alpes";
TP[251]="72|Haute-Saone";
TP[252]="72|Haute-Savoie";
TP[253]="72|Hautes-Pyrenees";
TP[254]="72|Haute-Vienne";
TP[255]="72|Haut-Rhin";
TP[256]="72|Hauts-de-Seine";
TP[257]="72|Herault";
TP[258]="72|Ille-et-Vilaine";
TP[259]="72|Indre";
TP[260]="72|Indre-et-Loire";
TP[261]="72|Isere";
TP[262]="72|Jura";
TP[263]="72|Landes";
TP[264]="72|Loire";
TP[265]="72|Loire-Atlantique";
TP[266]="72|Loiret";
TP[267]="72|Loir-et-Cher";
TP[268]="72|Lot";
TP[269]="72|Lot-et-Garonne";
TP[270]="72|Lozere";
TP[271]="72|Maine-et-Loire";
TP[272]="72|Manche";
TP[273]="72|Marne";
TP[274]="72|Mayenne";
TP[275]="72|Meurthe-et-Moselle";
TP[276]="72|Meuse";
TP[277]="72|Morbihan";
TP[278]="72|Moselle";
TP[279]="72|Nievre";
TP[280]="72|Nord";
TP[281]="72|Oise";
TP[282]="72|Orne";
TP[283]="72|Paris";
TP[284]="72|Pas-de-Calais";
TP[285]="72|Puy-de-Dome";
TP[286]="72|Pyrenees-Atlantiques";
TP[287]="72|Pyrenees-Orientales";
TP[288]="72|Rhone";
TP[289]="72|Saone-et-Loire";
TP[290]="72|Sarthe";
TP[291]="72|Savoie";
TP[292]="72|Seine-et-Marne";
TP[293]="72|Seine-Maritime";
TP[294]="72|Seine-Saint-Denis";
TP[295]="72|Somme";
TP[296]="72|Tarn";
TP[297]="72|Tarn-et-Garonne";
TP[298]="72|Territoire-de-Belfort";
TP[299]="72|Val-De-Marne";
TP[300]="72|Val-drOise";
TP[301]="72|Var";
TP[302]="72|Vaucluse";
TP[303]="72|Vendee";
TP[304]="72|Vienne";
TP[305]="72|Vosges";
TP[306]="72|Yonne";
TP[307]="72|Yvelines";
TPA[73]="France Metropolitan";
TPA[74]="French Guiana";
TPA[75]="French Polynesia";
TPA[76]="French Southern Territories";
TPA[77]="Gabon";
TPA[78]="Gambia";
TPA[79]="Georgie";
TPA[80]="Ghana";
TPA[81]="Gibraltar";
TPA[82]="Grèce";
TP[308]="82|Aitoloakarnania";
TP[309]="82|Akhaia";
TP[310]="82|Argolis";
TP[311]="82|Arkadhia";
TP[312]="82|Arta";
TP[313]="82|Attica";
TP[314]="82|Cephallonia";
TP[315]="82|Dodecanese";
TP[316]="82|Drama";
TP[317]="82|Evritania";
TP[318]="82|Evros";
TP[319]="82|Evvoia";
TP[320]="82|Florina";
TP[321]="82|Fokis";
TP[322]="82|Fthiotis";
TP[323]="82|Grevena";
TP[324]="82|Ilia";
TP[325]="82|Imathia";
TP[326]="82|Ioannina";
TP[327]="82|Iraklion";
TP[328]="82|Karditsa";
TP[329]="82|Kastoria";
TP[330]="82|Kavala";
TP[331]="82|Kerkira";
TP[332]="82|Khalkidhiki";
TP[333]="82|Khania";
TP[334]="82|Khios";
TP[335]="82|Kikladhes";
TP[336]="82|Kilkis";
TP[337]="82|Korinthia";
TP[338]="82|Kozani";
TP[339]="82|Laconia";
TP[340]="82|Larisa";
TP[341]="82|Lasithi";
TP[342]="82|Lesvos";
TP[343]="82|Levkas";
TP[344]="82|Magnisia";
TP[345]="82|Messinia";
TP[346]="82|Pella";
TP[347]="82|Pieria";
TP[348]="82|Preveza";
TP[349]="82|Rethimni";
TP[350]="82|Rodopi";
TP[351]="82|Samos";
TP[352]="82|Serrai";
TP[353]="82|Thesprotia";
TP[354]="82|Thessaloniki";
TP[355]="82|Thraki";
TP[356]="82|Trikala";
TP[357]="82|Voiotia";
TP[358]="82|Xanthi";
TP[359]="82|Zakinthos";
TPA[83]="Greenland";
TPA[84]="Grenada";
TPA[85]="Guadeloupe";
TPA[86]="Guam";
TPA[87]="Guatemala";
TPA[88]="Guinea";
TPA[89]="Guinea-Bissau";
TPA[90]="Guyana";
TPA[91]="Haïti";
TPA[92]="Heard and Mcdonald Island";
TPA[93]="Honduras";
TPA[94]="Hong kong";
TPA[95]="Hongrie";
TP[360]="95|Bacs-Kiskun";
TP[361]="95|Baranya";
TP[362]="95|Bekes";
TP[363]="95|Borsod-Abauj-Zemblen";
TP[364]="95|Budapest";
TP[365]="95|Csongrad";
TP[366]="95|Fejer";
TP[367]="95|Gyor-Moson-Sopron";
TP[368]="95|Hajdu-Bihar";
TP[369]="95|Heves";
TP[370]="95|Jasz-Nagkyun-Szolnok";
TP[371]="95|Komarom-Esztergom";
TP[372]="95|Nograd";
TP[373]="95|Pest";
TP[374]="95|Somogy";
TP[375]="95|Szabolcs-Szatmar-Bereg";
TP[376]="95|Tolna";
TP[377]="95|Vas";
TP[378]="95|Veszprem";
TP[379]="95|Zala";
TPA[96]="Iceland";
TPA[97]="Inde";
TPA[98]="Indonésie";
TPA[99]="Iran (Islamic Republic of)";
TPA[100]="Iraq";
TPA[101]="Irlande";
TP[380]="101|Carlow";
TP[381]="101|Cavan";
TP[382]="101|Clare";
TP[383]="101|Cork";
TP[384]="101|Donegal";
TP[385]="101|Dublin";
TP[386]="101|Galway";
TP[387]="101|Kerry";
TP[388]="101|Kildare";
TP[389]="101|Kilkenny";
TP[390]="101|Laois";
TP[391]="101|Leitrim";
TP[392]="101|Limerick";
TP[393]="101|Longford";
TP[394]="101|Louth";
TP[395]="101|Mayo";
TP[396]="101|Meath";
TP[397]="101|Monaghan";
TP[398]="101|Offaly";
TP[399]="101|Roscommon";
TP[400]="101|Sligo";
TP[401]="101|Tipperary";
TP[402]="101|Waterford";
TP[403]="101|Westmeath";
TP[404]="101|Wexford";
TP[405]="101|Wicklow";
TPA[102]="Israël";
TP[406]="102|Ashdod";
TP[407]="102|Bat Yam";
TP[408]="102|Beersheba";
TP[409]="102|Haifa";
TP[410]="102|Holon";
TP[411]="102|Jerusalem Jerusalem";
TP[412]="102|Netanya";
TP[413]="102|Tel Aviv-Yafo";
TPA[103]="Italie";
TP[414]="103|Agrigento";
TP[415]="103|Alessandria";
TP[416]="103|Ancona";
TP[417]="103|Aosta";
TP[418]="103|Arezzo";
TP[419]="103|Ascoli Piceno";
TP[420]="103|Asti";
TP[421]="103|Avellino";
TP[422]="103|Bari";
TP[423]="103|Belluno";
TP[424]="103|Benevento";
TP[425]="103|Bergamo";
TP[426]="103|Biella";
TP[427]="103|Bologna";
TP[428]="103|Bolzano";
TP[429]="103|Brescia";
TP[430]="103|Brindisi";
TP[431]="103|Cagliari";
TP[432]="103|Caltanissetta";
TP[433]="103|Campobasso";
TP[434]="103|Caserta";
TP[435]="103|Catania";
TP[436]="103|Catanzaro";
TP[437]="103|Chieti";
TP[438]="103|Como";
TP[439]="103|Cosenza";
TP[440]="103|Cremona";
TP[441]="103|Crotone";
TP[442]="103|Cuneo";
TP[443]="103|Enna";
TP[444]="103|Ferrara";
TP[445]="103|Firenze";
TP[446]="103|Foggia";
TP[447]="103|Forli-Cesena";
TP[448]="103|Frosinone";
TP[449]="103|Genova";
TP[450]="103|Gorizia";
TP[451]="103|Grosseto";
TP[452]="103|Imperia";
TP[453]="103|Isernia";
TP[454]="103|L`Aquila";
TP[455]="103|La Spezia";
TP[456]="103|Latina";
TP[457]="103|Lecce";
TP[458]="103|Lecco";
TP[459]="103|Livorno";
TP[460]="103|Lodi";
TP[461]="103|Lucca";
TP[462]="103|Macerata";
TP[463]="103|Mantova";
TP[464]="103|Massa Carrara";
TP[465]="103|Matera";
TP[466]="103|Messina";
TP[467]="103|Milano";
TP[468]="103|Modena";
TP[469]="103|Napoli";
TP[470]="103|Novara";
TP[471]="103|Nuoro";
TP[472]="103|Oristano";
TP[473]="103|Padova";
TP[474]="103|Palermo";
TP[475]="103|Parma";
TP[476]="103|Pavia";
TP[477]="103|Pavia";
TP[478]="103|Perugia";
TP[479]="103|Pesaro e Urbino";
TP[480]="103|Pescara";
TP[481]="103|Piacenza";
TP[482]="103|Pisa";
TP[483]="103|Pistoia";
TP[484]="103|Pordenone";
TP[485]="103|Potenza";
TP[486]="103|Prato";
TP[487]="103|Ragusa";
TP[488]="103|Ravenna";
TP[489]="103|Reggio di Calabria";
TP[490]="103|Reggio nella Emilia";
TP[491]="103|Rieti";
TP[492]="103|Rimini";
TP[493]="103|Roma";
TP[494]="103|Rovigo";
TP[495]="103|Salerno";
TP[496]="103|Sassari";
TP[497]="103|Savona";
TP[498]="103|Siena";
TP[499]="103|Siracusa";
TP[500]="103|Sondrio";
TP[501]="103|Taranto";
TP[502]="103|Teramo";
TP[503]="103|Terni";
TP[504]="103|Torino";
TP[505]="103|Trapani";
TP[506]="103|Trento";
TP[507]="103|Treviso";
TP[508]="103|Trieste";
TP[509]="103|Udine";
TP[510]="103|Varese";
TP[511]="103|Venezia";
TP[512]="103|Verbano-Cusio-Ossola";
TP[513]="103|Vercelli";
TP[514]="103|Vercellio";
TP[515]="103|Verona";
TP[516]="103|Vibo Valentia";
TP[517]="103|Vicenza";
TP[518]="103|Viterbo";
TPA[104]="Jamaïque";
TPA[105]="Japon";
TP[519]="105|Aichi-ken";
TP[520]="105|Akita-ken";
TP[521]="105|Aomori-ken";
TP[522]="105|Chiba-ken";
TP[523]="105|Ehime-ken";
TP[524]="105|Fukui-ken";
TP[525]="105|Fukuoka-ken";
TP[526]="105|Fukushima-ken";
TP[527]="105|Gifu-ken";
TP[528]="105|Gunma-ken";
TP[529]="105|Hiroshima-ken";
TP[530]="105|Hokkaido";
TP[531]="105|Hyogo-ken";
TP[532]="105|Ibaraki-ken";
TP[533]="105|Ishikawa-ken";
TP[534]="105|Iwate-ken";
TP[535]="105|Kagawa-ken";
TP[536]="105|Kagoshima-ken";
TP[537]="105|Kanagawa-ken";
TP[538]="105|Kochi-ken";
TP[539]="105|Kumamoto-ken";
TP[540]="105|Kyoto-fu";
TP[541]="105|Mie-ken";
TP[542]="105|Miyagi-ken";
TP[543]="105|Miyazaki-ken";
TP[544]="105|Nagano-ken";
TP[545]="105|Nagasaki-ken";
TP[546]="105|Nara-ken";
TP[547]="105|Niigata-ken";
TP[548]="105|Oita-ken";
TP[549]="105|Okayama-ken";
TP[550]="105|Okinawa-ken";
TP[551]="105|Osaka-fu";
TP[552]="105|Saga-ken";
TP[553]="105|Saitama-ken";
TP[554]="105|Shiga-ken";
TP[555]="105|Shimane-ken";
TP[556]="105|Shizuoka-ken";
TP[557]="105|Tochigi-ken";
TP[558]="105|Tokushima-ken";
TP[559]="105|Tokyo-to";
TP[560]="105|Tottori-ken";
TP[561]="105|Toyama-ken";
TP[562]="105|Wakayama-ken";
TP[563]="105|Yamagata-ken";
TP[564]="105|Yamaguchi-ken";
TP[565]="105|Yamanashi-ken";
TPA[106]="Jordan";
TPA[107]="Kazakhstan";
TPA[108]="Kenya";
TPA[109]="Kiribati";
TPA[110]="Korea, Democratic people`s Republic of";
TPA[111]="Korea, Republic of";
TPA[112]="Kuwait";
TPA[113]="Kyrgyzstan";
TPA[114]="Lao people's democratic Republic";
TPA[115]="Latvia";
TPA[116]="Lesotho";
TPA[117]="Liban";
TPA[118]="Liberia";
TPA[119]="Libyan Arab Jamahiriya";
TPA[120]="Liechtenstein";
TPA[121]="Lithuania";
TPA[122]="Luxembourg";
TPA[123]="Macau";
TPA[124]="Macedonia, The Former Yugoslav Republic of";
TPA[125]="Madagascar";
TPA[126]="Malawi";
TPA[127]="Malaysie";
TPA[128]="Maldives";
TPA[129]="Mali";
TPA[130]="Malta";
TPA[131]="Marshall Island";
TPA[132]="Martinique";
TPA[133]="Mauritania";
TPA[134]="Mauritius";
TPA[135]="Mayotte";
TPA[136]="Mexique";
TP[566]="136|Aguascalientes";
TP[567]="136|Baja California";
TP[568]="136|Baja California Sur";
TP[569]="136|Campeche";
TP[570]="136|Chiapas";
TP[571]="136|Chihuahua";
TP[572]="136|Coahuila";
TP[573]="136|Colima";
TP[574]="136|Distrito Federal";
TP[575]="136|Durango";
TP[576]="136|Guanajuato";
TP[577]="136|Guerrero";
TP[578]="136|Hidalgo";
TP[579]="136|Jalisco";
TP[580]="136|Mexico";
TP[581]="136|Michoacan";
TP[582]="136|Morelos";
TP[583]="136|Nayarit";
TP[584]="136|Nuevo Leon";
TP[585]="136|Oaxaca";
TP[586]="136|Puebla";
TP[587]="136|Queretaro";
TP[588]="136|Quintana Roo";
TP[589]="136|San Luis Potosi";
TP[590]="136|Sinaloa";
TP[591]="136|Sonora";
TP[592]="136|Tabasco";
TP[593]="136|Tamaulipas";
TP[594]="136|Tlaxcala";
TP[595]="136|Veracruz";
TP[596]="136|Yucatan";
TP[597]="136|Zacatecas";
TPA[137]="Micronesia, Federated States of";
TPA[138]="Moldova, Republic of";
TPA[139]="Monaco";
TPA[140]="Mongolia";
TPA[141]="Montserrat";
TPA[142]="Morocco";
TPA[143]="Mozambique";
TPA[144]="Myanmar";
TPA[145]="Namibia";
TPA[146]="Nauru";
TPA[147]="Nepal";
TPA[148]="Netherlands";
TPA[149]="Netherlands Antilles";
TPA[150]="New Caledonia";
TPA[151]="Nicaragua";
TPA[152]="Niger";
TPA[153]="Nigeria";
TPA[154]="Niue";
TPA[155]="Norfolk island";
TPA[156]="Northern Mariana Island";
TPA[157]="Norway";
TPA[158]="Nouvelle-Zélande";
TPA[159]="Oman";
TPA[160]="Pakistan";
TPA[161]="Palau";
TPA[162]="Palestinian Authority";
TPA[163]="Panama";
TPA[164]="Papua New Guinea";
TPA[165]="Paraguay";
TPA[166]="Peru";
TPA[167]="Philippines";
TPA[168]="Pitcairn";
TPA[169]="Poland";
TPA[170]="Portugal";
TPA[171]="Puerto Rico";
TPA[172]="Qatar";
TPA[173]="République Centrale Africaine";
TPA[174]="République Dominicaine";
TPA[175]="Reunion";
TPA[176]="Romania";
TPA[177]="Russian Federation";
TPA[178]="Rwanda";
TPA[179]="Saint Kitts and Nevis";
TPA[180]="Saint Lucia";
TPA[181]="Saint Vincent and The Grenadines";
TPA[182]="Samoa";
TPA[183]="San Marino";
TPA[184]="Sao Tome and Principe";
TPA[185]="saudi Arabia";
TPA[186]="Senegal";
TPA[187]="Seychelles";
TPA[188]="Sierra Leone";
TPA[189]="Singapore";
TPA[190]="Slovakia (Slovak Republic)";
TPA[191]="Slovenia";
TPA[192]="Solomon Island";
TPA[193]="Somalia";
TPA[194]="South Georgia and The South sandwich Island";
TPA[195]="Spain";
TP[598]="195|Alava";
TP[599]="195|Albacete";
TP[600]="195|Alicante";
TP[601]="195|Almeria";
TP[602]="195|Asturias";
TP[603]="195|Avila";
TP[604]="195|Badajoz";
TP[605]="195|Baleares";
TP[606]="195|Barcelona";
TP[607]="195|Burgos";
TP[608]="195|Caceres";
TP[609]="195|Cadiz";
TP[610]="195|Castellon";
TP[611]="195|Ciudad Real";
TP[612]="195|Cordoba";
TP[613]="195|Cuenca";
TP[614]="195|Gerona";
TP[615]="195|Granada";
TP[616]="195|Guadalajara";
TP[617]="195|Guipuzcoa";
TP[618]="195|Huelva";
TP[619]="195|Huesca";
TP[620]="195|Jaen";
TP[621]="195|La Coruna";
TP[622]="195|La Rioja";
TP[623]="195|Las Palmas";
TP[624]="195|Leon";
TP[625]="195|Lleida";
TP[626]="195|Madrid";
TP[627]="195|Malaga";
TP[628]="195|Murcia";
TP[629]="195|Navarra";
TP[630]="195|Orense";
TP[631]="195|Palencia";
TP[632]="195|Provincia de Lugo";
TP[633]="195|Provincia de Pontevedra";
TP[634]="195|Salamanca";
TP[635]="195|Santa Cruz de Tenerife";
TP[636]="195|Santander";
TP[637]="195|Segovia";
TP[638]="195|Sevilla";
TP[639]="195|Soria";
TP[640]="195|Tarragona";
TP[641]="195|Teruel";
TP[642]="195|Toledo";
TP[643]="195|Valencia";
TP[644]="195|Valladolid";
TP[645]="195|Vizcaya";
TP[646]="195|Zamora";
TP[647]="195|Zaragoza";
TPA[196]="Sri Lanka";
TPA[197]="St. Helena";
TPA[198]="St. Pierre and Miquelon";
TPA[199]="Sudan";
TPA[200]="Suriname";
TPA[201]="Svalbard and Jan mayen island";
TPA[202]="Swaziland";
TPA[203]="Sweden";
TP[648]="203|Alvsborgs";
TP[649]="203|Blekinge";
TP[650]="203|Dalarnas";
TP[651]="203|Gävleborg";
TP[652]="203|Goteborgs och Bohus";
TP[653]="203|Gotland";
TP[654]="203|Halland";
TP[655]="203|Jämtland";
TP[656]="203|Jönköping";
TP[657]="203|Kalmar";
TP[658]="203|Kristianstads";
TP[659]="203|Kronoberg";
TP[660]="203|Malmohus";
TP[661]="203|Norrbotten";
TP[662]="203|Orebro";
TP[663]="203|Ostergötland";
TP[664]="203|Skåne";
TP[665]="203|Skaraborgs";
TP[666]="203|Södermanland";
TP[667]="203|Stockholm";
TP[668]="203|Uppsala";
TP[669]="203|Värmland";
TP[670]="203|Västerbotten";
TP[671]="203|Västernorrland";
TP[672]="203|Västmanland";
TP[673]="203|Västra Götaland";
TPA[204]="Switzerland";
TP[674]="204|Aargau";
TP[675]="204|Appenzell";
TP[676]="204|Basel";
TP[677]="204|Bern";
TP[678]="204|Fribourg";
TP[679]="204|Geneve";
TP[680]="204|Glarus";
TP[681]="204|Graubunden";
TP[682]="204|Jura";
TP[683]="204|Luzern";
TP[684]="204|Neuchatel";
TP[685]="204|Sankt Gallen";
TP[686]="204|Schaffhausen";
TP[687]="204|Schwyz";
TP[688]="204|Solothurn";
TP[689]="204|Thurgau";
TP[690]="204|Ticino";
TP[691]="204|Unterwalden";
TP[692]="204|Uri";
TP[693]="204|Valais";
TP[694]="204|Vaud";
TP[695]="204|Zug";
TP[696]="204|Zurich";
TPA[205]="Syrian Arab Republic";
TPA[206]="Taiwan, Republic of China";
TP[697]="206|Chang-hua";
TP[698]="206|Changhua Hsien";
TP[699]="206|Chiayi";
TP[700]="206|Chiayi Hsien";
TP[701]="206|Chilung";
TP[702]="206|Chung-li";
TP[703]="206|Fend Yung";
TP[704]="206|Hsinchu Hsieh";
TP[705]="206|Hsinchu Shih";
TP[706]="206|Hsin-ying";
TP[707]="206|Hualien";
TP[708]="206|Hualien Hsien";
TP[709]="206|I-lan";
TP[710]="206|Ilan Hsien";
TP[711]="206|Kaohsiung";
TP[712]="206|Kaohsiung Hsien";
TP[713]="206|Kinmen Hsien";
TP[714]="206|Lienchiang Hsien";
TP[715]="206|Miao-li";
TP[716]="206|Miaoli Hsien";
TP[717]="206|Nan-tou";
TP[718]="206|Nantou Hsien";
TP[719]="206|Penghu Hsien";
TP[720]="206|Pingtung";
TP[721]="206|Pingtung Hsien";
TP[722]="206|Taichung";
TP[723]="206|Taichung Hsien";
TP[724]="206|Tainan";
TP[725]="206|Tainan Hsien";
TP[726]="206|Taipei";
TP[727]="206|Taipei Metropolitan";
TP[728]="206|Taitung Hsien";
TP[729]="206|Tao-yuan";
TP[730]="206|Taoyuan Hsien";
TP[731]="206|Yunlin Hsien";
TPA[207]="Tajikistan";
TPA[208]="Tanzania, United Republic of";
TPA[209]="Thailand";
TP[732]="209|Bangkok";
TP[733]="209|Chiang Mai";
TP[734]="209|Hat Yai";
TP[735]="209|Khon Kaen";
TP[736]="209|Nakhon Ratchasima";
TP[737]="209|Nakhon Sawan";
TP[738]="209|Nakhon Si Thammarat";
TP[739]="209|Sara Buri";
TP[740]="209|Songkhla";
TP[741]="209|Ubon Ratchathani";
TPA[210]="Togo";
TPA[211]="Tokelau";
TPA[212]="Tonga";
TPA[213]="Trinidad and Tobago";
TPA[214]="Tunesia";
TPA[215]="Turkmenistan";
TPA[216]="Turks and Caicos Island";
TPA[217]="Turquie";
TP[742]="217|Adana";
TP[743]="217|Adiyaman";
TP[744]="217|Afyon";
TP[745]="217|Agri";
TP[746]="217|Aksaray";
TP[747]="217|Amasya";
TP[748]="217|Ankara";
TP[749]="217|Antalya";
TP[750]="217|Ardahan";
TP[751]="217|Artvin";
TP[752]="217|Aydin";
TP[753]="217|Balikesir";
TP[754]="217|Bartin";
TP[755]="217|Batman";
TP[756]="217|Bayburt";
TP[757]="217|Bilecik";
TP[758]="217|Bingol";
TP[759]="217|Bitlis";
TP[760]="217|Bolu";
TP[761]="217|Burdur";
TP[762]="217|Bursa";
TP[763]="217|Canakkale";
TP[764]="217|Cankiri";
TP[765]="217|Corum";
TP[766]="217|Denizli";
TP[767]="217|Diyarbakir";
TP[768]="217|Edirne";
TP[769]="217|Elazig";
TP[770]="217|Erzincan";
TP[771]="217|Erzurum";
TP[772]="217|Eskisehir";
TP[773]="217|Gaziantep";
TP[774]="217|Giresun";
TP[775]="217|Gumushane";
TP[776]="217|Hakkari";
TP[777]="217|Hatay";
TP[778]="217|Icel";
TP[779]="217|Igdir";
TP[780]="217|Isparta";
TP[781]="217|Istanbul";
TP[782]="217|Izmir";
TP[783]="217|Kahraman Maras";
TP[784]="217|Karaman";
TP[785]="217|Kars";
TP[786]="217|Kastamonu";
TP[787]="217|Kayseri";
TP[788]="217|Kirikkale";
TP[789]="217|Kirklareli";
TP[790]="217|Kirsehir";
TP[791]="217|Kocaeli";
TP[792]="217|Konya";
TP[793]="217|Kutahya";
TP[794]="217|Malatya";
TP[795]="217|Manisa";
TP[796]="217|Mardin";
TP[797]="217|Mugla";
TP[798]="217|Mus";
TP[799]="217|Nevsehir";
TP[800]="217|Nigde";
TP[801]="217|Ordu";
TP[802]="217|Rize";
TP[803]="217|Sakarya";
TP[804]="217|Samsun";
TP[805]="217|Siirt";
TP[806]="217|Sinop";
TP[807]="217|Sirnak";
TP[808]="217|Sivas";
TP[809]="217|Tekirdag";
TP[810]="217|Tokat";
TP[811]="217|Trabzon";
TP[812]="217|Tunceli";
TP[813]="217|Urfa";
TP[814]="217|Usak";
TP[815]="217|Van";
TP[816]="217|Yozgat";
TP[817]="217|Zonguldak";
TPA[218]="Tuvalu";
TPA[219]="Uganda";
TPA[220]="Ukraine";
TPA[221]="United Arab Emirates";
TP[818]="221|Abu Dhabi";
TP[819]="221|Al l`Ayn";
TP[820]="221|Ash Shariqah";
TP[821]="221|Dubayy";
TPA[222]="United Kingdom";
TPA[223]="United States";
TP[822]="223|Alabama";
TP[823]="223|Alaska";
TP[824]="223|Arizona";
TP[825]="223|Arkansas";
TP[826]="223|Californie";
TP[827]="223|Caroline du Nord";
TP[828]="223|Caroline du Sud";
TP[829]="223|Colorado";
TP[830]="223|Connecticut";
TP[831]="223|D.C.";
TP[832]="223|Delaware";
TP[833]="223|Floride";
TP[834]="223|Georgie";
TP[835]="223|Hawaï";
TP[836]="223|Idaho";
TP[837]="223|Illinois";
TP[838]="223|Indiana";
TP[839]="223|Iowa";
TP[840]="223|Kansas";
TP[841]="223|Kentucky";
TP[842]="223|Louisiane";
TP[843]="223|Maine";
TP[844]="223|Maryland";
TP[845]="223|Massachusetts";
TP[846]="223|Michigan";
TP[847]="223|Minnesota";
TP[848]="223|Mississippi";
TP[849]="223|Missouri";
TP[850]="223|Montana";
TP[851]="223|Nebraska";
TP[852]="223|Nevada";
TP[853]="223|New Hampshire";
TP[854]="223|New Jersey";
TP[855]="223|New York";
TP[856]="223|North Dakota ";
TP[857]="223|Nouveau-Mexique";
TP[858]="223|Ohio";
TP[859]="223|Oklahoma";
TP[860]="223|Oregon";
TP[861]="223|Pennsylvanie";
TP[862]="223|Rhode Island";
TP[863]="223|South Dakota ";
TP[864]="223|Tennessee";
TP[865]="223|Texas";
TP[866]="223|Utah";
TP[867]="223|Vermont";
TP[868]="223|Virginie";
TP[869]="223|Washington";
TP[870]="223|West Virginia";
TP[871]="223|Wisconsin";
TP[872]="223|Wyoming";
TPA[224]="United States Minor Outlying Island";
TPA[225]="Uruguay";
TP[873]="225|Artigas";
TP[874]="225|Canelones";
TP[875]="225|Cerro Largo";
TP[876]="225|Colonia";
TP[877]="225|Durazno";
TP[878]="225|Flores";
TP[879]="225|Florida";
TP[880]="225|Lavalleja";
TP[881]="225|Maldonado";
TP[882]="225|Montevideo";
TP[883]="225|Paysandu";
TP[884]="225|Rio Negro";
TP[885]="225|Rivera";
TP[886]="225|Rocha";
TP[887]="225|Salto";
TP[888]="225|San Jose";
TP[889]="225|Soriano";
TP[890]="225|Tacuarembo";
TP[891]="225|Treinta y Tres";
TPA[226]="Uzbekistan";
TPA[227]="Vanuatu";
TPA[228]="Vatican City State (Holy see)";
TPA[229]="Venezuela";
TP[892]="229|Amazonas";
TP[893]="229|Anzoategui";
TP[894]="229|Apure";
TP[895]="229|Aragua";
TP[896]="229|Barinas";
TP[897]="229|Bolivar";
TP[898]="229|Carabobo";
TP[899]="229|Cojedes";
TP[900]="229|Delta Amacuro";
TP[901]="229|Dependencias Federales";
TP[902]="229|Distrito Federal";
TP[903]="229|Estado Nueva Esparta";
TP[904]="229|Falcon";
TP[905]="229|Guarico";
TP[906]="229|Lara";
TP[907]="229|Merida";
TP[908]="229|Miranda";
TP[909]="229|Monagas";
TP[910]="229|Portuguesa";
TP[911]="229|Sucre";
TP[912]="229|Tachira";
TP[913]="229|Trujillo";
TP[914]="229|Yaracuy";
TP[915]="229|Zulia";
TPA[230]="Viet Nam";
TP[916]="230|Haiphong";
TP[917]="230|Hanoi";
TP[918]="230|Ho Chi Minh City";
TPA[231]="Virgin Island (British)";
TPA[232]="Virgin Island (U.S)";
TPA[233]="Wallis and Futuna Island";
TPA[234]="Western Sahara";
TPA[235]="Yemen";
TPA[236]="Yugoslavia";
TPA[237]="Zambia";
TPA[238]="Zimbabwe";


function MAJPays(pays){
nbOptions = pays.length;
for (i=0; i < nbOptions; i++)
pays[0] = null;
pays.options[0] = new Option('Sélectionnez un pays', '');
for (i=1; i<(TPA.length+1); i++)
pays.options[i] = new Option(TPA[i-1], TPA[i-1]);
}	 

function MAJProvinces(pays, province){
nbOptions = province.length;
for (i=0; i < nbOptions; i++)
province[0] = null;

bonNoPays = -1;
//Trouver l'index du pays	
for (i=0; i<TPA.length; i++){
if (TPA[i] == pays[pays.selectedIndex].value){
bonNoPays = i;
i = TPA.length;
}
};	 

cptProvince = 0;
province.options[0] = new Option('Sélectionnez une province ou un état', '');	  	  
for (i=1; i<(TP.length+1); i++){	  
tableauProvincePaysValeur = TP[i-1].split("|");  
if (tableauProvincePaysValeur[0] == bonNoPays){
cptProvince = cptProvince + 1;
province.options[cptProvince] = new Option(tableauProvincePaysValeur[1], tableauProvincePaysValeur[1]);	  
};
};  
province.options[cptProvince + 1] = new Option('Autre', 'Autre');
if (province.selectedIndex == -1)
province.options[0].selected = true;
}

   
   
var re_date = /^\d{1,2}\-\d{1,2}\-\d{4}$/;
var tempo = new Array();
var max_mois = new Array();
for (n=1;n<100;n++)
   {
   if (n==4 || n==6 || n==9 || n==11)
      max_mois[n] = 30;
   else
      max_mois[n] = 31;
   }

function valideDate(dateSaisie)
   {
   t_date = re_date.test(dateSaisie);

   if (t_date)
      t_date = t_date && analyse(dateSaisie,1,2,3);

   return t_date;
   }

function analyse(quoi,p_jour,p_mois,p_an)
   {
   tempo = quoi.split('-')
   jour = eval(tempo[(p_jour-1)]);
   mois = eval(tempo[(p_mois-1)]);
   an = eval(tempo[(p_an-1)]);

   if (bisx(an))
      max_mois[2] = 29;
   else
      max_mois[2] = 28;

   t_tempo = (jour<=max_mois[mois] && mois<=12 && mois>=1 && jour>=1);

   return t_tempo;
   }

function bisx(quoi)
   {
   if ((quoi % 100 == 0) && (quoi % 400 == 0))
      return true;
   else if ((quoi % 4) == 0)
      return true;

   return false;
   }

function DateAdd(startDate, numDays, numMonths, numYears)
   {
   var returnDate = new Date(startDate.getTime());
   var yearsToAdd = numYears;
   var month = returnDate.getMonth()	+ numMonths;
   if (month > 11)
      {
      yearsToAdd = Math.floor((month+1)/12);
      month -= 12*yearsToAdd;
      yearsToAdd += numYears;
      }
   returnDate.setMonth(month);
   returnDate.setFullYear(returnDate.getFullYear()	+ yearsToAdd);
   returnDate.setTime(returnDate.getTime()+60000*60*24*numDays);
   return returnDate;
   }

function YearAdd(startDate, numYears)
   {
   return DateAdd(startDate,0,0,numYears);
   }

function MonthAdd(startDate, numMonths)
   {
   return DateAdd(startDate,0,numMonths,0);
   }

function DayAdd(startDate, numDays)
   {
   return DateAdd(startDate,numDays,0,0);
   }

function DateDiff(date1, date2)
   {
   diff = new Date();
   diff.setTime(Math.abs(date1.getTime() - date2.getTime()));
   timediff = diff.getTime();
   days = Math.floor(timediff / (1000 * 60 * 60 * 24)); 
   timediff -= days * (1000 * 60 * 60 * 24);
   return days;	
   }	

function PopulerJours(mois, jour, annee)
   {
   var vieuxJourSelectionne = jour.selectedIndex;
   
   nbOptions = jour.length;
   for (i=0; i < nbOptions; i++)
      jour[0] = null;

   var nbJours = 0;
   
   switch (mois)
      {
	  case '01' :
	     nbJours = 31;
	     break; 
	  case '02' :
		 if ((annee % 4) == 0)
			if (((annee % 100) == 0) && ((annee % 400) == 0))
			   nbJours = 29;
			else 
			   if ((annee % 100) == 0)
			      nbJours = 28;
			   else
			      nbJours = 29;
		 else
			nbJours = 28;
	     break; 
	  case '03' :
	     nbJours = 31;
	     break; 
	  case '04' :
	     nbJours = 30;
	     break; 
	  case '05' :
	     nbJours = 31;
	     break; 
	  case '06' :
	     nbJours = 30;
	     break; 
	  case '07' :
	     nbJours = 31;
	     break; 
	  case '08' :
	     nbJours = 31;
	     break; 
	  case '09' :
	     nbJours = 30;
	     break; 
	  case '10' :
	     nbJours = 31;
	     break; 
	  case '11' :
	     nbJours = 30;
	     break; 
	  case '12' :
	     nbJours = 31;
	     break; 
	  default : 
         nbJours = 31;
	     break;
      }
	  
   var i = 1;
   while (i <= nbJours)
      {
      if (i < 10)
         nouvelleOption = new Option('0' + i, '0' + i);
      else
         nouvelleOption = new Option(i, i);

      jour.options[(i - 1)] = nouvelleOption;
	  i++;
	  }
   
   if (vieuxJourSelectionne >= jour.length)
      jour[(jour.length - 1)].selected = true;
   else 
      jour[vieuxJourSelectionne].selected = true;
   }


function OuvrirTelechargement(langue)
   {
   WindowTelechargement = open('fenetreTelechargement'+langue+'.cfm', 'Telechargement', 'scrollbars=no,statusbar=no,menubar=no,' + StringGrandeur(423,230));
   }

   
function StringGrandeur (width, height)
   {
   var string = 'width=' + width + ',height=' + height + ',left=' + ((screen.width - width) / 2) + ',top=' + ((screen.height - height) / 2) + ',screenX=' + ((screen.width - width) / 2) + ',screenY=' + ((screen.height - height) / 2);
   return string;
   }

function NumberFormat(num)
{
this.COMMA = ',';
this.PERIOD = '.';
this.DASH = '-'; 
this.LEFT_PAREN = '('; 
this.RIGHT_PAREN = ')'; 
this.LEFT_OUTSIDE = 0; 
this.LEFT_INSIDE = 1;  
this.RIGHT_INSIDE = 2;  
this.RIGHT_OUTSIDE = 3;  
this.LEFT_DASH = 0; 
this.RIGHT_DASH = 1; 
this.PARENTHESIS = 2; 
this.num;
this.numOriginal;
this.hasSeparators = false;  
this.separatorValue;  
this.inputDecimalValue; 
this.decimalValue;  
this.negativeFormat; 
this.negativeRed; 
this.hasCurrency;  
this.currencyPosition;  
this.currencyValue;  
this.places;
this.setNumber = setNumberNF;
this.toUnformatted = toUnformattedNF;
this.setInputDecimal = setInputDecimalNF; 
this.setSeparators = setSeparatorsNF; 
this.setCommas = setCommasNF;
this.setNegativeFormat = setNegativeFormatNF; 
this.setNegativeRed = setNegativeRedNF; 
this.setCurrency = setCurrencyNF;
this.setCurrencyPrefix = setCurrencyPrefixNF;
this.setCurrencyValue = setCurrencyValueNF; 
this.setCurrencyPosition = setCurrencyPositionNF; 
this.setPlaces = setPlacesNF;
this.toFormatted = toFormattedNF;
this.toPercentage = toPercentageNF;
this.getOriginal = getOriginalNF;
this.getRounded = getRoundedNF;
this.preserveZeros = preserveZerosNF;
this.justNumber = justNumberNF;
this.setInputDecimal(this.PERIOD); 
this.setNumber(num); 
this.setCommas(true);
this.setNegativeFormat(this.LEFT_DASH); 
this.setNegativeRed(false); 
this.setCurrency(true);
this.setCurrencyPrefix('$');
this.setPlaces(2);
}
function setInputDecimalNF(val)
{
this.inputDecimalValue = val;
}
function setNumberNF(num)
{
this.numOriginal = num;
this.num = this.justNumber(num);
}
function toUnformattedNF()
{
return (this.num);
}
function getOriginalNF()
{
return (this.numOriginal);
}
function setNegativeFormatNF(format)
{
this.negativeFormat = format;
}
function setNegativeRedNF(isRed)
{
this.negativeRed = isRed;
}
function setSeparatorsNF(isC, separator, decimal)
{
this.hasSeparators = isC;
if (separator == null) separator = this.COMMA;
if (decimal == null) decimal = this.PERIOD;
if (separator == decimal)
{
this.decimalValue = (decimal == this.PERIOD) ? this.COMMA : this.PERIOD;
}
else
{
this.decimalValue = decimal;
}
this.separatorValue = separator;
}
function setCommasNF(isC)
{
this.setSeparators(isC, this.COMMA, this.PERIOD);
}
function setCurrencyNF(isC)
{
this.hasCurrency = isC;
}
function setCurrencyValueNF(val)
{
this.currencyValue = val;
}
function setCurrencyPrefixNF(cp)
{
this.setCurrencyValue(cp);
this.setCurrencyPosition(this.LEFT_OUTSIDE);
}
function setCurrencyPositionNF(cp)
{
this.currencyPosition = cp
}
function setPlacesNF(p)
{
this.places = p;
}
function toFormattedNF()
{
var pos;
var nNum = this.num; 
var nStr;            
var splitString = new Array(2);   
nNum = this.getRounded(nNum);
nStr = this.preserveZeros(Math.abs(nNum)); 
if (nStr.indexOf(this.PERIOD) == -1)
{
splitString[0] = nStr;
splitString[1] = '';
}
else
{
splitString = nStr.split(this.PERIOD, 2);
}
if (this.hasSeparators)
{
pos = splitString[0].length;
while (pos > 0)
{
pos -= 3;
if (pos <= 0) break;
splitString[0] = splitString[0].substring(0,pos)
+ this.separatorValue
+ splitString[0].substring(pos, splitString[0].length);
}
}
if (splitString[1].length > 0)
{
nStr = splitString[0] + this.decimalValue + splitString[1];
}
else
{
nStr = splitString[0];
}
var c0 = '';
var n0 = '';
var c1 = '';
var n1 = '';
var n2 = '';
var c2 = '';
var n3 = '';
var c3 = '';
var negSignL = (this.negativeFormat == this.PARENTHESIS) ? this.LEFT_PAREN : this.DASH;
var negSignR = (this.negativeFormat == this.PARENTHESIS) ? this.RIGHT_PAREN : this.DASH;
if (this.currencyPosition == this.LEFT_OUTSIDE)
{
if (nNum < 0)
{
if (this.negativeFormat == this.LEFT_DASH || this.negativeFormat == this.PARENTHESIS) n1 = negSignL;
if (this.negativeFormat == this.RIGHT_DASH || this.negativeFormat == this.PARENTHESIS) n2 = negSignR;
}
if (this.hasCurrency) c0 = this.currencyValue;
}
else if (this.currencyPosition == this.LEFT_INSIDE)
{
if (nNum < 0)
{
if (this.negativeFormat == this.LEFT_DASH || this.negativeFormat == this.PARENTHESIS) n0 = negSignL;
if (this.negativeFormat == this.RIGHT_DASH || this.negativeFormat == this.PARENTHESIS) n3 = negSignR;
}
if (this.hasCurrency) c1 = this.currencyValue;
}
else if (this.currencyPosition == this.RIGHT_INSIDE)
{
if (nNum < 0)
{
if (this.negativeFormat == this.LEFT_DASH || this.negativeFormat == this.PARENTHESIS) n0 = negSignL;
if (this.negativeFormat == this.RIGHT_DASH || this.negativeFormat == this.PARENTHESIS) n3 = negSignR;
}
if (this.hasCurrency) c2 = this.currencyValue;
}
else if (this.currencyPosition == this.RIGHT_OUTSIDE)
{
if (nNum < 0)
{
if (this.negativeFormat == this.LEFT_DASH || this.negativeFormat == this.PARENTHESIS) n1 = negSignL;
if (this.negativeFormat == this.RIGHT_DASH || this.negativeFormat == this.PARENTHESIS) n2 = negSignR;
}
if (this.hasCurrency) c3 = this.currencyValue;
}
nStr = c0 + n0 + c1 + n1 + nStr + n2 + c2 + n3 + c3;
if (this.negativeRed && nNum < 0)
{
nStr = '<font color="red">' + nStr + '</font>';
}
return (nStr);
}
function toPercentageNF()
{
nNum = this.num * 100;
nNum = this.getRounded(nNum);
return nNum + '%';
}
function getRoundedNF(val)
{
var factor;
var i;
factor = 1;
for (i=0; i<this.places; i++)
{	factor *= 10; }
val *= factor;
val = Math.round(val);
val /= factor;
return (val);
}
function preserveZerosNF(val)
{
var i;
val = val + '';
if (this.places <= 0) return val; 
var decimalPos = val.indexOf('.');
if (decimalPos == -1)
{
val += '.';
for (i=0; i<this.places; i++)
{
val += '0';
}
}
else
{
var actualDecimals = (val.length - 1) - decimalPos;
var difference = this.places - actualDecimals;
for (i=0; i<difference; i++)
{
val += '0';
}
}
return val;
}
function justNumberNF(val)
{
val = (val==null) ? 0 : val;
var newVal = val + ""; 
var isPercentage = false;
var isFormattedNeg = false;
if (newVal.indexOf('%') != -1)
{
newVal = newVal.replace(/\%/g, '');
isPercentage = true;
}
if (newVal.indexOf(this.DASH) != -1
|| (newVal.indexOf(this.LEFT_PAREN) != -1 && newVal.indexOf(this.RIGHT_PAREN) != -1))
{
newVal = newVal.replace(/[\-\(\)]/g, '');
isFormattedNeg = true;
}
if (this.inputDecimalValue != this.PERIOD)
{
newVal = newVal.replace(/\./g, '');
}
var itrDecimal;
var tempVal = '';
var foundDecimal = false;
for (itrDecimal=0; itrDecimal<newVal.length; itrDecimal++)
{
if (newVal.charAt(itrDecimal) == this.inputDecimalValue)
{
if (foundDecimal)
{
}
else
{
tempVal = tempVal + this.PERIOD;
foundDecimal = true;
}
}
else
{
tempVal = tempVal + newVal.charAt(itrDecimal);
}
}
newVal = tempVal;
if (isFormattedNeg) newVal = '-' + newVal;
if (isNaN(newVal))
{
newVal = parseFloat(newVal.replace(/[^\d\.\-]/g, ''));
newVal = (isNaN(newVal) ? 0 : newVal); 
}
else if (!isFinite(newVal))
{
newVal = 0;
}
if (isPercentage)
{
newVal = newVal / 100;
}
return newVal;
}   

var nf = new NumberFormat(0);
nf.setCurrencyPrefix('');	   
   
function SetMaxChar(champ, max, langue)
   {
   if (champ.value.length > max)
      {
      champ.value = champ.value.substring(0,max);
      if (langue == "_ang")
         alert("Your message has exceeded the maximum length for sending a page and has been automatically truncated to "+max+" characters.");
      else
         alert("Votre message dépasse le nombre de caractères permis et a été réduit à "+max+" caractères."); 
      }
   }

	
	
function MAJProvincesAutres(province, formulaire){
   var nomChamps = province.name;
   if (typeof(formulaire) == 'undefined')
      formulaire = 'document.Donnees.';
   obj = eval(formulaire + nomChamps + 'Autre');
   if (typeof(obj) != 'undefined'){
       if(province[province.selectedIndex].value == 'Autre'){
        obj.disabled = false;
   }else{
       obj.disabled = true;
       obj.value = "";
   }
 }
}

function ActiverChampsAutre(champsSi,champsParent,champsAutre)
{   
  obj = document.getElementById(champsSi);  
  obj2 = document.getElementById(champsAutre);
    
  if (champsParent[champsParent.selectedIndex].value == "Autre"){
    obj.className = '';
	obj2.disabled = false;
  }
  else{
    obj.className = 'desactive';
	obj2.disabled = 'disabled';
	obj2.value = '';
  }	  
}

	
// Utilisé pour empêcher les double-clicks...

   var estEnvoye;
   estEnvoye=false;