forked from daviddrysdale/python-phonenumbers
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy path__init__.py
More file actions
497 lines (495 loc) · 15.5 KB
/
Copy path__init__.py
File metadata and controls
497 lines (495 loc) · 15.5 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
"""Auto-generated file, do not edit by hand."""
# Copyright (C) 2010-2013 The Libphonenumber Authors
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
from .region_800 import PHONE_METADATA_800
from .region_808 import PHONE_METADATA_808
from .region_870 import PHONE_METADATA_870
from .region_878 import PHONE_METADATA_878
from .region_881 import PHONE_METADATA_881
from .region_882 import PHONE_METADATA_882
from .region_883 import PHONE_METADATA_883
from .region_888 import PHONE_METADATA_888
from .region_979 import PHONE_METADATA_979
from .region_AC import PHONE_METADATA_AC
from .region_AD import PHONE_METADATA_AD
from .region_AE import PHONE_METADATA_AE
from .region_AF import PHONE_METADATA_AF
from .region_AG import PHONE_METADATA_AG
from .region_AI import PHONE_METADATA_AI
from .region_AL import PHONE_METADATA_AL
from .region_AM import PHONE_METADATA_AM
from .region_AO import PHONE_METADATA_AO
from .region_AR import PHONE_METADATA_AR
from .region_AS import PHONE_METADATA_AS
from .region_AT import PHONE_METADATA_AT
from .region_AU import PHONE_METADATA_AU
from .region_AW import PHONE_METADATA_AW
from .region_AX import PHONE_METADATA_AX
from .region_AZ import PHONE_METADATA_AZ
from .region_BA import PHONE_METADATA_BA
from .region_BB import PHONE_METADATA_BB
from .region_BD import PHONE_METADATA_BD
from .region_BE import PHONE_METADATA_BE
from .region_BF import PHONE_METADATA_BF
from .region_BG import PHONE_METADATA_BG
from .region_BH import PHONE_METADATA_BH
from .region_BI import PHONE_METADATA_BI
from .region_BJ import PHONE_METADATA_BJ
from .region_BL import PHONE_METADATA_BL
from .region_BM import PHONE_METADATA_BM
from .region_BN import PHONE_METADATA_BN
from .region_BO import PHONE_METADATA_BO
from .region_BQ import PHONE_METADATA_BQ
from .region_BR import PHONE_METADATA_BR
from .region_BS import PHONE_METADATA_BS
from .region_BT import PHONE_METADATA_BT
from .region_BW import PHONE_METADATA_BW
from .region_BY import PHONE_METADATA_BY
from .region_BZ import PHONE_METADATA_BZ
from .region_CA import PHONE_METADATA_CA
from .region_CC import PHONE_METADATA_CC
from .region_CD import PHONE_METADATA_CD
from .region_CF import PHONE_METADATA_CF
from .region_CG import PHONE_METADATA_CG
from .region_CH import PHONE_METADATA_CH
from .region_CI import PHONE_METADATA_CI
from .region_CK import PHONE_METADATA_CK
from .region_CL import PHONE_METADATA_CL
from .region_CM import PHONE_METADATA_CM
from .region_CN import PHONE_METADATA_CN
from .region_CO import PHONE_METADATA_CO
from .region_CR import PHONE_METADATA_CR
from .region_CU import PHONE_METADATA_CU
from .region_CV import PHONE_METADATA_CV
from .region_CW import PHONE_METADATA_CW
from .region_CX import PHONE_METADATA_CX
from .region_CY import PHONE_METADATA_CY
from .region_CZ import PHONE_METADATA_CZ
from .region_DE import PHONE_METADATA_DE
from .region_DJ import PHONE_METADATA_DJ
from .region_DK import PHONE_METADATA_DK
from .region_DM import PHONE_METADATA_DM
from .region_DO import PHONE_METADATA_DO
from .region_DZ import PHONE_METADATA_DZ
from .region_EC import PHONE_METADATA_EC
from .region_EE import PHONE_METADATA_EE
from .region_EG import PHONE_METADATA_EG
from .region_EH import PHONE_METADATA_EH
from .region_ER import PHONE_METADATA_ER
from .region_ES import PHONE_METADATA_ES
from .region_ET import PHONE_METADATA_ET
from .region_FI import PHONE_METADATA_FI
from .region_FJ import PHONE_METADATA_FJ
from .region_FK import PHONE_METADATA_FK
from .region_FM import PHONE_METADATA_FM
from .region_FO import PHONE_METADATA_FO
from .region_FR import PHONE_METADATA_FR
from .region_GA import PHONE_METADATA_GA
from .region_GB import PHONE_METADATA_GB
from .region_GD import PHONE_METADATA_GD
from .region_GE import PHONE_METADATA_GE
from .region_GF import PHONE_METADATA_GF
from .region_GG import PHONE_METADATA_GG
from .region_GH import PHONE_METADATA_GH
from .region_GI import PHONE_METADATA_GI
from .region_GL import PHONE_METADATA_GL
from .region_GM import PHONE_METADATA_GM
from .region_GN import PHONE_METADATA_GN
from .region_GP import PHONE_METADATA_GP
from .region_GQ import PHONE_METADATA_GQ
from .region_GR import PHONE_METADATA_GR
from .region_GT import PHONE_METADATA_GT
from .region_GU import PHONE_METADATA_GU
from .region_GW import PHONE_METADATA_GW
from .region_GY import PHONE_METADATA_GY
from .region_HK import PHONE_METADATA_HK
from .region_HN import PHONE_METADATA_HN
from .region_HR import PHONE_METADATA_HR
from .region_HT import PHONE_METADATA_HT
from .region_HU import PHONE_METADATA_HU
from .region_ID import PHONE_METADATA_ID
from .region_IE import PHONE_METADATA_IE
from .region_IL import PHONE_METADATA_IL
from .region_IM import PHONE_METADATA_IM
from .region_IN import PHONE_METADATA_IN
from .region_IO import PHONE_METADATA_IO
from .region_IQ import PHONE_METADATA_IQ
from .region_IR import PHONE_METADATA_IR
from .region_IS import PHONE_METADATA_IS
from .region_IT import PHONE_METADATA_IT
from .region_JE import PHONE_METADATA_JE
from .region_JM import PHONE_METADATA_JM
from .region_JO import PHONE_METADATA_JO
from .region_JP import PHONE_METADATA_JP
from .region_KE import PHONE_METADATA_KE
from .region_KG import PHONE_METADATA_KG
from .region_KH import PHONE_METADATA_KH
from .region_KI import PHONE_METADATA_KI
from .region_KM import PHONE_METADATA_KM
from .region_KN import PHONE_METADATA_KN
from .region_KP import PHONE_METADATA_KP
from .region_KR import PHONE_METADATA_KR
from .region_KW import PHONE_METADATA_KW
from .region_KY import PHONE_METADATA_KY
from .region_KZ import PHONE_METADATA_KZ
from .region_LA import PHONE_METADATA_LA
from .region_LB import PHONE_METADATA_LB
from .region_LC import PHONE_METADATA_LC
from .region_LI import PHONE_METADATA_LI
from .region_LK import PHONE_METADATA_LK
from .region_LR import PHONE_METADATA_LR
from .region_LS import PHONE_METADATA_LS
from .region_LT import PHONE_METADATA_LT
from .region_LU import PHONE_METADATA_LU
from .region_LV import PHONE_METADATA_LV
from .region_LY import PHONE_METADATA_LY
from .region_MA import PHONE_METADATA_MA
from .region_MC import PHONE_METADATA_MC
from .region_MD import PHONE_METADATA_MD
from .region_ME import PHONE_METADATA_ME
from .region_MF import PHONE_METADATA_MF
from .region_MG import PHONE_METADATA_MG
from .region_MH import PHONE_METADATA_MH
from .region_MK import PHONE_METADATA_MK
from .region_ML import PHONE_METADATA_ML
from .region_MM import PHONE_METADATA_MM
from .region_MN import PHONE_METADATA_MN
from .region_MO import PHONE_METADATA_MO
from .region_MP import PHONE_METADATA_MP
from .region_MQ import PHONE_METADATA_MQ
from .region_MR import PHONE_METADATA_MR
from .region_MS import PHONE_METADATA_MS
from .region_MT import PHONE_METADATA_MT
from .region_MU import PHONE_METADATA_MU
from .region_MV import PHONE_METADATA_MV
from .region_MW import PHONE_METADATA_MW
from .region_MX import PHONE_METADATA_MX
from .region_MY import PHONE_METADATA_MY
from .region_MZ import PHONE_METADATA_MZ
from .region_NA import PHONE_METADATA_NA
from .region_NC import PHONE_METADATA_NC
from .region_NE import PHONE_METADATA_NE
from .region_NF import PHONE_METADATA_NF
from .region_NG import PHONE_METADATA_NG
from .region_NI import PHONE_METADATA_NI
from .region_NL import PHONE_METADATA_NL
from .region_NO import PHONE_METADATA_NO
from .region_NP import PHONE_METADATA_NP
from .region_NR import PHONE_METADATA_NR
from .region_NU import PHONE_METADATA_NU
from .region_NZ import PHONE_METADATA_NZ
from .region_OM import PHONE_METADATA_OM
from .region_PA import PHONE_METADATA_PA
from .region_PE import PHONE_METADATA_PE
from .region_PF import PHONE_METADATA_PF
from .region_PG import PHONE_METADATA_PG
from .region_PH import PHONE_METADATA_PH
from .region_PK import PHONE_METADATA_PK
from .region_PL import PHONE_METADATA_PL
from .region_PM import PHONE_METADATA_PM
from .region_PR import PHONE_METADATA_PR
from .region_PS import PHONE_METADATA_PS
from .region_PT import PHONE_METADATA_PT
from .region_PW import PHONE_METADATA_PW
from .region_PY import PHONE_METADATA_PY
from .region_QA import PHONE_METADATA_QA
from .region_RE import PHONE_METADATA_RE
from .region_RO import PHONE_METADATA_RO
from .region_RS import PHONE_METADATA_RS
from .region_RU import PHONE_METADATA_RU
from .region_RW import PHONE_METADATA_RW
from .region_SA import PHONE_METADATA_SA
from .region_SB import PHONE_METADATA_SB
from .region_SC import PHONE_METADATA_SC
from .region_SD import PHONE_METADATA_SD
from .region_SE import PHONE_METADATA_SE
from .region_SG import PHONE_METADATA_SG
from .region_SH import PHONE_METADATA_SH
from .region_SI import PHONE_METADATA_SI
from .region_SJ import PHONE_METADATA_SJ
from .region_SK import PHONE_METADATA_SK
from .region_SL import PHONE_METADATA_SL
from .region_SM import PHONE_METADATA_SM
from .region_SN import PHONE_METADATA_SN
from .region_SO import PHONE_METADATA_SO
from .region_SR import PHONE_METADATA_SR
from .region_SS import PHONE_METADATA_SS
from .region_ST import PHONE_METADATA_ST
from .region_SV import PHONE_METADATA_SV
from .region_SX import PHONE_METADATA_SX
from .region_SY import PHONE_METADATA_SY
from .region_SZ import PHONE_METADATA_SZ
from .region_TC import PHONE_METADATA_TC
from .region_TD import PHONE_METADATA_TD
from .region_TG import PHONE_METADATA_TG
from .region_TH import PHONE_METADATA_TH
from .region_TJ import PHONE_METADATA_TJ
from .region_TK import PHONE_METADATA_TK
from .region_TL import PHONE_METADATA_TL
from .region_TM import PHONE_METADATA_TM
from .region_TN import PHONE_METADATA_TN
from .region_TO import PHONE_METADATA_TO
from .region_TR import PHONE_METADATA_TR
from .region_TT import PHONE_METADATA_TT
from .region_TV import PHONE_METADATA_TV
from .region_TW import PHONE_METADATA_TW
from .region_TZ import PHONE_METADATA_TZ
from .region_UA import PHONE_METADATA_UA
from .region_UG import PHONE_METADATA_UG
from .region_US import PHONE_METADATA_US
from .region_UY import PHONE_METADATA_UY
from .region_UZ import PHONE_METADATA_UZ
from .region_VA import PHONE_METADATA_VA
from .region_VC import PHONE_METADATA_VC
from .region_VE import PHONE_METADATA_VE
from .region_VG import PHONE_METADATA_VG
from .region_VI import PHONE_METADATA_VI
from .region_VN import PHONE_METADATA_VN
from .region_VU import PHONE_METADATA_VU
from .region_WF import PHONE_METADATA_WF
from .region_WS import PHONE_METADATA_WS
from .region_YE import PHONE_METADATA_YE
from .region_YT import PHONE_METADATA_YT
from .region_ZA import PHONE_METADATA_ZA
from .region_ZM import PHONE_METADATA_ZM
from .region_ZW import PHONE_METADATA_ZW
from .alt_format_43 import PHONE_ALT_FORMAT_43
from .alt_format_44 import PHONE_ALT_FORMAT_44
from .alt_format_49 import PHONE_ALT_FORMAT_49
from .alt_format_55 import PHONE_ALT_FORMAT_55
from .alt_format_61 import PHONE_ALT_FORMAT_61
from .alt_format_81 import PHONE_ALT_FORMAT_81
_ALT_NUMBER_FORMATS = {43: PHONE_ALT_FORMAT_43, 44: PHONE_ALT_FORMAT_44, 49: PHONE_ALT_FORMAT_49, 55: PHONE_ALT_FORMAT_55, 61: PHONE_ALT_FORMAT_61, 81: PHONE_ALT_FORMAT_81}
# A mapping from a country code to the region codes which
# denote the country/region represented by that country code.
# In the case of multiple countries sharing a calling code,
# such as the NANPA countries, the one indicated with
# "main_country_for_code" in the metadata should be first.
_COUNTRY_CODE_TO_REGION_CODE = {
1: ("US", "AG", "AI", "AS", "BB", "BM", "BS", "CA", "DM", "DO", "GD", "GU", "JM", "KN", "KY", "LC", "MP", "MS", "PR", "SX", "TC", "TT", "VC", "VG", "VI",),
7: ("RU", "KZ",),
20: ("EG",),
27: ("ZA",),
30: ("GR",),
31: ("NL",),
32: ("BE",),
33: ("FR",),
34: ("ES",),
36: ("HU",),
39: ("IT",),
40: ("RO",),
41: ("CH",),
43: ("AT",),
44: ("GB", "GG", "IM", "JE",),
45: ("DK",),
46: ("SE",),
47: ("NO", "SJ",),
48: ("PL",),
49: ("DE",),
51: ("PE",),
52: ("MX",),
53: ("CU",),
54: ("AR",),
55: ("BR",),
56: ("CL",),
57: ("CO",),
58: ("VE",),
60: ("MY",),
61: ("AU", "CC", "CX",),
62: ("ID",),
63: ("PH",),
64: ("NZ",),
65: ("SG",),
66: ("TH",),
81: ("JP",),
82: ("KR",),
84: ("VN",),
86: ("CN",),
90: ("TR",),
91: ("IN",),
92: ("PK",),
93: ("AF",),
94: ("LK",),
95: ("MM",),
98: ("IR",),
211: ("SS",),
212: ("MA", "EH",),
213: ("DZ",),
216: ("TN",),
218: ("LY",),
220: ("GM",),
221: ("SN",),
222: ("MR",),
223: ("ML",),
224: ("GN",),
225: ("CI",),
226: ("BF",),
227: ("NE",),
228: ("TG",),
229: ("BJ",),
230: ("MU",),
231: ("LR",),
232: ("SL",),
233: ("GH",),
234: ("NG",),
235: ("TD",),
236: ("CF",),
237: ("CM",),
238: ("CV",),
239: ("ST",),
240: ("GQ",),
241: ("GA",),
242: ("CG",),
243: ("CD",),
244: ("AO",),
245: ("GW",),
246: ("IO",),
247: ("AC",),
248: ("SC",),
249: ("SD",),
250: ("RW",),
251: ("ET",),
252: ("SO",),
253: ("DJ",),
254: ("KE",),
255: ("TZ",),
256: ("UG",),
257: ("BI",),
258: ("MZ",),
260: ("ZM",),
261: ("MG",),
262: ("RE", "YT",),
263: ("ZW",),
264: ("NA",),
265: ("MW",),
266: ("LS",),
267: ("BW",),
268: ("SZ",),
269: ("KM",),
290: ("SH",),
291: ("ER",),
297: ("AW",),
298: ("FO",),
299: ("GL",),
350: ("GI",),
351: ("PT",),
352: ("LU",),
353: ("IE",),
354: ("IS",),
355: ("AL",),
356: ("MT",),
357: ("CY",),
358: ("FI", "AX",),
359: ("BG",),
370: ("LT",),
371: ("LV",),
372: ("EE",),
373: ("MD",),
374: ("AM",),
375: ("BY",),
376: ("AD",),
377: ("MC",),
378: ("SM",),
379: ("VA",),
380: ("UA",),
381: ("RS",),
382: ("ME",),
385: ("HR",),
386: ("SI",),
387: ("BA",),
389: ("MK",),
420: ("CZ",),
421: ("SK",),
423: ("LI",),
500: ("FK",),
501: ("BZ",),
502: ("GT",),
503: ("SV",),
504: ("HN",),
505: ("NI",),
506: ("CR",),
507: ("PA",),
508: ("PM",),
509: ("HT",),
590: ("GP", "BL", "MF",),
591: ("BO",),
592: ("GY",),
593: ("EC",),
594: ("GF",),
595: ("PY",),
596: ("MQ",),
597: ("SR",),
598: ("UY",),
599: ("CW", "BQ",),
670: ("TL",),
672: ("NF",),
673: ("BN",),
674: ("NR",),
675: ("PG",),
676: ("TO",),
677: ("SB",),
678: ("VU",),
679: ("FJ",),
680: ("PW",),
681: ("WF",),
682: ("CK",),
683: ("NU",),
685: ("WS",),
686: ("KI",),
687: ("NC",),
688: ("TV",),
689: ("PF",),
690: ("TK",),
691: ("FM",),
692: ("MH",),
800: ("001",),
808: ("001",),
850: ("KP",),
852: ("HK",),
853: ("MO",),
855: ("KH",),
856: ("LA",),
870: ("001",),
878: ("001",),
880: ("BD",),
881: ("001",),
882: ("001",),
883: ("001",),
886: ("TW",),
888: ("001",),
960: ("MV",),
961: ("LB",),
962: ("JO",),
963: ("SY",),
964: ("IQ",),
965: ("KW",),
966: ("SA",),
967: ("YE",),
968: ("OM",),
970: ("PS",),
971: ("AE",),
972: ("IL",),
973: ("BH",),
974: ("QA",),
975: ("BT",),
976: ("MN",),
977: ("NP",),
979: ("001",),
992: ("TJ",),
993: ("TM",),
994: ("AZ",),
995: ("GE",),
996: ("KG",),
998: ("UZ",),
}