New Case Study:See how Anthropic automated 95% of dependency reviews with Socket.Learn More
Socket
Sign inDemoInstall
Socket

phone

Package Overview
Dependencies
Maintainers
1
Versions
125
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

phone - npm Package Compare versions

Comparing version 0.0.4 to 0.0.5

1200

lib/index.js

@@ -1,599 +0,588 @@

/**
*
* if there is + sign in the phone, it will skip ALL validation and simply return the clean E.164 phone format
*
* @param phone
* @param country
* @returns {*}
*/
var iso3166_data = [
{"alpha2": "AW", "alpha3": "ABW", "country_code": "297", "phone_number_lengths": [7], "validation_begin_with": ["5", "6", "7", "9"]},
{"alpha2": "AF", "alpha3": "AFG", "country_code": "93", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "AO", "alpha3": "AGO", "country_code": "244", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "AI", "alpha3": "AIA", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": ["5", "7"]},
{"alpha2": "AX", "alpha3": "ALA", "country_code": "358", "phone_number_lengths": [6, 7, 8], "validation_begin_with": ["18"]},
{"alpha2": "AL", "alpha3": "ALB", "country_code": "355", "phone_number_lengths": [8], "validation_begin_with": ["6"]},
{"alpha2": "AD", "alpha3": "AND", "country_code": "376", "phone_number_lengths": [6], "validation_begin_with": ["3", "4", "6"]},
{"alpha2": "AN", "alpha3": "ANT", "country_code": "599", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "AE", "alpha3": "ARE", "country_code": "971", "phone_number_lengths": [9], "validation_begin_with": ["5"]},
{"alpha2": "AR", "alpha3": "ARG", "country_code": "54", "phone_number_lengths": [10], "validation_begin_with": []},
{"alpha2": "AM", "alpha3": "ARM", "country_code": "374", "phone_number_lengths": [8], "validation_begin_with": ["5", "7", "9"]},
{"alpha2": "AS", "alpha3": "ASM", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": ["733", "258"]},
{"alpha2": "AQ", "alpha3": "ATA", "country_code": "672", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "TF", "alpha3": "ATF", "country_code": "", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "AG", "alpha3": "ATG", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": ["4", "7"]},
{"alpha2": "AU", "alpha3": "AUS", "country_code": "61", "phone_number_lengths": [9], "validation_begin_with": ["4"]},
{"alpha2": "AT", "alpha3": "AUT", "country_code": "43", "phone_number_lengths": [10], "validation_begin_with": ["6"]},
{"alpha2": "AZ", "alpha3": "AZE", "country_code": "994", "phone_number_lengths": [9], "validation_begin_with": ["4", "5", "6", "7"]},
{"alpha2": "BI", "alpha3": "BDI", "country_code": "257", "phone_number_lengths": [8], "validation_begin_with": ["7", "29"]},
{"alpha2": "BE", "alpha3": "BEL", "country_code": "32", "phone_number_lengths": [9], "validation_begin_with": ["4"]},
{"alpha2": "BJ", "alpha3": "BEN", "country_code": "229", "phone_number_lengths": [8], "validation_begin_with": ["9"]},
{"alpha2": "BF", "alpha3": "BFA", "country_code": "226", "phone_number_lengths": [8], "validation_begin_with": ["6", "7"]},
{"alpha2": "BD", "alpha3": "BGD", "country_code": "880", "phone_number_lengths": [8, 9, 10], "validation_begin_with": ["1"]},
{"alpha2": "BG", "alpha3": "BGR", "country_code": "359", "phone_number_lengths": [8, 9], "validation_begin_with": ["87", "88", "89", "98", "99", "43"]},
{"alpha2": "BH", "alpha3": "BHR", "country_code": "973", "phone_number_lengths": [8], "validation_begin_with": ["3"]},
{"alpha2": "BS", "alpha3": "BHS", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": ["3", "4", "5", "6", "7"]},
{"alpha2": "BA", "alpha3": "BIH", "country_code": "387", "phone_number_lengths": [8], "validation_begin_with": ["6"]},
{"alpha2": "BL", "alpha3": "BLM", "country_code": "590", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "BY", "alpha3": "BLR", "country_code": "375", "phone_number_lengths": [9], "validation_begin_with": ["25", "29", "33", "44"]},
{"alpha2": "BZ", "alpha3": "BLZ", "country_code": "501", "phone_number_lengths": [7], "validation_begin_with": ["6"]},
{"alpha2": "BM", "alpha3": "BMU", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": ["3", "5", "7"]},
{"alpha2": "BO", "alpha3": "BOL", "country_code": "591", "phone_number_lengths": [8], "validation_begin_with": ["7"]},
{"alpha2": "BR", "alpha3": "BRA", "country_code": "55", "phone_number_lengths": [10, 11], "validation_begin_with": []},
{"alpha2": "BB", "alpha3": "BRB", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "BN", "alpha3": "BRN", "country_code": "673", "phone_number_lengths": [7], "validation_begin_with": ["7", "8"]},
{"alpha2": "BT", "alpha3": "BTN", "country_code": "975", "phone_number_lengths": [8], "validation_begin_with": ["17"]},
{"alpha2": "BV", "alpha3": "BVT", "country_code": "", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "BW", "alpha3": "BWA", "country_code": "267", "phone_number_lengths": [8], "validation_begin_with": ["71", "72", "73", "74", "75", "76"]},
{"alpha2": "CF", "alpha3": "CAF", "country_code": "236", "phone_number_lengths": [8], "validation_begin_with": ["7"]},
{"alpha2": "CA", "alpha3": "CAN", "country_code": "1", "phone_number_lengths": [10],
"validation_begin_with": ["204", "226", "236", "249", "250", "289", "306", "343", "365", "387", "403", "416",
"418", "431", "437", "438", "450", "506", "514", "519", "579", "581", "587", "604", "613", "639", "647",
"672", "705", "709", "742", "778", "780", "807", "819", "825", "867", "873", "902", "905"]},
{"alpha2": "CC", "alpha3": "CCK", "country_code": "61", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "CH", "alpha3": "CHE", "country_code": "41", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "CL", "alpha3": "CHL", "country_code": "56", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "CN", "alpha3": "CHN", "country_code": "86", "phone_number_lengths": [11], "validation_begin_with": ["13", "14", "15", "18"]},
{"alpha2": "CI", "alpha3": "CIV", "country_code": "225", "phone_number_lengths": [8], "validation_begin_with": ["0", "4", "5", "6"]},
{"alpha2": "CM", "alpha3": "CMR", "country_code": "237", "phone_number_lengths": [8], "validation_begin_with": ["7", "9"]},
{"alpha2": "CD", "alpha3": "COD", "country_code": "243", "phone_number_lengths": [9], "validation_begin_with": ["8", "9"]},
{"alpha2": "CG", "alpha3": "COG", "country_code": "242", "phone_number_lengths": [9], "validation_begin_with": ["0"]},
{"alpha2": "CK", "alpha3": "COK", "country_code": "682", "phone_number_lengths": [5], "validation_begin_with": ["5", "7"]},
{"alpha2": "CO", "alpha3": "COL", "country_code": "57", "phone_number_lengths": [10], "validation_begin_with": ["3"]},
{"alpha2": "KM", "alpha3": "COM", "country_code": "269", "phone_number_lengths": [7], "validation_begin_with": ["3", "76"]},
{"alpha2": "CV", "alpha3": "CPV", "country_code": "238", "phone_number_lengths": [7], "validation_begin_with": ["5", "9"]},
{"alpha2": "CR", "alpha3": "CRI", "country_code": "506", "phone_number_lengths": [8], "validation_begin_with": ["5", "6", "7", "8"]},
{"alpha2": "CU", "alpha3": "CUB", "country_code": "53", "phone_number_lengths": [8], "validation_begin_with": ["5"]},
{"alpha2": "CX", "alpha3": "CXR", "country_code": "61", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "KY", "alpha3": "CYM", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "CY", "alpha3": "CYP", "country_code": "357", "phone_number_lengths": [8], "validation_begin_with": ["9"]},
{"alpha2": "CZ", "alpha3": "CZE", "country_code": "420", "phone_number_lengths": [9], "validation_begin_with": ["6", "7"]},
{"alpha2": "DE", "alpha3": "DEU", "country_code": "49", "phone_number_lengths": [10, 11], "validation_begin_with": ["15", "16", "17"]},
{"alpha2": "DJ", "alpha3": "DJI", "country_code": "253", "phone_number_lengths": [8], "validation_begin_with": ["77"]},
{"alpha2": "DM", "alpha3": "DMA", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "DK", "alpha3": "DNK", "country_code": "45", "phone_number_lengths": [8], "validation_begin_with": []},
{"alpha2": "DO", "alpha3": "DOM", "country_code": "1", "phone_number_lengths": [10], "validation_begin_with": ["809", "829", "849"]},
{"alpha2": "DZ", "alpha3": "DZA", "country_code": "213", "phone_number_lengths": [9], "validation_begin_with": ["5", "6", "7"]},
{"alpha2": "EC", "alpha3": "ECU", "country_code": "593", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "EG", "alpha3": "EGY", "country_code": "20", "phone_number_lengths": [10], "validation_begin_with": ["1"]},
{"alpha2": "ER", "alpha3": "ERI", "country_code": "291", "phone_number_lengths": [7], "validation_begin_with": ["1", "7", "8"]},
{"alpha2": "EH", "alpha3": "ESH", "country_code": "212", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "ES", "alpha3": "ESP", "country_code": "34", "phone_number_lengths": [9], "validation_begin_with": ["6", "7"]},
{"alpha2": "EE", "alpha3": "EST", "country_code": "372", "phone_number_lengths": [8], "validation_begin_with": ["5"]},
{"alpha2": "ET", "alpha3": "ETH", "country_code": "251", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "FI", "alpha3": "FIN", "country_code": "358", "phone_number_lengths": [9], "validation_begin_with": ["4", "5"]},
{"alpha2": "FJ", "alpha3": "FJI", "country_code": "679", "phone_number_lengths": [7], "validation_begin_with": ["7", "9"]},
{"alpha2": "FK", "alpha3": "FLK", "country_code": "500", "phone_number_lengths": [5], "validation_begin_with": ["5", "6"]},
{"alpha2": "FR", "alpha3": "FRA", "country_code": "33", "phone_number_lengths": [9], "validation_begin_with": ["6"]},
{"alpha2": "FO", "alpha3": "FRO", "country_code": "298", "phone_number_lengths": [6], "validation_begin_with": []},
{"alpha2": "FM", "alpha3": "FSM", "country_code": "691", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "GA", "alpha3": "GAB", "country_code": "241", "phone_number_lengths": [8], "validation_begin_with": ["05", "06", "07"]},
//http://www.area-codes.org.uk/ http://www.area-codes.org.uk/07-mobile-codes.php
{"alpha2": "GB", "alpha3": "GBR", "country_code": "44", "phone_number_lengths": [10], "validation_begin_with": ["7"]},
{"alpha2": "GE", "alpha3": "GEO", "country_code": "995", "phone_number_lengths": [9], "validation_begin_with": ["5", "7"]},
{"alpha2": "GG", "alpha3": "GGY", "country_code": "44", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "GH", "alpha3": "GHA", "country_code": "233", "phone_number_lengths": [9], "validation_begin_with": ["2", "5"]},
{"alpha2": "GI", "alpha3": "GIB", "country_code": "350", "phone_number_lengths": [8], "validation_begin_with": ["5"]},
{"alpha2": "GN", "alpha3": "GIN", "country_code": "224", "phone_number_lengths": [8], "validation_begin_with": ["6"]},
{"alpha2": "GP", "alpha3": "GLP", "country_code": "590", "phone_number_lengths": [9], "validation_begin_with": ["690"]},
{"alpha2": "GM", "alpha3": "GMB", "country_code": "220", "phone_number_lengths": [7], "validation_begin_with": ["7", "9"]},
{"alpha2": "GW", "alpha3": "GNB", "country_code": "245", "phone_number_lengths": [7], "validation_begin_with": ["5", "6", "7"]},
{"alpha2": "GQ", "alpha3": "GNQ", "country_code": "240", "phone_number_lengths": [9], "validation_begin_with": ["222", "551"]},
{"alpha2": "GR", "alpha3": "GRC", "country_code": "30", "phone_number_lengths": [10], "validation_begin_with": ["6"]},
{"alpha2": "GD", "alpha3": "GRD", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "GL", "alpha3": "GRL", "country_code": "299", "phone_number_lengths": [6], "validation_begin_with": ["4", "5"]},
{"alpha2": "GT", "alpha3": "GTM", "country_code": "502", "phone_number_lengths": [8], "validation_begin_with": ["3", "4", "5"]},
{"alpha2": "GF", "alpha3": "GUF", "country_code": "594", "phone_number_lengths": [9], "validation_begin_with": ["694"]},
{"alpha2": "GU", "alpha3": "GUM", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "GY", "alpha3": "GUY", "country_code": "592", "phone_number_lengths": [7], "validation_begin_with": ["6"]},
{"alpha2": "HK", "alpha3": "HKG", "country_code": "852", "phone_number_lengths": [8], "validation_begin_with": ["5", "6", "9"]},
{"alpha2": "HM", "alpha3": "HMD", "country_code": "", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "HN", "alpha3": "HND", "country_code": "504", "phone_number_lengths": [8], "validation_begin_with": ["3", "7", "8", "9"]},
{"alpha2": "HR", "alpha3": "HRV", "country_code": "385", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "HT", "alpha3": "HTI", "country_code": "509", "phone_number_lengths": [8], "validation_begin_with": ["3", "4"]},
{"alpha2": "HU", "alpha3": "HUN", "country_code": "36", "phone_number_lengths": [9], "validation_begin_with": ["20", "30", "31", "70"]},
{"alpha2": "ID", "alpha3": "IDN", "country_code": "62", "phone_number_lengths": [9, 10, 11], "validation_begin_with": ["8"]},
{"alpha2": "IM", "alpha3": "IMN", "country_code": "44", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "IN", "alpha3": "IND", "country_code": "91", "phone_number_lengths": [10], "validation_begin_with": ["7", "8", "9"]},
{"alpha2": "IO", "alpha3": "IOT", "country_code": "246", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "IE", "alpha3": "IRL", "country_code": "353", "phone_number_lengths": [9], "validation_begin_with": ["82", "83", "84", "85", "86", "87", "88", "89"]},
{"alpha2": "IR", "alpha3": "IRN", "country_code": "98", "phone_number_lengths": [10], "validation_begin_with": ["9"]},
{"alpha2": "IQ", "alpha3": "IRQ", "country_code": "964", "phone_number_lengths": [10], "validation_begin_with": ["7"]},
// Iceland only have 7 digits, no more area code for mobile
{"alpha2": "IS", "alpha3": "ISL", "country_code": "354", "phone_number_lengths": [7], "validation_begin_with": ["6", "7", "8"]},
{"alpha2": "IL", "alpha3": "ISR", "country_code": "972", "phone_number_lengths": [9], "validation_begin_with": ["5"]},
{"alpha2": "IT", "alpha3": "ITA", "country_code": "39", "phone_number_lengths": [10], "validation_begin_with": ["3"]},
{"alpha2": "JM", "alpha3": "JAM", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "JE", "alpha3": "JEY", "country_code": "44", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "JO", "alpha3": "JOR", "country_code": "962", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "JP", "alpha3": "JPN", "country_code": "81", "phone_number_lengths": [10], "validation_begin_with": ["70", "80", "90"]},
{"alpha2": "KZ", "alpha3": "KAZ", "country_code": "7", "phone_number_lengths": [10], "validation_begin_with": ["70", "77"]},
{"alpha2": "KE", "alpha3": "KEN", "country_code": "254", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "KG", "alpha3": "KGZ", "country_code": "996", "phone_number_lengths": [9], "validation_begin_with": ["5", "7"]},
{"alpha2": "KH", "alpha3": "KHM", "country_code": "855", "phone_number_lengths": [8, 9], "validation_begin_with": ["1", "6", "7", "8", "9"]},
{"alpha2": "KI", "alpha3": "KIR", "country_code": "686", "phone_number_lengths": [5], "validation_begin_with": ["9", "30"]},
{"alpha2": "KN", "alpha3": "KNA", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "KR", "alpha3": "KOR", "country_code": "82", "phone_number_lengths": [9, 10], "validation_begin_with": ["1"]},
{"alpha2": "KW", "alpha3": "KWT", "country_code": "965", "phone_number_lengths": [8], "validation_begin_with": ["5", "6", "9"]},
{"alpha2": "LA", "alpha3": "LAO", "country_code": "856", "phone_number_lengths": [10], "validation_begin_with": ["20"]},
{"alpha2": "LB", "alpha3": "LBN", "country_code": "961", "phone_number_lengths": [7, 8], "validation_begin_with": ["3", "7"]},
{"alpha2": "LR", "alpha3": "LBR", "country_code": "231", "phone_number_lengths": [7, 8], "validation_begin_with": ["4", "5", "6", "7"]},
{"alpha2": "LY", "alpha3": "LBY", "country_code": "218", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "LC", "alpha3": "LCA", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "LI", "alpha3": "LIE", "country_code": "423", "phone_number_lengths": [7], "validation_begin_with": ["7"]},
{"alpha2": "LK", "alpha3": "LKA", "country_code": "94", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "LS", "alpha3": "LSO", "country_code": "266", "phone_number_lengths": [8], "validation_begin_with": ["5", "6"]},
{"alpha2": "LT", "alpha3": "LTU", "country_code": "370", "phone_number_lengths": [8], "validation_begin_with": ["6"]},
{"alpha2": "LU", "alpha3": "LUX", "country_code": "352", "phone_number_lengths": [9], "validation_begin_with": ["6"]},
{"alpha2": "LV", "alpha3": "LVA", "country_code": "371", "phone_number_lengths": [8], "validation_begin_with": ["2"]},
{"alpha2": "MO", "alpha3": "MAC", "country_code": "853", "phone_number_lengths": [8], "validation_begin_with": ["6"]},
{"alpha2": "MF", "alpha3": "MAF", "country_code": "590", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "MA", "alpha3": "MAR", "country_code": "212", "phone_number_lengths": [9], "validation_begin_with": ["6"]},
{"alpha2": "MC", "alpha3": "MCO", "country_code": "377", "phone_number_lengths": [8, 9], "validation_begin_with": ["4", "6"]},
{"alpha2": "MD", "alpha3": "MDA", "country_code": "373", "phone_number_lengths": [8], "validation_begin_with": ["6", "7"]},
{"alpha2": "MG", "alpha3": "MDG", "country_code": "261", "phone_number_lengths": [9], "validation_begin_with": ["3"]},
{"alpha2": "MV", "alpha3": "MDV", "country_code": "960", "phone_number_lengths": [7], "validation_begin_with": ["7", "9"]},
{"alpha2": "MX", "alpha3": "MEX", "country_code": "52", "phone_number_lengths": [11], "validation_begin_with": ["1"]},
{"alpha2": "MH", "alpha3": "MHL", "country_code": "692", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "MK", "alpha3": "MKD", "country_code": "389", "phone_number_lengths": [8], "validation_begin_with": ["7"]},
{"alpha2": "ML", "alpha3": "MLI", "country_code": "223", "phone_number_lengths": [8], "validation_begin_with": ["6", "7"]},
{"alpha2": "MT", "alpha3": "MLT", "country_code": "356", "phone_number_lengths": [8], "validation_begin_with": ["79", "99"]},
{"alpha2": "MM", "alpha3": "MMR", "country_code": "95", "phone_number_lengths": [8], "validation_begin_with": ["9"]},
{"alpha2": "ME", "alpha3": "MNE", "country_code": "382", "phone_number_lengths": [8], "validation_begin_with": ["6"]},
{"alpha2": "MN", "alpha3": "MNG", "country_code": "976", "phone_number_lengths": [8], "validation_begin_with": ["5", "8", "9"]},
{"alpha2": "MP", "alpha3": "MNP", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "MZ", "alpha3": "MOZ", "country_code": "258", "phone_number_lengths": [9], "validation_begin_with": ["8"]},
{"alpha2": "MR", "alpha3": "MRT", "country_code": "222", "phone_number_lengths": [8], "validation_begin_with": []},
{"alpha2": "MS", "alpha3": "MSR", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "MQ", "alpha3": "MTQ", "country_code": "596", "phone_number_lengths": [9], "validation_begin_with": ["696"]},
{"alpha2": "MU", "alpha3": "MUS", "country_code": "230", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "MW", "alpha3": "MWI", "country_code": "265", "phone_number_lengths": [9], "validation_begin_with": ["77", "88", "99"]},
{"alpha2": "MY", "alpha3": "MYS", "country_code": "60", "phone_number_lengths": [9, 10], "validation_begin_with": ["1"]},
{"alpha2": "YT", "alpha3": "MYT", "country_code": "269", "phone_number_lengths": [9], "validation_begin_with": ["639"]},
{"alpha2": "NA", "alpha3": "NAM", "country_code": "264", "phone_number_lengths": [9], "validation_begin_with": ["60", "81", "82", "85"]},
{"alpha2": "NC", "alpha3": "NCL", "country_code": "687", "phone_number_lengths": [6], "validation_begin_with": []},
{"alpha2": "NE", "alpha3": "NER", "country_code": "227", "phone_number_lengths": [8], "validation_begin_with": ["9"]},
{"alpha2": "NF", "alpha3": "NFK", "country_code": "672", "phone_number_lengths": [5], "validation_begin_with": ["5", "8"]},
{"alpha2": "NG", "alpha3": "NGA", "country_code": "234", "phone_number_lengths": [10], "validation_begin_with": ["70", "80", "81"]},
{"alpha2": "NI", "alpha3": "NIC", "country_code": "505", "phone_number_lengths": [8], "validation_begin_with": ["8"]},
{"alpha2": "NU", "alpha3": "NIU", "country_code": "683", "phone_number_lengths": [4], "validation_begin_with": []},
{"alpha2": "NL", "alpha3": "NLD", "country_code": "31", "phone_number_lengths": [9], "validation_begin_with": ["6"]},
{"alpha2": "NO", "alpha3": "NOR", "country_code": "47", "phone_number_lengths": [8], "validation_begin_with": ["4", "9"]},
{"alpha2": "NP", "alpha3": "NPL", "country_code": "977", "phone_number_lengths": [10], "validation_begin_with": ["97", "98"]},
{"alpha2": "NR", "alpha3": "NRU", "country_code": "674", "phone_number_lengths": [7], "validation_begin_with": ["555"]},
{"alpha2": "NZ", "alpha3": "NZL", "country_code": "64", "phone_number_lengths": [8, 9, 10], "validation_begin_with": ["2"]},
{"alpha2": "OM", "alpha3": "OMN", "country_code": "968", "phone_number_lengths": [8], "validation_begin_with": ["9"]},
{"alpha2": "PK", "alpha3": "PAK", "country_code": "92", "phone_number_lengths": [10], "validation_begin_with": ["3"]},
{"alpha2": "PA", "alpha3": "PAN", "country_code": "507", "phone_number_lengths": [8], "validation_begin_with": ["5", "6"]},
{"alpha2": "PN", "alpha3": "PCN", "country_code": "", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "PE", "alpha3": "PER", "country_code": "51", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "PH", "alpha3": "PHL", "country_code": "63", "phone_number_lengths": [10], "validation_begin_with": ["9"]},
{"alpha2": "PW", "alpha3": "PLW", "country_code": "680", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "PG", "alpha3": "PNG", "country_code": "675", "phone_number_lengths": [8], "validation_begin_with": ["7"]},
{"alpha2": "PL", "alpha3": "POL", "country_code": "48", "phone_number_lengths": [9], "validation_begin_with": ["5", "6", "7", "8"]},
{"alpha2": "PR", "alpha3": "PRI", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "KP", "alpha3": "PRK", "country_code": "850", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "PT", "alpha3": "PRT", "country_code": "351", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "PY", "alpha3": "PRY", "country_code": "595", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "PS", "alpha3": "PSE", "country_code": "970", "phone_number_lengths": [9], "validation_begin_with": ["5"]},
{"alpha2": "PF", "alpha3": "PYF", "country_code": "689", "phone_number_lengths": [6], "validation_begin_with": []},
{"alpha2": "QA", "alpha3": "QAT", "country_code": "974", "phone_number_lengths": [8], "validation_begin_with": ["33", "55", "66", "77"]},
{"alpha2": "RE", "alpha3": "REU", "country_code": "262", "phone_number_lengths": [9], "validation_begin_with": ["692", "693"]},
{"alpha2": "RO", "alpha3": "ROU", "country_code": "40", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "RU", "alpha3": "RUS", "country_code": "7", "phone_number_lengths": [10], "validation_begin_with": ["9"]},
{"alpha2": "RW", "alpha3": "RWA", "country_code": "250", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "SA", "alpha3": "SAU", "country_code": "966", "phone_number_lengths": [9], "validation_begin_with": ["5"]},
{"alpha2": "SD", "alpha3": "SDN", "country_code": "249", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "SN", "alpha3": "SEN", "country_code": "221", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "SG", "alpha3": "SGP", "country_code": "65", "phone_number_lengths": [8], "validation_begin_with": ["8", "9"]},
{"alpha2": "GS", "alpha3": "SGS", "country_code": "500", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "SH", "alpha3": "SHN", "country_code": "290", "phone_number_lengths": [4], "validation_begin_with": []},
{"alpha2": "SJ", "alpha3": "SJM", "country_code": "47", "phone_number_lengths": [8], "validation_begin_with": []},
{"alpha2": "SB", "alpha3": "SLB", "country_code": "677", "phone_number_lengths": [7], "validation_begin_with": ["7", "8"]},
{"alpha2": "SL", "alpha3": "SLE", "country_code": "232", "phone_number_lengths": [8], "validation_begin_with": ["21", "25", "30", "33", "34", "40", "44", "50", "55", "76", "77", "78", "79", "88"]},
{"alpha2": "SV", "alpha3": "SLV", "country_code": "503", "phone_number_lengths": [8], "validation_begin_with": ["7"]},
{"alpha2": "SM", "alpha3": "SMR", "country_code": "378", "phone_number_lengths": [10], "validation_begin_with": ["3", "6"]},
{"alpha2": "SO", "alpha3": "SOM", "country_code": "252", "phone_number_lengths": [8], "validation_begin_with": ["9"]},
{"alpha2": "PM", "alpha3": "SPM", "country_code": "508", "phone_number_lengths": [6], "validation_begin_with": ["55"]},
{"alpha2": "RS", "alpha3": "SRB", "country_code": "381", "phone_number_lengths": [8, 9], "validation_begin_with": ["6"]},
{"alpha2": "ST", "alpha3": "STP", "country_code": "239", "phone_number_lengths": [7], "validation_begin_with": ["98", "99"]},
{"alpha2": "SR", "alpha3": "SUR", "country_code": "597", "phone_number_lengths": [7], "validation_begin_with": ["6", "7", "8"]},
{"alpha2": "SK", "alpha3": "SVK", "country_code": "421", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "SI", "alpha3": "SVN", "country_code": "386", "phone_number_lengths": [8], "validation_begin_with": ["3", "4", "5", "6", "7"]},
{"alpha2": "SE", "alpha3": "SWE", "country_code": "46", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "SZ", "alpha3": "SWZ", "country_code": "268", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "SC", "alpha3": "SYC", "country_code": "248", "phone_number_lengths": [7], "validation_begin_with": ["2"]},
{"alpha2": "SY", "alpha3": "SYR", "country_code": "963", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "TC", "alpha3": "TCA", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": ["2", "3", "4"]},
{"alpha2": "TD", "alpha3": "TCD", "country_code": "235", "phone_number_lengths": [8], "validation_begin_with": ["6", "7", "9"]},
{"alpha2": "TG", "alpha3": "TGO", "country_code": "228", "phone_number_lengths": [8], "validation_begin_with": ["9"]},
{"alpha2": "TH", "alpha3": "THA", "country_code": "66", "phone_number_lengths": [9], "validation_begin_with": ["8", "9"]},
{"alpha2": "TJ", "alpha3": "TJK", "country_code": "992", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "TK", "alpha3": "TKL", "country_code": "690", "phone_number_lengths": [4], "validation_begin_with": []},
{"alpha2": "TM", "alpha3": "TKM", "country_code": "993", "phone_number_lengths": [8], "validation_begin_with": []},
{"alpha2": "TL", "alpha3": "TLS", "country_code": "670", "phone_number_lengths": [8], "validation_begin_with": ["7"]},
{"alpha2": "TO", "alpha3": "TON", "country_code": "676", "phone_number_lengths": [5], "validation_begin_with": []},
{"alpha2": "TT", "alpha3": "TTO", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "TN", "alpha3": "TUN", "country_code": "216", "phone_number_lengths": [8], "validation_begin_with": ["2", "9"]},
{"alpha2": "TR", "alpha3": "TUR", "country_code": "90", "phone_number_lengths": [10], "validation_begin_with": ["5"]},
{"alpha2": "TV", "alpha3": "TUV", "country_code": "688", "phone_number_lengths": [5], "validation_begin_with": []},
{"alpha2": "TW", "alpha3": "TWN", "country_code": "886", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "TZ", "alpha3": "TZA", "country_code": "255", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "UG", "alpha3": "UGA", "country_code": "256", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "UA", "alpha3": "UKR", "country_code": "380", "phone_number_lengths": [9], "validation_begin_with": ["39", "50", "63", "66", "67", "68", "9"]},
{"alpha2": "UM", "alpha3": "UMI", "country_code": "", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "UY", "alpha3": "URY", "country_code": "598", "phone_number_lengths": [8], "validation_begin_with": ["9"]},
// http://en.wikipedia.org/wiki/List_of_North_American_Numbering_Plan_area_codes#900.E2.80.93999
{"alpha2": "US", "alpha3": "USA", "country_code": "1", "phone_number_lengths": [10],
"validation_begin_with": ["201", "202", "203", "205", "206", "207", "208", "209", "210", "212", "213", "214",
"215", "216", "217", "218", "219", "224", "225", "227", "228", "229", "231", "234", "239", "240", "248",
"251", "252", "253", "254", "256", "260", "262", "267", "269", "270", "272", "274", "276", "281", "283",
"301", "302", "303", "304", "305", "307", "308", "309", "310", "312", "313", "314", "315", "316", "317",
"318", "319", "320", "321", "323", "325", "327", "330", "331", "334", "336", "337", "339", "341", "346",
"347", "351", "352", "360", "361", "364", "369", "380", "385", "386", "401", "402", "404", "405", "406",
"407", "408", "409", "410", "412", "413", "414", "415", "417", "419", "423", "424", "425", "430", "432",
"434", "435", "440", "442", "443", "445", "447", "458", "464", "469", "470", "475", "478", "479", "480",
"484", "501", "502", "503", "504", "505", "507", "508", "509", "510", "512", "513", "515", "516", "517",
"518", "520", "530", "531", "534", "539", "540", "541", "551", "557", "559", "561", "562", "563", "564",
"567", "570", "571", "573", "574", "575", "580", "582", "585", "586", "601", "602", "603", "605", "606",
"607", "608", "609", "610", "612", "614", "615", "616", "617", "618", "619", "620", "623", "626", "627",
"628", "630", "631", "636", "641", "646", "650", "651", "657", "659", "660", "661", "662", "667", "669",
"678", "679", "681", "682", "689", "701", "702", "703", "704", "706", "707", "708", "712", "713", "714",
"715", "716", "717", "718", "719", "720", "724", "725", "727", "730", "731", "732", "734", "737", "740",
"747", "754", "757", "760", "762", "763", "764", "765", "769", "770", "772", "773", "774", "775", "779",
"781", "785", "786", "801", "802", "803", "804", "805", "806", "808", "810", "812", "813", "814", "815",
"816", "817", "818", "828", "830", "831", "832", "835", "843", "845", "847", "848", "850", "856", "857",
"858", "859", "860", "862", "863", "864", "865", "870", "872", "878", "901", "903", "904", "906", "907",
"908", "909", "910", "912", "913", "914", "915", "916", "917", "918", "919", "920", "925", "928", "929",
"931", "935", "936", "937", "938", "940", "941", "947", "949", "951", "952", "954", "956", "959", "970",
"971", "972", "973", "975", "978", "979", "980", "984", "985", "989"]},
{"alpha2": "UZ", "alpha3": "UZB", "country_code": "998", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "VA", "alpha3": "VAT", "country_code": "39", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "VC", "alpha3": "VCT", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "VE", "alpha3": "VEN", "country_code": "58", "phone_number_lengths": [10], "validation_begin_with": ["4"]},
{"alpha2": "VG", "alpha3": "VGB", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "VI", "alpha3": "VIR", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "VN", "alpha3": "VNM", "country_code": "84", "phone_number_lengths": [9, 10], "validation_begin_with": ["9", "1"]},
{"alpha2": "VU", "alpha3": "VUT", "country_code": "678", "phone_number_lengths": [7], "validation_begin_with": ["5", "7"]},
{"alpha2": "WF", "alpha3": "WLF", "country_code": "681", "phone_number_lengths": [6], "validation_begin_with": []},
{"alpha2": "WS", "alpha3": "WSM", "country_code": "685", "phone_number_lengths": [7], "validation_begin_with": ["7"]},
{"alpha2": "YE", "alpha3": "YEM", "country_code": "967", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "ZA", "alpha3": "ZAF", "country_code": "27", "phone_number_lengths": [9], "validation_begin_with": ["6", "7", "8"]},
{"alpha2": "ZM", "alpha3": "ZMB", "country_code": "260", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "ZW", "alpha3": "ZWE", "country_code": "263", "phone_number_lengths": [9], "validation_begin_with": ["71", "73", "77"]}
];
var iso2_map = Object.freeze({
"AW": "0", "AF": "1", "AO": "2", "AI": "3", "AX": "4", "AL": "5", "AD": "6", "AN": "7", "AE": "8", "AR": "9", "AM": "10",
"AS": "11", "AQ": "12", "TF": "13", "AG": "14", "AU": "15", "AT": "16", "AZ": "17", "BI": "18", "BE": "19", "BJ": "20",
"BF": "21", "BD": "22", "BG": "23", "BH": "24", "BS": "25", "BA": "26", "BL": "27", "BY": "28", "BZ": "29", "BM": "30",
"BO": "31", "BR": "32", "BB": "33", "BN": "34", "BT": "35", "BV": "36", "BW": "37", "CF": "38", "CA": "39", "CC": "40",
"CH": "41", "CL": "42", "CN": "43", "CI": "44", "CM": "45", "CD": "46", "CG": "47", "CK": "48", "CO": "49", "KM": "50",
"CV": "51", "CR": "52", "CU": "53", "CX": "54", "KY": "55", "CY": "56", "CZ": "57", "DE": "58", "DJ": "59", "DM": "60",
"DK": "61", "DO": "62", "DZ": "63", "EC": "64", "EG": "65", "ER": "66", "EH": "67", "ES": "68", "EE": "69", "ET": "70",
"FI": "71", "FJ": "72", "FK": "73", "FR": "74", "FO": "75", "FM": "76", "GA": "77", "GB": "78", "GE": "79", "GG": "80",
"GH": "81", "GI": "82", "GN": "83", "GP": "84", "GM": "85", "GW": "86", "GQ": "87", "GR": "88", "GD": "89", "GL": "90",
"GT": "91", "GF": "92", "GU": "93", "GY": "94", "HK": "95", "HM": "96", "HN": "97", "HR": "98", "HT": "99", "HU": "100",
"ID": "101", "IM": "102", "IN": "103", "IO": "104", "IE": "105", "IR": "106", "IQ": "107", "IS": "108", "IL": "109", "IT": "110",
"JM": "111", "JE": "112", "JO": "113", "JP": "114", "KZ": "115", "KE": "116", "KG": "117", "KH": "118", "KI": "119", "KN": "120",
"KR": "121", "KW": "122", "LA": "123", "LB": "124", "LR": "125", "LY": "126", "LC": "127", "LI": "128", "LK": "129", "LS": "130",
"LT": "131", "LU": "132", "LV": "133", "MO": "134", "MF": "135", "MA": "136", "MC": "137", "MD": "138", "MG": "139", "MV": "140",
"MX": "141", "MH": "142", "MK": "143", "ML": "144", "MT": "145", "MM": "146", "ME": "147", "MN": "148", "MP": "149", "MZ": "150",
"MR": "151", "MS": "152", "MQ": "153", "MU": "154", "MW": "155", "MY": "156", "YT": "157", "NA": "158", "NC": "159", "NE": "160",
"NF": "161", "NG": "162", "NI": "163", "NU": "164", "NL": "165", "NO": "166", "NP": "167", "NR": "168", "NZ": "169", "OM": "170",
"PK": "171", "PA": "172", "PN": "173", "PE": "174", "PH": "175", "PW": "176", "PG": "177", "PL": "178", "PR": "179", "KP": "180",
"PT": "181", "PY": "182", "PS": "183", "PF": "184", "QA": "185", "RE": "186", "RO": "187", "RU": "188", "RW": "189", "SA": "190",
"SD": "191", "SN": "192", "SG": "193", "GS": "194", "SH": "195", "SJ": "196", "SB": "197", "SL": "198", "SV": "199", "SM": "200",
"SO": "201", "PM": "202", "RS": "203", "ST": "204", "SR": "205", "SK": "206", "SI": "207", "SE": "208", "SZ": "209", "SC": "210",
"SY": "211", "TC": "212", "TD": "213", "TG": "214", "TH": "215", "TJ": "216", "TK": "217", "TM": "218", "TL": "219", "TO": "220",
"TT": "221", "TN": "222", "TR": "223", "TV": "224", "TW": "225", "TZ": "226", "UG": "227", "UA": "228", "UM": "229", "UY": "230",
"US": "231", "UZ": "232", "VA": "233", "VC": "234", "VE": "235", "VG": "236", "VI": "237", "VN": "238", "VU": "239", "WF": "240",
"WS": "241", "YE": "242", "ZA": "243", "ZM": "244", "ZW": "245"
});
var iso3_map = Object.freeze({
"ABW": "0", "AFG": "1", "AGO": "2", "AIA": "3", "ALA": "4", "ALB": "5", "AND": "6", "ANT": "7", "ARE": "8", "ARG": "9", "ARM": "10",
"ASM": "11", "ATA": "12", "ATF": "13", "ATG": "14", "AUS": "15", "AUT": "16", "AZE": "17", "BDI": "18", "BEL": "19", "BEN": "20",
"BFA": "21", "BGD": "22", "BGR": "23", "BHR": "24", "BHS": "25", "BIH": "26", "BLM": "27", "BLR": "28", "BLZ": "29", "BMU": "30",
"BOL": "31", "BRA": "32", "BRB": "33", "BRN": "34", "BTN": "35", "BVT": "36", "BWA": "37", "CAF": "38", "CAN": "39", "CCK": "40",
"CHE": "41", "CHL": "42", "CHN": "43", "CIV": "44", "CMR": "45", "COD": "46", "COG": "47", "COK": "48", "COL": "49", "COM": "50",
"CPV": "51", "CRI": "52", "CUB": "53", "CXR": "54", "CYM": "55", "CYP": "56", "CZE": "57", "DEU": "58", "DJI": "59", "DMA": "60",
"DNK": "61", "DOM": "62", "DZA": "63", "ECU": "64", "EGY": "65", "ERI": "66", "ESH": "67", "ESP": "68", "EST": "69", "ETH": "70",
"FIN": "71", "FJI": "72", "FLK": "73", "FRA": "74", "FRO": "75", "FSM": "76", "GAB": "77", "GBR": "78", "GEO": "79", "GGY": "80",
"GHA": "81", "GIB": "82", "GIN": "83", "GLP": "84", "GMB": "85", "GNB": "86", "GNQ": "87", "GRC": "88", "GRD": "89", "GRL": "90",
"GTM": "91", "GUF": "92", "GUM": "93", "GUY": "94", "HKG": "95", "HMD": "96", "HND": "97", "HRV": "98", "HTI": "99", "HUN": "100",
"IDN": "101", "IMN": "102", "IND": "103", "IOT": "104", "IRL": "105", "IRN": "106", "IRQ": "107", "ISL": "108", "ISR": "109", "ITA": "110",
"JAM": "111", "JEY": "112", "JOR": "113", "JPN": "114", "KAZ": "115", "KEN": "116", "KGZ": "117", "KHM": "118", "KIR": "119", "KNA": "120",
"KOR": "121", "KWT": "122", "LAO": "123", "LBN": "124", "LBR": "125", "LBY": "126", "LCA": "127", "LIE": "128", "LKA": "129", "LSO": "130",
"LTU": "131", "LUX": "132", "LVA": "133", "MAC": "134", "MAF": "135", "MAR": "136", "MCO": "137", "MDA": "138", "MDG": "139", "MDV": "140",
"MEX": "141", "MHL": "142", "MKD": "143", "MLI": "144", "MLT": "145", "MMR": "146", "MNE": "147", "MNG": "148", "MNP": "149", "MOZ": "150",
"MRT": "151", "MSR": "152", "MTQ": "153", "MUS": "154", "MWI": "155", "MYS": "156", "MYT": "157", "NAM": "158", "NCL": "159", "NER": "160",
"NFK": "161", "NGA": "162", "NIC": "163", "NIU": "164", "NLD": "165", "NOR": "166", "NPL": "167", "NRU": "168", "NZL": "169", "OMN": "170",
"PAK": "171", "PAN": "172", "PCN": "173", "PER": "174", "PHL": "175", "PLW": "176", "PNG": "177", "POL": "178", "PRI": "179", "PRK": "180",
"PRT": "181", "PRY": "182", "PSE": "183", "PYF": "184", "QAT": "185", "REU": "186", "ROU": "187", "RUS": "188", "RWA": "189", "SAU": "190",
"SDN": "191", "SEN": "192", "SGP": "193", "SGS": "194", "SHN": "195", "SJM": "196", "SLB": "197", "SLE": "198", "SLV": "199", "SMR": "200",
"SOM": "201", "SPM": "202", "SRB": "203", "STP": "204", "SUR": "205", "SVK": "206", "SVN": "207", "SWE": "208", "SWZ": "209", "SYC": "210",
"SYR": "211", "TCA": "212", "TCD": "213", "TGO": "214", "THA": "215", "TJK": "216", "TKL": "217", "TKM": "218", "TLS": "219", "TON": "220",
"TTO": "221", "TUN": "222", "TUR": "223", "TUV": "224", "TWN": "225", "TZA": "226", "UGA": "227", "UKR": "228", "UMI": "229", "URY": "230",
"USA": "231", "UZB": "232", "VAT": "233", "VCT": "234", "VEN": "235", "VGB": "236", "VIR": "237", "VNM": "238", "VUT": "239", "WLF": "240",
"WSM": "241", "YEM": "242", "ZAF": "243", "ZMB": "244", "ZWE": "245"
});
var country_name_map = Object.freeze({
"0": "Aruba",
"1": "Afghanistan",
"2": "Angola",
"3": "Anguilla",
"4": "Åland Islands",
"5": "Albania",
"6": "Andorra",
"7": "Netherlands Antilles",
"8": "United Arab Emirates",
"9": "Argentina",
"10": "Armenia",
"11": "American Samoa",
"12": "Antarctica",
"13": "French Southern Territories",
"14": "Antigua and Barbuda",
"15": "Australia",
"16": "Austria",
"17": "Azerbaijan",
"18": "Burundi",
"19": "Belgium",
"20": "Benin",
"21": "Burkina Faso",
"22": "Bangladesh",
"23": "Bulgaria",
"24": "Bahrain",
"25": "Bahamas",
"26": "Bosnia and Herzegovina",
"27": "Saint Barthélemy",
"28": "Belarus",
"29": "Belize",
"30": "Bermuda",
"31": "Bolivia",
"32": "Brazil",
"33": "Barbados",
"34": "Brunei Darussalam",
"35": "Bhutan",
"36": "Bouvet Island",
"37": "Botswana",
"38": "Central African Republic",
"39": "Canada",
"40": "Cocos (Keeling) Islands",
"41": "Switzerland",
"42": "Chile",
"43": "China",
"44": "Côte D'Ivoire",
"45": "Cameroon",
"46": "Congo, The Democratic Republic Of The",
"47": "Congo",
"48": "Cook Islands",
"49": "Colombia",
"50": "Comoros",
"51": "Cape Verde",
"52": "Costa Rica",
"53": "Cuba",
"54": "Christmas Island",
"55": "Cayman Islands",
"56": "Cyprus",
"57": "Czech Republic",
"58": "Germany",
"59": "Djibouti",
"60": "Dominica",
"61": "Denmark",
"62": "Dominican Republic",
"63": "Algeria",
"64": "Ecuador",
"65": "Egypt",
"66": "Eritrea",
"67": "Western Sahara",
"68": "Spain",
"69": "Estonia",
"70": "Ethiopia",
"71": "Finland",
"72": "Fiji",
"73": "Falkland Islands (Malvinas)",
"74": "France",
"75": "Faroe Islands",
"76": "Micronesia, Federated States Of",
"77": "Gabon",
"78": "United Kingdom",
"79": "Georgia",
"80": "Guernsey",
"81": "Ghana",
"82": "Gibraltar",
"83": "Guinea",
"84": "Guadeloupe",
"85": "Gambia",
"86": "Guinea-Bissau",
"87": "Equatorial Guinea",
"88": "Greece",
"89": "Grenada",
"90": "Greenland",
"91": "Guatemala",
"92": "French Guiana",
"93": "Guam",
"94": "Guyana",
"95": "Hong Kong",
"96": "Heard and McDonald Islands",
"97": "Honduras",
"98": "Croatia",
"99": "Haiti",
"100": "Hungary",
"101": "Indonesia",
"102": "Isle of Man",
"103": "India",
"104": "British Indian Ocean Territory",
"105": "Ireland",
"106": "Iran, Islamic Republic Of",
"107": "Iraq",
"108": "Iceland",
"109": "Israel",
"110": "Italy",
"111": "Jamaica",
"112": "Jersey",
"113": "Jordan",
"114": "Japan",
"115": "Kazakhstan",
"116": "Kenya",
"117": "Kyrgyzstan",
"118": "Cambodia",
"119": "Kiribati",
"120": "Saint Kitts And Nevis",
"121": "Korea, Republic of",
"122": "Kuwait",
"123": "Lao People's Democratic Republic",
"124": "Lebanon",
"125": "Liberia",
"126": "Libyan Arab Jamahiriya",
"127": "Saint Lucia",
"128": "Liechtenstein",
"129": "Sri Lanka",
"130": "Lesotho",
"131": "Lithuania",
"132": "Luxembourg",
"133": "Latvia",
"134": "Macao",
"135": "Saint Martin",
"136": "Morocco",
"137": "Monaco",
"138": "Moldova, Republic of",
"139": "Madagascar",
"140": "Maldives",
"141": "Mexico",
"142": "Marshall Islands",
"143": "Macedonia, the Former Yugoslav Republic Of",
"144": "Mali",
"145": "Malta",
"146": "Myanmar",
"147": "Montenegro",
"148": "Mongolia",
"149": "Northern Mariana Islands",
"150": "Mozambique",
"151": "Mauritania",
"152": "Montserrat",
"153": "Martinique",
"154": "Mauritius",
"155": "Malawi",
"156": "Malaysia",
"157": "Mayotte",
"158": "Namibia",
"159": "New Caledonia",
"160": "Niger",
"161": "Norfolk Island",
"162": "Nigeria",
"163": "Nicaragua",
"164": "Niue",
"165": "Netherlands",
"166": "Norway",
"167": "Nepal",
"168": "Nauru",
"169": "New Zealand",
"170": "Oman",
"171": "Pakistan",
"172": "Panama",
"173": "Pitcairn",
"174": "Peru",
"175": "Philippines",
"176": "Palau",
"177": "Papua New Guinea",
"178": "Poland",
"179": "Puerto Rico",
"180": "Korea, Democratic People's Republic Of",
"181": "Portugal",
"182": "Paraguay",
"183": "Palestinian Territory, Occupied",
"184": "French Polynesia",
"185": "Qatar",
"186": "Réunion",
"187": "Romania",
"188": "Russian Federation",
"189": "Rwanda",
"190": "Saudi Arabia",
"191": "Sudan",
"192": "Senegal",
"193": "Singapore",
"194": "South Georgia and the South Sandwich Islands",
"195": "Saint Helena",
"196": "Svalbard And Jan Mayen",
"197": "Solomon Islands",
"198": "Sierra Leone",
"199": "El Salvador",
"200": "San Marino",
"201": "Somalia",
"202": "Saint Pierre And Miquelon",
"203": "Serbia",
"204": "Sao Tome and Principe",
"205": "Suriname",
"206": "Slovakia",
"207": "Slovenia",
"208": "Sweden",
"209": "Swaziland",
"210": "Seychelles",
"211": "Syrian Arab Republic",
"212": "Turks and Caicos Islands",
"213": "Chad",
"214": "Togo",
"215": "Thailand",
"216": "Tajikistan",
"217": "Tokelau",
"218": "Turkmenistan",
"219": "Timor-Leste",
"220": "Tonga",
"221": "Trinidad and Tobago",
"222": "Tunisia",
"223": "Turkey",
"224": "Tuvalu",
"225": "Taiwan, Province Of China",
"226": "Tanzania, United Republic of",
"227": "Uganda",
"228": "Ukraine",
"229": "United States Minor Outlying Islands",
"230": "Uruguay",
"231": "United States",
"232": "Uzbekistan",
"233": "Holy See (Vatican City State)",
"234": "Saint Vincent And The Grenedines",
"235": "Venezuela, Bolivarian Republic of",
"236": "Virgin Islands, British",
"237": "Virgin Islands, U.S.",
"238": "Viet Nam",
"239": "Vanuatu",
"240": "Wallis and Futuna",
"241": "Samoa",
"242": "Yemen",
"243": "South Africa",
"244": "Zambia",
"245": "Zimbabwe"
});
module.exports = function(phone, country) {
var country_lookup = {};
phone = (phone === null || typeof(phone) !== 'string') ? '' : phone.trim();
country = (country === null || typeof(country) !== 'string') ? '' : country.trim();
if (phone.match(/^\+/)) {
return '+' + phone.replace(/\D/g, '');
function getISO3166(country) {
var iso3166 = country_lookup[country];
if ( iso3166 ) {
return iso3166;
}
var iso3166_data = [
{"alpha2": "AW", "alpha3": "ABW", "country_code": "297", "phone_number_lengths": [7], "validation_begin_with": ["5", "6", "7", "9"]},
{"alpha2": "AF", "alpha3": "AFG", "country_code": "93", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "AO", "alpha3": "AGO", "country_code": "244", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "AI", "alpha3": "AIA", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": ["5", "7"]},
{"alpha2": "AX", "alpha3": "ALA", "country_code": "358", "phone_number_lengths": [6, 7, 8], "validation_begin_with": ["18"]},
{"alpha2": "AL", "alpha3": "ALB", "country_code": "355", "phone_number_lengths": [8], "validation_begin_with": ["6"]},
{"alpha2": "AD", "alpha3": "AND", "country_code": "376", "phone_number_lengths": [6], "validation_begin_with": ["3", "4", "6"]},
{"alpha2": "AN", "alpha3": "ANT", "country_code": "599", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "AE", "alpha3": "ARE", "country_code": "971", "phone_number_lengths": [9], "validation_begin_with": ["5"]},
{"alpha2": "AR", "alpha3": "ARG", "country_code": "54", "phone_number_lengths": [10], "validation_begin_with": []},
{"alpha2": "AM", "alpha3": "ARM", "country_code": "374", "phone_number_lengths": [8], "validation_begin_with": ["5", "7", "9"]},
{"alpha2": "AS", "alpha3": "ASM", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": ["733", "258"]},
{"alpha2": "AQ", "alpha3": "ATA", "country_code": "672", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "TF", "alpha3": "ATF", "country_code": "", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "AG", "alpha3": "ATG", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": ["4", "7"]},
{"alpha2": "AU", "alpha3": "AUS", "country_code": "61", "phone_number_lengths": [9], "validation_begin_with": ["4"]},
{"alpha2": "AT", "alpha3": "AUT", "country_code": "43", "phone_number_lengths": [10], "validation_begin_with": ["6"]},
{"alpha2": "AZ", "alpha3": "AZE", "country_code": "994", "phone_number_lengths": [9], "validation_begin_with": ["4", "5", "6", "7"]},
{"alpha2": "BI", "alpha3": "BDI", "country_code": "257", "phone_number_lengths": [8], "validation_begin_with": ["7", "29"]},
{"alpha2": "BE", "alpha3": "BEL", "country_code": "32", "phone_number_lengths": [9], "validation_begin_with": ["4"]},
{"alpha2": "BJ", "alpha3": "BEN", "country_code": "229", "phone_number_lengths": [8], "validation_begin_with": ["9"]},
{"alpha2": "BF", "alpha3": "BFA", "country_code": "226", "phone_number_lengths": [8], "validation_begin_with": ["6", "7"]},
{"alpha2": "BD", "alpha3": "BGD", "country_code": "880", "phone_number_lengths": [8, 9, 10], "validation_begin_with": ["1"]},
{"alpha2": "BG", "alpha3": "BGR", "country_code": "359", "phone_number_lengths": [8, 9], "validation_begin_with": ["87", "88", "89", "98", "99", "43"]},
{"alpha2": "BH", "alpha3": "BHR", "country_code": "973", "phone_number_lengths": [8], "validation_begin_with": ["3"]},
{"alpha2": "BS", "alpha3": "BHS", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": ["3", "4", "5", "6", "7"]},
{"alpha2": "BA", "alpha3": "BIH", "country_code": "387", "phone_number_lengths": [8], "validation_begin_with": ["6"]},
{"alpha2": "BL", "alpha3": "BLM", "country_code": "590", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "BY", "alpha3": "BLR", "country_code": "375", "phone_number_lengths": [9], "validation_begin_with": ["25", "29", "33", "44"]},
{"alpha2": "BZ", "alpha3": "BLZ", "country_code": "501", "phone_number_lengths": [7], "validation_begin_with": ["6"]},
{"alpha2": "BM", "alpha3": "BMU", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": ["3", "5", "7"]},
{"alpha2": "BO", "alpha3": "BOL", "country_code": "591", "phone_number_lengths": [8], "validation_begin_with": ["7"]},
{"alpha2": "BR", "alpha3": "BRA", "country_code": "55", "phone_number_lengths": [10, 11], "validation_begin_with": []},
{"alpha2": "BB", "alpha3": "BRB", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "BN", "alpha3": "BRN", "country_code": "673", "phone_number_lengths": [7], "validation_begin_with": ["7", "8"]},
{"alpha2": "BT", "alpha3": "BTN", "country_code": "975", "phone_number_lengths": [8], "validation_begin_with": ["17"]},
{"alpha2": "BV", "alpha3": "BVT", "country_code": "", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "BW", "alpha3": "BWA", "country_code": "267", "phone_number_lengths": [8], "validation_begin_with": ["71", "72", "73", "74", "75", "76"]},
{"alpha2": "CF", "alpha3": "CAF", "country_code": "236", "phone_number_lengths": [8], "validation_begin_with": ["7"]},
{"alpha2": "CA", "alpha3": "CAN", "country_code": "1", "phone_number_lengths": [10],
"validation_begin_with": ["204", "226", "236", "249", "250", "289", "306", "343", "365", "387", "403", "416",
"418", "431", "437", "438", "450", "506", "514", "519", "579", "581", "587", "604", "613", "639", "647",
"672", "705", "709", "742", "778", "780", "807", "819", "825", "867", "873", "902", "905"]},
{"alpha2": "CC", "alpha3": "CCK", "country_code": "61", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "CH", "alpha3": "CHE", "country_code": "41", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "CL", "alpha3": "CHL", "country_code": "56", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "CN", "alpha3": "CHN", "country_code": "86", "phone_number_lengths": [11], "validation_begin_with": ["13", "14", "15", "18"]},
{"alpha2": "CI", "alpha3": "CIV", "country_code": "225", "phone_number_lengths": [8], "validation_begin_with": ["0", "4", "5", "6"]},
{"alpha2": "CM", "alpha3": "CMR", "country_code": "237", "phone_number_lengths": [8], "validation_begin_with": ["7", "9"]},
{"alpha2": "CD", "alpha3": "COD", "country_code": "243", "phone_number_lengths": [9], "validation_begin_with": ["8", "9"]},
{"alpha2": "CG", "alpha3": "COG", "country_code": "242", "phone_number_lengths": [9], "validation_begin_with": ["0"]},
{"alpha2": "CK", "alpha3": "COK", "country_code": "682", "phone_number_lengths": [5], "validation_begin_with": ["5", "7"]},
{"alpha2": "CO", "alpha3": "COL", "country_code": "57", "phone_number_lengths": [10], "validation_begin_with": ["3"]},
{"alpha2": "KM", "alpha3": "COM", "country_code": "269", "phone_number_lengths": [7], "validation_begin_with": ["3", "76"]},
{"alpha2": "CV", "alpha3": "CPV", "country_code": "238", "phone_number_lengths": [7], "validation_begin_with": ["5", "9"]},
{"alpha2": "CR", "alpha3": "CRI", "country_code": "506", "phone_number_lengths": [8], "validation_begin_with": ["5", "6", "7", "8"]},
{"alpha2": "CU", "alpha3": "CUB", "country_code": "53", "phone_number_lengths": [8], "validation_begin_with": ["5"]},
{"alpha2": "CX", "alpha3": "CXR", "country_code": "61", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "KY", "alpha3": "CYM", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "CY", "alpha3": "CYP", "country_code": "357", "phone_number_lengths": [8], "validation_begin_with": ["9"]},
{"alpha2": "CZ", "alpha3": "CZE", "country_code": "420", "phone_number_lengths": [9], "validation_begin_with": ["6", "7"]},
{"alpha2": "DE", "alpha3": "DEU", "country_code": "49", "phone_number_lengths": [10, 11], "validation_begin_with": ["15", "16", "17"]},
{"alpha2": "DJ", "alpha3": "DJI", "country_code": "253", "phone_number_lengths": [8], "validation_begin_with": ["77"]},
{"alpha2": "DM", "alpha3": "DMA", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "DK", "alpha3": "DNK", "country_code": "45", "phone_number_lengths": [8], "validation_begin_with": []},
{"alpha2": "DO", "alpha3": "DOM", "country_code": "1", "phone_number_lengths": [10], "validation_begin_with": ["809", "829", "849"]},
{"alpha2": "DZ", "alpha3": "DZA", "country_code": "213", "phone_number_lengths": [9], "validation_begin_with": ["5", "6", "7"]},
{"alpha2": "EC", "alpha3": "ECU", "country_code": "593", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "EG", "alpha3": "EGY", "country_code": "20", "phone_number_lengths": [10], "validation_begin_with": ["1"]},
{"alpha2": "ER", "alpha3": "ERI", "country_code": "291", "phone_number_lengths": [7], "validation_begin_with": ["1", "7", "8"]},
{"alpha2": "EH", "alpha3": "ESH", "country_code": "212", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "ES", "alpha3": "ESP", "country_code": "34", "phone_number_lengths": [9], "validation_begin_with": ["6", "7"]},
{"alpha2": "EE", "alpha3": "EST", "country_code": "372", "phone_number_lengths": [8], "validation_begin_with": ["5"]},
{"alpha2": "ET", "alpha3": "ETH", "country_code": "251", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "FI", "alpha3": "FIN", "country_code": "358", "phone_number_lengths": [9], "validation_begin_with": ["4", "5"]},
{"alpha2": "FJ", "alpha3": "FJI", "country_code": "679", "phone_number_lengths": [7], "validation_begin_with": ["7", "9"]},
{"alpha2": "FK", "alpha3": "FLK", "country_code": "500", "phone_number_lengths": [5], "validation_begin_with": ["5", "6"]},
{"alpha2": "FR", "alpha3": "FRA", "country_code": "33", "phone_number_lengths": [9], "validation_begin_with": ["6"]},
{"alpha2": "FO", "alpha3": "FRO", "country_code": "298", "phone_number_lengths": [6], "validation_begin_with": []},
{"alpha2": "FM", "alpha3": "FSM", "country_code": "691", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "GA", "alpha3": "GAB", "country_code": "241", "phone_number_lengths": [8], "validation_begin_with": ["05", "06", "07"]},
//http://www.area-codes.org.uk/ http://www.area-codes.org.uk/07-mobile-codes.php
{"alpha2": "GB", "alpha3": "GBR", "country_code": "44", "phone_number_lengths": [10], "validation_begin_with": ["7"]},
{"alpha2": "GE", "alpha3": "GEO", "country_code": "995", "phone_number_lengths": [9], "validation_begin_with": ["5", "7"]},
{"alpha2": "GG", "alpha3": "GGY", "country_code": "44", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "GH", "alpha3": "GHA", "country_code": "233", "phone_number_lengths": [9], "validation_begin_with": ["2", "5"]},
{"alpha2": "GI", "alpha3": "GIB", "country_code": "350", "phone_number_lengths": [8], "validation_begin_with": ["5"]},
{"alpha2": "GN", "alpha3": "GIN", "country_code": "224", "phone_number_lengths": [8], "validation_begin_with": ["6"]},
{"alpha2": "GP", "alpha3": "GLP", "country_code": "590", "phone_number_lengths": [9], "validation_begin_with": ["690"]},
{"alpha2": "GM", "alpha3": "GMB", "country_code": "220", "phone_number_lengths": [7], "validation_begin_with": ["7", "9"]},
{"alpha2": "GW", "alpha3": "GNB", "country_code": "245", "phone_number_lengths": [7], "validation_begin_with": ["5", "6", "7"]},
{"alpha2": "GQ", "alpha3": "GNQ", "country_code": "240", "phone_number_lengths": [9], "validation_begin_with": ["222", "551"]},
{"alpha2": "GR", "alpha3": "GRC", "country_code": "30", "phone_number_lengths": [10], "validation_begin_with": ["6"]},
{"alpha2": "GD", "alpha3": "GRD", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "GL", "alpha3": "GRL", "country_code": "299", "phone_number_lengths": [6], "validation_begin_with": ["4", "5"]},
{"alpha2": "GT", "alpha3": "GTM", "country_code": "502", "phone_number_lengths": [8], "validation_begin_with": ["3", "4", "5"]},
{"alpha2": "GF", "alpha3": "GUF", "country_code": "594", "phone_number_lengths": [9], "validation_begin_with": ["694"]},
{"alpha2": "GU", "alpha3": "GUM", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "GY", "alpha3": "GUY", "country_code": "592", "phone_number_lengths": [7], "validation_begin_with": ["6"]},
{"alpha2": "HK", "alpha3": "HKG", "country_code": "852", "phone_number_lengths": [8], "validation_begin_with": ["5", "6", "9"]},
{"alpha2": "HM", "alpha3": "HMD", "country_code": "", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "HN", "alpha3": "HND", "country_code": "504", "phone_number_lengths": [8], "validation_begin_with": ["3", "7", "8", "9"]},
{"alpha2": "HR", "alpha3": "HRV", "country_code": "385", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "HT", "alpha3": "HTI", "country_code": "509", "phone_number_lengths": [8], "validation_begin_with": ["3", "4"]},
{"alpha2": "HU", "alpha3": "HUN", "country_code": "36", "phone_number_lengths": [9], "validation_begin_with": ["20", "30", "31", "70"]},
{"alpha2": "ID", "alpha3": "IDN", "country_code": "62", "phone_number_lengths": [9, 10, 11], "validation_begin_with": ["8"]},
{"alpha2": "IM", "alpha3": "IMN", "country_code": "44", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "IN", "alpha3": "IND", "country_code": "91", "phone_number_lengths": [10], "validation_begin_with": ["7", "8", "9"]},
{"alpha2": "IO", "alpha3": "IOT", "country_code": "246", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "IE", "alpha3": "IRL", "country_code": "353", "phone_number_lengths": [9], "validation_begin_with": ["82", "83", "84", "85", "86", "87", "88", "89"]},
{"alpha2": "IR", "alpha3": "IRN", "country_code": "98", "phone_number_lengths": [10], "validation_begin_with": ["9"]},
{"alpha2": "IQ", "alpha3": "IRQ", "country_code": "964", "phone_number_lengths": [10], "validation_begin_with": ["7"]},
{"alpha2": "IS", "alpha3": "ISL", "country_code": "354", "phone_number_lengths": [7, 9], "validation_begin_with": ["6", "7", "8"]},
{"alpha2": "IL", "alpha3": "ISR", "country_code": "972", "phone_number_lengths": [9], "validation_begin_with": ["5"]},
{"alpha2": "IT", "alpha3": "ITA", "country_code": "39", "phone_number_lengths": [10], "validation_begin_with": ["3"]},
{"alpha2": "JM", "alpha3": "JAM", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "JE", "alpha3": "JEY", "country_code": "44", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "JO", "alpha3": "JOR", "country_code": "962", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "JP", "alpha3": "JPN", "country_code": "81", "phone_number_lengths": [10], "validation_begin_with": ["70", "80", "90"]},
{"alpha2": "KZ", "alpha3": "KAZ", "country_code": "7", "phone_number_lengths": [10], "validation_begin_with": ["70", "77"]},
{"alpha2": "KE", "alpha3": "KEN", "country_code": "254", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "KG", "alpha3": "KGZ", "country_code": "996", "phone_number_lengths": [9], "validation_begin_with": ["5", "7"]},
{"alpha2": "KH", "alpha3": "KHM", "country_code": "855", "phone_number_lengths": [8, 9], "validation_begin_with": ["1", "6", "7", "8", "9"]},
{"alpha2": "KI", "alpha3": "KIR", "country_code": "686", "phone_number_lengths": [5], "validation_begin_with": ["9", "30"]},
{"alpha2": "KN", "alpha3": "KNA", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "KR", "alpha3": "KOR", "country_code": "82", "phone_number_lengths": [9, 10], "validation_begin_with": ["1"]},
{"alpha2": "KW", "alpha3": "KWT", "country_code": "965", "phone_number_lengths": [8], "validation_begin_with": ["5", "6", "9"]},
{"alpha2": "LA", "alpha3": "LAO", "country_code": "856", "phone_number_lengths": [10], "validation_begin_with": ["20"]},
{"alpha2": "LB", "alpha3": "LBN", "country_code": "961", "phone_number_lengths": [7, 8], "validation_begin_with": ["3", "7"]},
{"alpha2": "LR", "alpha3": "LBR", "country_code": "231", "phone_number_lengths": [7, 8], "validation_begin_with": ["4", "5", "6", "7"]},
{"alpha2": "LY", "alpha3": "LBY", "country_code": "218", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "LC", "alpha3": "LCA", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "LI", "alpha3": "LIE", "country_code": "423", "phone_number_lengths": [7], "validation_begin_with": ["7"]},
{"alpha2": "LK", "alpha3": "LKA", "country_code": "94", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "LS", "alpha3": "LSO", "country_code": "266", "phone_number_lengths": [8], "validation_begin_with": ["5", "6"]},
{"alpha2": "LT", "alpha3": "LTU", "country_code": "370", "phone_number_lengths": [8], "validation_begin_with": ["6"]},
{"alpha2": "LU", "alpha3": "LUX", "country_code": "352", "phone_number_lengths": [9], "validation_begin_with": ["6"]},
{"alpha2": "LV", "alpha3": "LVA", "country_code": "371", "phone_number_lengths": [8], "validation_begin_with": ["2"]},
{"alpha2": "MO", "alpha3": "MAC", "country_code": "853", "phone_number_lengths": [8], "validation_begin_with": ["6"]},
{"alpha2": "MF", "alpha3": "MAF", "country_code": "590", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "MA", "alpha3": "MAR", "country_code": "212", "phone_number_lengths": [9], "validation_begin_with": ["6"]},
{"alpha2": "MC", "alpha3": "MCO", "country_code": "377", "phone_number_lengths": [8, 9], "validation_begin_with": ["4", "6"]},
{"alpha2": "MD", "alpha3": "MDA", "country_code": "373", "phone_number_lengths": [8], "validation_begin_with": ["6", "7"]},
{"alpha2": "MG", "alpha3": "MDG", "country_code": "261", "phone_number_lengths": [9], "validation_begin_with": ["3"]},
{"alpha2": "MV", "alpha3": "MDV", "country_code": "960", "phone_number_lengths": [7], "validation_begin_with": ["7", "9"]},
{"alpha2": "MX", "alpha3": "MEX", "country_code": "52", "phone_number_lengths": [11], "validation_begin_with": ["1"]},
{"alpha2": "MH", "alpha3": "MHL", "country_code": "692", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "MK", "alpha3": "MKD", "country_code": "389", "phone_number_lengths": [8], "validation_begin_with": ["7"]},
{"alpha2": "ML", "alpha3": "MLI", "country_code": "223", "phone_number_lengths": [8], "validation_begin_with": ["6", "7"]},
{"alpha2": "MT", "alpha3": "MLT", "country_code": "356", "phone_number_lengths": [8], "validation_begin_with": ["79", "99"]},
{"alpha2": "MM", "alpha3": "MMR", "country_code": "95", "phone_number_lengths": [8], "validation_begin_with": ["9"]},
{"alpha2": "ME", "alpha3": "MNE", "country_code": "382", "phone_number_lengths": [8], "validation_begin_with": ["6"]},
{"alpha2": "MN", "alpha3": "MNG", "country_code": "976", "phone_number_lengths": [8], "validation_begin_with": ["5", "8", "9"]},
{"alpha2": "MP", "alpha3": "MNP", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "MZ", "alpha3": "MOZ", "country_code": "258", "phone_number_lengths": [9], "validation_begin_with": ["8"]},
{"alpha2": "MR", "alpha3": "MRT", "country_code": "222", "phone_number_lengths": [8], "validation_begin_with": []},
{"alpha2": "MS", "alpha3": "MSR", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "MQ", "alpha3": "MTQ", "country_code": "596", "phone_number_lengths": [9], "validation_begin_with": ["696"]},
{"alpha2": "MU", "alpha3": "MUS", "country_code": "230", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "MW", "alpha3": "MWI", "country_code": "265", "phone_number_lengths": [9], "validation_begin_with": ["77", "88", "99"]},
{"alpha2": "MY", "alpha3": "MYS", "country_code": "60", "phone_number_lengths": [9, 10], "validation_begin_with": ["1"]},
{"alpha2": "YT", "alpha3": "MYT", "country_code": "269", "phone_number_lengths": [9], "validation_begin_with": ["639"]},
{"alpha2": "NA", "alpha3": "NAM", "country_code": "264", "phone_number_lengths": [9], "validation_begin_with": ["60", "81", "82", "85"]},
{"alpha2": "NC", "alpha3": "NCL", "country_code": "687", "phone_number_lengths": [6], "validation_begin_with": []},
{"alpha2": "NE", "alpha3": "NER", "country_code": "227", "phone_number_lengths": [8], "validation_begin_with": ["9"]},
{"alpha2": "NF", "alpha3": "NFK", "country_code": "672", "phone_number_lengths": [5], "validation_begin_with": ["5", "8"]},
{"alpha2": "NG", "alpha3": "NGA", "country_code": "234", "phone_number_lengths": [10], "validation_begin_with": ["70", "80", "81"]},
{"alpha2": "NI", "alpha3": "NIC", "country_code": "505", "phone_number_lengths": [8], "validation_begin_with": ["8"]},
{"alpha2": "NU", "alpha3": "NIU", "country_code": "683", "phone_number_lengths": [4], "validation_begin_with": []},
{"alpha2": "NL", "alpha3": "NLD", "country_code": "31", "phone_number_lengths": [9], "validation_begin_with": ["6"]},
{"alpha2": "NO", "alpha3": "NOR", "country_code": "47", "phone_number_lengths": [8], "validation_begin_with": ["4", "9"]},
{"alpha2": "NP", "alpha3": "NPL", "country_code": "977", "phone_number_lengths": [10], "validation_begin_with": ["97", "98"]},
{"alpha2": "NR", "alpha3": "NRU", "country_code": "674", "phone_number_lengths": [7], "validation_begin_with": ["555"]},
{"alpha2": "NZ", "alpha3": "NZL", "country_code": "64", "phone_number_lengths": [8, 9, 10], "validation_begin_with": ["2"]},
{"alpha2": "OM", "alpha3": "OMN", "country_code": "968", "phone_number_lengths": [8], "validation_begin_with": ["9"]},
{"alpha2": "PK", "alpha3": "PAK", "country_code": "92", "phone_number_lengths": [10], "validation_begin_with": ["3"]},
{"alpha2": "PA", "alpha3": "PAN", "country_code": "507", "phone_number_lengths": [8], "validation_begin_with": ["5", "6"]},
{"alpha2": "PN", "alpha3": "PCN", "country_code": "", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "PE", "alpha3": "PER", "country_code": "51", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "PH", "alpha3": "PHL", "country_code": "63", "phone_number_lengths": [10], "validation_begin_with": ["9"]},
{"alpha2": "PW", "alpha3": "PLW", "country_code": "680", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "PG", "alpha3": "PNG", "country_code": "675", "phone_number_lengths": [8], "validation_begin_with": ["7"]},
{"alpha2": "PL", "alpha3": "POL", "country_code": "48", "phone_number_lengths": [9], "validation_begin_with": ["5", "6", "7", "8"]},
{"alpha2": "PR", "alpha3": "PRI", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "KP", "alpha3": "PRK", "country_code": "850", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "PT", "alpha3": "PRT", "country_code": "351", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "PY", "alpha3": "PRY", "country_code": "595", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "PS", "alpha3": "PSE", "country_code": "970", "phone_number_lengths": [9], "validation_begin_with": ["5"]},
{"alpha2": "PF", "alpha3": "PYF", "country_code": "689", "phone_number_lengths": [6], "validation_begin_with": []},
{"alpha2": "QA", "alpha3": "QAT", "country_code": "974", "phone_number_lengths": [8], "validation_begin_with": ["33", "55", "66", "77"]},
{"alpha2": "RE", "alpha3": "REU", "country_code": "262", "phone_number_lengths": [9], "validation_begin_with": ["692", "693"]},
{"alpha2": "RO", "alpha3": "ROU", "country_code": "40", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "RU", "alpha3": "RUS", "country_code": "7", "phone_number_lengths": [10], "validation_begin_with": ["9"]},
{"alpha2": "RW", "alpha3": "RWA", "country_code": "250", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "SA", "alpha3": "SAU", "country_code": "966", "phone_number_lengths": [9], "validation_begin_with": ["5"]},
{"alpha2": "SD", "alpha3": "SDN", "country_code": "249", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "SN", "alpha3": "SEN", "country_code": "221", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "SG", "alpha3": "SGP", "country_code": "65", "phone_number_lengths": [8], "validation_begin_with": ["8", "9"]},
{"alpha2": "GS", "alpha3": "SGS", "country_code": "500", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "SH", "alpha3": "SHN", "country_code": "290", "phone_number_lengths": [4], "validation_begin_with": []},
{"alpha2": "SJ", "alpha3": "SJM", "country_code": "47", "phone_number_lengths": [8], "validation_begin_with": []},
{"alpha2": "SB", "alpha3": "SLB", "country_code": "677", "phone_number_lengths": [7], "validation_begin_with": ["7", "8"]},
{"alpha2": "SL", "alpha3": "SLE", "country_code": "232", "phone_number_lengths": [8], "validation_begin_with": ["21", "25", "30", "33", "34", "40", "44", "50", "55", "76", "77", "78", "79", "88"]},
{"alpha2": "SV", "alpha3": "SLV", "country_code": "503", "phone_number_lengths": [8], "validation_begin_with": ["7"]},
{"alpha2": "SM", "alpha3": "SMR", "country_code": "378", "phone_number_lengths": [10], "validation_begin_with": ["3", "6"]},
{"alpha2": "SO", "alpha3": "SOM", "country_code": "252", "phone_number_lengths": [8], "validation_begin_with": ["9"]},
{"alpha2": "PM", "alpha3": "SPM", "country_code": "508", "phone_number_lengths": [6], "validation_begin_with": ["55"]},
{"alpha2": "RS", "alpha3": "SRB", "country_code": "381", "phone_number_lengths": [8, 9], "validation_begin_with": ["6"]},
{"alpha2": "ST", "alpha3": "STP", "country_code": "239", "phone_number_lengths": [7], "validation_begin_with": ["98", "99"]},
{"alpha2": "SR", "alpha3": "SUR", "country_code": "597", "phone_number_lengths": [7], "validation_begin_with": ["6", "7", "8"]},
{"alpha2": "SK", "alpha3": "SVK", "country_code": "421", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "SI", "alpha3": "SVN", "country_code": "386", "phone_number_lengths": [8], "validation_begin_with": ["3", "4", "5", "6", "7"]},
{"alpha2": "SE", "alpha3": "SWE", "country_code": "46", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "SZ", "alpha3": "SWZ", "country_code": "268", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "SC", "alpha3": "SYC", "country_code": "248", "phone_number_lengths": [7], "validation_begin_with": ["2"]},
{"alpha2": "SY", "alpha3": "SYR", "country_code": "963", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "TC", "alpha3": "TCA", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": ["2", "3", "4"]},
{"alpha2": "TD", "alpha3": "TCD", "country_code": "235", "phone_number_lengths": [8], "validation_begin_with": ["6", "7", "9"]},
{"alpha2": "TG", "alpha3": "TGO", "country_code": "228", "phone_number_lengths": [8], "validation_begin_with": ["9"]},
{"alpha2": "TH", "alpha3": "THA", "country_code": "66", "phone_number_lengths": [9], "validation_begin_with": ["8", "9"]},
{"alpha2": "TJ", "alpha3": "TJK", "country_code": "992", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "TK", "alpha3": "TKL", "country_code": "690", "phone_number_lengths": [4], "validation_begin_with": []},
{"alpha2": "TM", "alpha3": "TKM", "country_code": "993", "phone_number_lengths": [8], "validation_begin_with": []},
{"alpha2": "TL", "alpha3": "TLS", "country_code": "670", "phone_number_lengths": [8], "validation_begin_with": ["7"]},
{"alpha2": "TO", "alpha3": "TON", "country_code": "676", "phone_number_lengths": [5], "validation_begin_with": []},
{"alpha2": "TT", "alpha3": "TTO", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "TN", "alpha3": "TUN", "country_code": "216", "phone_number_lengths": [8], "validation_begin_with": ["2", "9"]},
{"alpha2": "TR", "alpha3": "TUR", "country_code": "90", "phone_number_lengths": [10], "validation_begin_with": ["5"]},
{"alpha2": "TV", "alpha3": "TUV", "country_code": "688", "phone_number_lengths": [5], "validation_begin_with": []},
{"alpha2": "TW", "alpha3": "TWN", "country_code": "886", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "TZ", "alpha3": "TZA", "country_code": "255", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "UG", "alpha3": "UGA", "country_code": "256", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "UA", "alpha3": "UKR", "country_code": "380", "phone_number_lengths": [9], "validation_begin_with": ["39", "50", "63", "66", "67", "68", "9"]},
{"alpha2": "UM", "alpha3": "UMI", "country_code": "", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "UY", "alpha3": "URY", "country_code": "598", "phone_number_lengths": [8], "validation_begin_with": ["9"]},
// http://en.wikipedia.org/wiki/List_of_North_American_Numbering_Plan_area_codes#900.E2.80.93999
{"alpha2": "US", "alpha3": "USA", "country_code": "1", "phone_number_lengths": [10],
"validation_begin_with": ["201", "202", "203", "205", "206", "207", "208", "209", "210", "212", "213", "214",
"215", "216", "217", "218", "219", "224", "225", "227", "228", "229", "231", "234", "239", "240", "248",
"251", "252", "253", "254", "256", "260", "262", "267", "269", "270", "272", "274", "276", "281", "283",
"301", "302", "303", "304", "305", "307", "308", "309", "310", "312", "313", "314", "315", "316", "317",
"318", "319", "320", "321", "323", "325", "327", "330", "331", "334", "336", "337", "339", "341", "346",
"347", "351", "352", "360", "361", "364", "369", "380", "385", "386", "401", "402", "404", "405", "406",
"407", "408", "409", "410", "412", "413", "414", "415", "417", "419", "423", "424", "425", "430", "432",
"434", "435", "440", "442", "443", "445", "447", "458", "464", "469", "470", "475", "478", "479", "480",
"484", "501", "502", "503", "504", "505", "507", "508", "509", "510", "512", "513", "515", "516", "517",
"518", "520", "530", "531", "534", "539", "540", "541", "551", "557", "559", "561", "562", "563", "564",
"567", "570", "571", "573", "574", "575", "580", "582", "585", "586", "601", "602", "603", "605", "606",
"607", "608", "609", "610", "612", "614", "615", "616", "617", "618", "619", "620", "623", "626", "627",
"628", "630", "631", "636", "641", "646", "650", "651", "657", "659", "660", "661", "662", "667", "669",
"678", "679", "681", "682", "689", "701", "702", "703", "704", "706", "707", "708", "712", "713", "714",
"715", "716", "717", "718", "719", "720", "724", "725", "727", "730", "731", "732", "734", "737", "740",
"747", "754", "757", "760", "762", "763", "764", "765", "769", "770", "772", "773", "774", "775", "779",
"781", "785", "786", "801", "802", "803", "804", "805", "806", "808", "810", "812", "813", "814", "815",
"816", "817", "818", "828", "830", "831", "832", "835", "843", "845", "847", "848", "850", "856", "857",
"858", "859", "860", "862", "863", "864", "865", "870", "872", "878", "901", "903", "904", "906", "907",
"908", "909", "910", "912", "913", "914", "915", "916", "917", "918", "919", "920", "925", "928", "929",
"931", "935", "936", "937", "938", "940", "941", "947", "949", "951", "952", "954", "956", "959", "970",
"971", "972", "973", "975", "978", "979", "980", "984", "985", "989"]},
{"alpha2": "UZ", "alpha3": "UZB", "country_code": "998", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "VA", "alpha3": "VAT", "country_code": "39", "phone_number_lengths": [], "validation_begin_with": []},
{"alpha2": "VC", "alpha3": "VCT", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "VE", "alpha3": "VEN", "country_code": "58", "phone_number_lengths": [10], "validation_begin_with": ["4"]},
{"alpha2": "VG", "alpha3": "VGB", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "VI", "alpha3": "VIR", "country_code": "1", "phone_number_lengths": [7], "validation_begin_with": []},
{"alpha2": "VN", "alpha3": "VNM", "country_code": "84", "phone_number_lengths": [9, 10], "validation_begin_with": ["9", "1"]},
{"alpha2": "VU", "alpha3": "VUT", "country_code": "678", "phone_number_lengths": [7], "validation_begin_with": ["5", "7"]},
{"alpha2": "WF", "alpha3": "WLF", "country_code": "681", "phone_number_lengths": [6], "validation_begin_with": []},
{"alpha2": "WS", "alpha3": "WSM", "country_code": "685", "phone_number_lengths": [7], "validation_begin_with": ["7"]},
{"alpha2": "YE", "alpha3": "YEM", "country_code": "967", "phone_number_lengths": [9], "validation_begin_with": ["7"]},
{"alpha2": "ZA", "alpha3": "ZAF", "country_code": "27", "phone_number_lengths": [9], "validation_begin_with": ["6", "7", "8"]},
{"alpha2": "ZM", "alpha3": "ZMB", "country_code": "260", "phone_number_lengths": [9], "validation_begin_with": ["9"]},
{"alpha2": "ZW", "alpha3": "ZWE", "country_code": "263", "phone_number_lengths": [9], "validation_begin_with": ["71", "73", "77"]}
];
var iso2_map = {
"AW": "0", "AF": "1", "AO": "2", "AI": "3", "AX": "4", "AL": "5", "AD": "6", "AN": "7", "AE": "8", "AR": "9", "AM": "10",
"AS": "11", "AQ": "12", "TF": "13", "AG": "14", "AU": "15", "AT": "16", "AZ": "17", "BI": "18", "BE": "19", "BJ": "20",
"BF": "21", "BD": "22", "BG": "23", "BH": "24", "BS": "25", "BA": "26", "BL": "27", "BY": "28", "BZ": "29", "BM": "30",
"BO": "31", "BR": "32", "BB": "33", "BN": "34", "BT": "35", "BV": "36", "BW": "37", "CF": "38", "CA": "39", "CC": "40",
"CH": "41", "CL": "42", "CN": "43", "CI": "44", "CM": "45", "CD": "46", "CG": "47", "CK": "48", "CO": "49", "KM": "50",
"CV": "51", "CR": "52", "CU": "53", "CX": "54", "KY": "55", "CY": "56", "CZ": "57", "DE": "58", "DJ": "59", "DM": "60",
"DK": "61", "DO": "62", "DZ": "63", "EC": "64", "EG": "65", "ER": "66", "EH": "67", "ES": "68", "EE": "69", "ET": "70",
"FI": "71", "FJ": "72", "FK": "73", "FR": "74", "FO": "75", "FM": "76", "GA": "77", "GB": "78", "GE": "79", "GG": "80",
"GH": "81", "GI": "82", "GN": "83", "GP": "84", "GM": "85", "GW": "86", "GQ": "87", "GR": "88", "GD": "89", "GL": "90",
"GT": "91", "GF": "92", "GU": "93", "GY": "94", "HK": "95", "HM": "96", "HN": "97", "HR": "98", "HT": "99", "HU": "100",
"ID": "101", "IM": "102", "IN": "103", "IO": "104", "IE": "105", "IR": "106", "IQ": "107", "IS": "108", "IL": "109", "IT": "110",
"JM": "111", "JE": "112", "JO": "113", "JP": "114", "KZ": "115", "KE": "116", "KG": "117", "KH": "118", "KI": "119", "KN": "120",
"KR": "121", "KW": "122", "LA": "123", "LB": "124", "LR": "125", "LY": "126", "LC": "127", "LI": "128", "LK": "129", "LS": "130",
"LT": "131", "LU": "132", "LV": "133", "MO": "134", "MF": "135", "MA": "136", "MC": "137", "MD": "138", "MG": "139", "MV": "140",
"MX": "141", "MH": "142", "MK": "143", "ML": "144", "MT": "145", "MM": "146", "ME": "147", "MN": "148", "MP": "149", "MZ": "150",
"MR": "151", "MS": "152", "MQ": "153", "MU": "154", "MW": "155", "MY": "156", "YT": "157", "NA": "158", "NC": "159", "NE": "160",
"NF": "161", "NG": "162", "NI": "163", "NU": "164", "NL": "165", "NO": "166", "NP": "167", "NR": "168", "NZ": "169", "OM": "170",
"PK": "171", "PA": "172", "PN": "173", "PE": "174", "PH": "175", "PW": "176", "PG": "177", "PL": "178", "PR": "179", "KP": "180",
"PT": "181", "PY": "182", "PS": "183", "PF": "184", "QA": "185", "RE": "186", "RO": "187", "RU": "188", "RW": "189", "SA": "190",
"SD": "191", "SN": "192", "SG": "193", "GS": "194", "SH": "195", "SJ": "196", "SB": "197", "SL": "198", "SV": "199", "SM": "200",
"SO": "201", "PM": "202", "RS": "203", "ST": "204", "SR": "205", "SK": "206", "SI": "207", "SE": "208", "SZ": "209", "SC": "210",
"SY": "211", "TC": "212", "TD": "213", "TG": "214", "TH": "215", "TJ": "216", "TK": "217", "TM": "218", "TL": "219", "TO": "220",
"TT": "221", "TN": "222", "TR": "223", "TV": "224", "TW": "225", "TZ": "226", "UG": "227", "UA": "228", "UM": "229", "UY": "230",
"US": "231", "UZ": "232", "VA": "233", "VC": "234", "VE": "235", "VG": "236", "VI": "237", "VN": "238", "VU": "239", "WF": "240",
"WS": "241", "YE": "242", "ZA": "243", "ZM": "244", "ZW": "245"
};
var iso3_map = {
"ABW": "0", "AFG": "1", "AGO": "2", "AIA": "3", "ALA": "4", "ALB": "5", "AND": "6", "ANT": "7", "ARE": "8", "ARG": "9", "ARM": "10",
"ASM": "11", "ATA": "12", "ATF": "13", "ATG": "14", "AUS": "15", "AUT": "16", "AZE": "17", "BDI": "18", "BEL": "19", "BEN": "20",
"BFA": "21", "BGD": "22", "BGR": "23", "BHR": "24", "BHS": "25", "BIH": "26", "BLM": "27", "BLR": "28", "BLZ": "29", "BMU": "30",
"BOL": "31", "BRA": "32", "BRB": "33", "BRN": "34", "BTN": "35", "BVT": "36", "BWA": "37", "CAF": "38", "CAN": "39", "CCK": "40",
"CHE": "41", "CHL": "42", "CHN": "43", "CIV": "44", "CMR": "45", "COD": "46", "COG": "47", "COK": "48", "COL": "49", "COM": "50",
"CPV": "51", "CRI": "52", "CUB": "53", "CXR": "54", "CYM": "55", "CYP": "56", "CZE": "57", "DEU": "58", "DJI": "59", "DMA": "60",
"DNK": "61", "DOM": "62", "DZA": "63", "ECU": "64", "EGY": "65", "ERI": "66", "ESH": "67", "ESP": "68", "EST": "69", "ETH": "70",
"FIN": "71", "FJI": "72", "FLK": "73", "FRA": "74", "FRO": "75", "FSM": "76", "GAB": "77", "GBR": "78", "GEO": "79", "GGY": "80",
"GHA": "81", "GIB": "82", "GIN": "83", "GLP": "84", "GMB": "85", "GNB": "86", "GNQ": "87", "GRC": "88", "GRD": "89", "GRL": "90",
"GTM": "91", "GUF": "92", "GUM": "93", "GUY": "94", "HKG": "95", "HMD": "96", "HND": "97", "HRV": "98", "HTI": "99", "HUN": "100",
"IDN": "101", "IMN": "102", "IND": "103", "IOT": "104", "IRL": "105", "IRN": "106", "IRQ": "107", "ISL": "108", "ISR": "109", "ITA": "110",
"JAM": "111", "JEY": "112", "JOR": "113", "JPN": "114", "KAZ": "115", "KEN": "116", "KGZ": "117", "KHM": "118", "KIR": "119", "KNA": "120",
"KOR": "121", "KWT": "122", "LAO": "123", "LBN": "124", "LBR": "125", "LBY": "126", "LCA": "127", "LIE": "128", "LKA": "129", "LSO": "130",
"LTU": "131", "LUX": "132", "LVA": "133", "MAC": "134", "MAF": "135", "MAR": "136", "MCO": "137", "MDA": "138", "MDG": "139", "MDV": "140",
"MEX": "141", "MHL": "142", "MKD": "143", "MLI": "144", "MLT": "145", "MMR": "146", "MNE": "147", "MNG": "148", "MNP": "149", "MOZ": "150",
"MRT": "151", "MSR": "152", "MTQ": "153", "MUS": "154", "MWI": "155", "MYS": "156", "MYT": "157", "NAM": "158", "NCL": "159", "NER": "160",
"NFK": "161", "NGA": "162", "NIC": "163", "NIU": "164", "NLD": "165", "NOR": "166", "NPL": "167", "NRU": "168", "NZL": "169", "OMN": "170",
"PAK": "171", "PAN": "172", "PCN": "173", "PER": "174", "PHL": "175", "PLW": "176", "PNG": "177", "POL": "178", "PRI": "179", "PRK": "180",
"PRT": "181", "PRY": "182", "PSE": "183", "PYF": "184", "QAT": "185", "REU": "186", "ROU": "187", "RUS": "188", "RWA": "189", "SAU": "190",
"SDN": "191", "SEN": "192", "SGP": "193", "SGS": "194", "SHN": "195", "SJM": "196", "SLB": "197", "SLE": "198", "SLV": "199", "SMR": "200",
"SOM": "201", "SPM": "202", "SRB": "203", "STP": "204", "SUR": "205", "SVK": "206", "SVN": "207", "SWE": "208", "SWZ": "209", "SYC": "210",
"SYR": "211", "TCA": "212", "TCD": "213", "TGO": "214", "THA": "215", "TJK": "216", "TKL": "217", "TKM": "218", "TLS": "219", "TON": "220",
"TTO": "221", "TUN": "222", "TUR": "223", "TUV": "224", "TWN": "225", "TZA": "226", "UGA": "227", "UKR": "228", "UMI": "229", "URY": "230",
"USA": "231", "UZB": "232", "VAT": "233", "VCT": "234", "VEN": "235", "VGB": "236", "VIR": "237", "VNM": "238", "VUT": "239", "WLF": "240",
"WSM": "241", "YEM": "242", "ZAF": "243", "ZMB": "244", "ZWE": "245"
};
var country_name_map = {
"0": "Aruba",
"1": "Afghanistan",
"2": "Angola",
"3": "Anguilla",
"4": "Åland Islands",
"5": "Albania",
"6": "Andorra",
"7": "Netherlands Antilles",
"8": "United Arab Emirates",
"9": "Argentina",
"10": "Armenia",
"11": "American Samoa",
"12": "Antarctica",
"13": "French Southern Territories",
"14": "Antigua and Barbuda",
"15": "Australia",
"16": "Austria",
"17": "Azerbaijan",
"18": "Burundi",
"19": "Belgium",
"20": "Benin",
"21": "Burkina Faso",
"22": "Bangladesh",
"23": "Bulgaria",
"24": "Bahrain",
"25": "Bahamas",
"26": "Bosnia and Herzegovina",
"27": "Saint Barthélemy",
"28": "Belarus",
"29": "Belize",
"30": "Bermuda",
"31": "Bolivia",
"32": "Brazil",
"33": "Barbados",
"34": "Brunei Darussalam",
"35": "Bhutan",
"36": "Bouvet Island",
"37": "Botswana",
"38": "Central African Republic",
"39": "Canada",
"40": "Cocos (Keeling) Islands",
"41": "Switzerland",
"42": "Chile",
"43": "China",
"44": "Côte D'Ivoire",
"45": "Cameroon",
"46": "Congo, The Democratic Republic Of The",
"47": "Congo",
"48": "Cook Islands",
"49": "Colombia",
"50": "Comoros",
"51": "Cape Verde",
"52": "Costa Rica",
"53": "Cuba",
"54": "Christmas Island",
"55": "Cayman Islands",
"56": "Cyprus",
"57": "Czech Republic",
"58": "Germany",
"59": "Djibouti",
"60": "Dominica",
"61": "Denmark",
"62": "Dominican Republic",
"63": "Algeria",
"64": "Ecuador",
"65": "Egypt",
"66": "Eritrea",
"67": "Western Sahara",
"68": "Spain",
"69": "Estonia",
"70": "Ethiopia",
"71": "Finland",
"72": "Fiji",
"73": "Falkland Islands (Malvinas)",
"74": "France",
"75": "Faroe Islands",
"76": "Micronesia, Federated States Of",
"77": "Gabon",
"78": "United Kingdom",
"79": "Georgia",
"80": "Guernsey",
"81": "Ghana",
"82": "Gibraltar",
"83": "Guinea",
"84": "Guadeloupe",
"85": "Gambia",
"86": "Guinea-Bissau",
"87": "Equatorial Guinea",
"88": "Greece",
"89": "Grenada",
"90": "Greenland",
"91": "Guatemala",
"92": "French Guiana",
"93": "Guam",
"94": "Guyana",
"95": "Hong Kong",
"96": "Heard and McDonald Islands",
"97": "Honduras",
"98": "Croatia",
"99": "Haiti",
"100": "Hungary",
"101": "Indonesia",
"102": "Isle of Man",
"103": "India",
"104": "British Indian Ocean Territory",
"105": "Ireland",
"106": "Iran, Islamic Republic Of",
"107": "Iraq",
"108": "Iceland",
"109": "Israel",
"110": "Italy",
"111": "Jamaica",
"112": "Jersey",
"113": "Jordan",
"114": "Japan",
"115": "Kazakhstan",
"116": "Kenya",
"117": "Kyrgyzstan",
"118": "Cambodia",
"119": "Kiribati",
"120": "Saint Kitts And Nevis",
"121": "Korea, Republic of",
"122": "Kuwait",
"123": "Lao People's Democratic Republic",
"124": "Lebanon",
"125": "Liberia",
"126": "Libyan Arab Jamahiriya",
"127": "Saint Lucia",
"128": "Liechtenstein",
"129": "Sri Lanka",
"130": "Lesotho",
"131": "Lithuania",
"132": "Luxembourg",
"133": "Latvia",
"134": "Macao",
"135": "Saint Martin",
"136": "Morocco",
"137": "Monaco",
"138": "Moldova, Republic of",
"139": "Madagascar",
"140": "Maldives",
"141": "Mexico",
"142": "Marshall Islands",
"143": "Macedonia, the Former Yugoslav Republic Of",
"144": "Mali",
"145": "Malta",
"146": "Myanmar",
"147": "Montenegro",
"148": "Mongolia",
"149": "Northern Mariana Islands",
"150": "Mozambique",
"151": "Mauritania",
"152": "Montserrat",
"153": "Martinique",
"154": "Mauritius",
"155": "Malawi",
"156": "Malaysia",
"157": "Mayotte",
"158": "Namibia",
"159": "New Caledonia",
"160": "Niger",
"161": "Norfolk Island",
"162": "Nigeria",
"163": "Nicaragua",
"164": "Niue",
"165": "Netherlands",
"166": "Norway",
"167": "Nepal",
"168": "Nauru",
"169": "New Zealand",
"170": "Oman",
"171": "Pakistan",
"172": "Panama",
"173": "Pitcairn",
"174": "Peru",
"175": "Philippines",
"176": "Palau",
"177": "Papua New Guinea",
"178": "Poland",
"179": "Puerto Rico",
"180": "Korea, Democratic People's Republic Of",
"181": "Portugal",
"182": "Paraguay",
"183": "Palestinian Territory, Occupied",
"184": "French Polynesia",
"185": "Qatar",
"186": "Réunion",
"187": "Romania",
"188": "Russian Federation",
"189": "Rwanda",
"190": "Saudi Arabia",
"191": "Sudan",
"192": "Senegal",
"193": "Singapore",
"194": "South Georgia and the South Sandwich Islands",
"195": "Saint Helena",
"196": "Svalbard And Jan Mayen",
"197": "Solomon Islands",
"198": "Sierra Leone",
"199": "El Salvador",
"200": "San Marino",
"201": "Somalia",
"202": "Saint Pierre And Miquelon",
"203": "Serbia",
"204": "Sao Tome and Principe",
"205": "Suriname",
"206": "Slovakia",
"207": "Slovenia",
"208": "Sweden",
"209": "Swaziland",
"210": "Seychelles",
"211": "Syrian Arab Republic",
"212": "Turks and Caicos Islands",
"213": "Chad",
"214": "Togo",
"215": "Thailand",
"216": "Tajikistan",
"217": "Tokelau",
"218": "Turkmenistan",
"219": "Timor-Leste",
"220": "Tonga",
"221": "Trinidad and Tobago",
"222": "Tunisia",
"223": "Turkey",
"224": "Tuvalu",
"225": "Taiwan, Province Of China",
"226": "Tanzania, United Republic of",
"227": "Uganda",
"228": "Ukraine",
"229": "United States Minor Outlying Islands",
"230": "Uruguay",
"231": "United States",
"232": "Uzbekistan",
"233": "Holy See (Vatican City State)",
"234": "Saint Vincent And The Grenedines",
"235": "Venezuela, Bolivarian Republic of",
"236": "Virgin Islands, British",
"237": "Virgin Islands, U.S.",
"238": "Viet Nam",
"239": "Vanuatu",
"240": "Wallis and Futuna",
"241": "Samoa",
"242": "Yemen",
"243": "South Africa",
"244": "Zambia",
"245": "Zimbabwe"
};
var iso3166 = null;
if (country) {

@@ -635,5 +624,28 @@ if (country.length === 3) {

country_lookup[country] = iso3166;
return iso3166;
}
/**
*
* if there is + sign in the phone, it will skip ALL validation and simply return the clean E.164 phone format
*
* @param phone
* @param country
* @returns {*}
*/
module.exports = function(phone, country) {
phone = (phone === null || typeof(phone) !== 'string') ? '' : phone.trim();
country = (country === null || typeof(country) !== 'string') ? '' : country.trim();
if (phone.match(/^\+/)) {
return '+' + phone.replace(/\D/g, '');
}
// remove any non-digit character
phone = phone.replace(/\D/g, '');
var iso3166 = getISO3166(country);
// remove leading 0s for all countries except 'GAB', 'CIV', 'COG'

@@ -640,0 +652,0 @@ if (['GAB', 'CIV', 'COG'].indexOf(iso3166.alpha3) === -1) {

{
"name": "phone",
"version": "0.0.4",
"description": "With a given country and phone number, validate and format the phone number to E.164 standard",
"main": "./lib/index",
"engines": {
"node": ">=0.8"
},
"directories": {
"lib": "./lib"
},
"scripts": {
"test": "mocha --recursive -R spec"
},
"repository": {
"type": "git",
"url": "https://github.com/aftership/node-phone"
},
"bugs": {
"url": "https://github.com/aftership/node-phone/issues"
},
"devDependencies": {
"mocha": "latest",
"should": "latest"
},
"keywords": [
"phone", "e.164"
],
"author": "AfterShip",
"license": "MIT"
"name": "phone",
"version": "0.0.5",
"description": "With a given country and phone number, validate and format the phone number to E.164 standard",
"main": "./lib/index",
"engines": {
"node": ">=0.8"
},
"directories": {
"test": "test"
},
"scripts": {
"test": "mocha --recursive -R spec"
},
"repository": {
"type": "git",
"url": "https://github.com/aftership/node-phone"
},
"bugs": {
"url": "https://github.com/aftership/node-phone/issues"
},
"devDependencies": {
"mocha": "latest",
"should": "latest"
},
"keywords": [
"phone",
"e.164"
],
"author": "AfterShip",
"license": "MIT",
"homepage": "https://github.com/aftership/node-phone",
"dependencies": {
"should": "~3.0.1"
}
}

@@ -79,3 +79,3 @@ ## What is node-phone?

## Change Log
* 0.0.5 Performance tuning, updated Iceland mobile format to 7 digits only.
* 0.0.4 Added US, CA area code to make it more accurate.

@@ -82,0 +82,0 @@

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc