line |
stmt |
bran |
cond |
sub |
pod |
time |
code |
1
|
|
|
|
|
|
|
# automatically generated file, don't edit |
2
|
|
|
|
|
|
|
|
3
|
|
|
|
|
|
|
|
4
|
|
|
|
|
|
|
|
5
|
|
|
|
|
|
|
# Copyright 2023 David Cantrell, derived from data from libphonenumber |
6
|
|
|
|
|
|
|
# http://code.google.com/p/libphonenumber/ |
7
|
|
|
|
|
|
|
# |
8
|
|
|
|
|
|
|
# Licensed under the Apache License, Version 2.0 (the "License"); |
9
|
|
|
|
|
|
|
# you may not use this file except in compliance with the License. |
10
|
|
|
|
|
|
|
# You may obtain a copy of the License at |
11
|
|
|
|
|
|
|
# |
12
|
|
|
|
|
|
|
# http://www.apache.org/licenses/LICENSE-2.0 |
13
|
|
|
|
|
|
|
# |
14
|
|
|
|
|
|
|
# Unless required by applicable law or agreed to in writing, software |
15
|
|
|
|
|
|
|
# distributed under the License is distributed on an "AS IS" BASIS, |
16
|
|
|
|
|
|
|
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
17
|
|
|
|
|
|
|
# See the License for the specific language governing permissions and |
18
|
|
|
|
|
|
|
# limitations under the License. |
19
|
|
|
|
|
|
|
package Number::Phone::StubCountry::AL; |
20
|
2
|
|
|
2
|
|
1138
|
use base qw(Number::Phone::StubCountry); |
|
2
|
|
|
|
|
8
|
|
|
2
|
|
|
|
|
212
|
|
21
|
|
|
|
|
|
|
|
22
|
2
|
|
|
2
|
|
14
|
use strict; |
|
2
|
|
|
|
|
4
|
|
|
2
|
|
|
|
|
42
|
|
23
|
2
|
|
|
2
|
|
11
|
use warnings; |
|
2
|
|
|
|
|
4
|
|
|
2
|
|
|
|
|
49
|
|
24
|
2
|
|
|
2
|
|
12
|
use utf8; |
|
2
|
|
|
|
|
4
|
|
|
2
|
|
|
|
|
10
|
|
25
|
|
|
|
|
|
|
our $VERSION = 1.20230903131440; |
26
|
|
|
|
|
|
|
|
27
|
|
|
|
|
|
|
my $formatters = [ |
28
|
|
|
|
|
|
|
{ |
29
|
|
|
|
|
|
|
'format' => '$1 $2', |
30
|
|
|
|
|
|
|
'leading_digits' => ' |
31
|
|
|
|
|
|
|
80| |
32
|
|
|
|
|
|
|
9 |
33
|
|
|
|
|
|
|
', |
34
|
|
|
|
|
|
|
'national_rule' => '0$1', |
35
|
|
|
|
|
|
|
'pattern' => '(\\d{3})(\\d{3,4})' |
36
|
|
|
|
|
|
|
}, |
37
|
|
|
|
|
|
|
{ |
38
|
|
|
|
|
|
|
'format' => '$1 $2 $3', |
39
|
|
|
|
|
|
|
'leading_digits' => '4[2-6]', |
40
|
|
|
|
|
|
|
'national_rule' => '0$1', |
41
|
|
|
|
|
|
|
'pattern' => '(\\d)(\\d{3})(\\d{4})' |
42
|
|
|
|
|
|
|
}, |
43
|
|
|
|
|
|
|
{ |
44
|
|
|
|
|
|
|
'format' => '$1 $2 $3', |
45
|
|
|
|
|
|
|
'leading_digits' => ' |
46
|
|
|
|
|
|
|
[2358][2-5]| |
47
|
|
|
|
|
|
|
4 |
48
|
|
|
|
|
|
|
', |
49
|
|
|
|
|
|
|
'national_rule' => '0$1', |
50
|
|
|
|
|
|
|
'pattern' => '(\\d{2})(\\d{3})(\\d{3})' |
51
|
|
|
|
|
|
|
}, |
52
|
|
|
|
|
|
|
{ |
53
|
|
|
|
|
|
|
'format' => '$1 $2', |
54
|
|
|
|
|
|
|
'leading_digits' => '[23578]', |
55
|
|
|
|
|
|
|
'national_rule' => '0$1', |
56
|
|
|
|
|
|
|
'pattern' => '(\\d{3})(\\d{5})' |
57
|
|
|
|
|
|
|
}, |
58
|
|
|
|
|
|
|
{ |
59
|
|
|
|
|
|
|
'format' => '$1 $2 $3', |
60
|
|
|
|
|
|
|
'leading_digits' => '6', |
61
|
|
|
|
|
|
|
'national_rule' => '0$1', |
62
|
|
|
|
|
|
|
'pattern' => '(\\d{2})(\\d{3})(\\d{4})' |
63
|
|
|
|
|
|
|
} |
64
|
|
|
|
|
|
|
]; |
65
|
|
|
|
|
|
|
|
66
|
|
|
|
|
|
|
my $validators = { |
67
|
|
|
|
|
|
|
'fixed_line' => ' |
68
|
|
|
|
|
|
|
4505[0-2]\\d{3}| |
69
|
|
|
|
|
|
|
(?: |
70
|
|
|
|
|
|
|
[2358][16-9]\\d[2-9]| |
71
|
|
|
|
|
|
|
4410 |
72
|
|
|
|
|
|
|
)\\d{4}| |
73
|
|
|
|
|
|
|
(?: |
74
|
|
|
|
|
|
|
[2358][2-5][2-9]| |
75
|
|
|
|
|
|
|
4(?: |
76
|
|
|
|
|
|
|
[2-57-9][2-9]| |
77
|
|
|
|
|
|
|
6\\d |
78
|
|
|
|
|
|
|
) |
79
|
|
|
|
|
|
|
)\\d{5} |
80
|
|
|
|
|
|
|
', |
81
|
|
|
|
|
|
|
'geographic' => ' |
82
|
|
|
|
|
|
|
4505[0-2]\\d{3}| |
83
|
|
|
|
|
|
|
(?: |
84
|
|
|
|
|
|
|
[2358][16-9]\\d[2-9]| |
85
|
|
|
|
|
|
|
4410 |
86
|
|
|
|
|
|
|
)\\d{4}| |
87
|
|
|
|
|
|
|
(?: |
88
|
|
|
|
|
|
|
[2358][2-5][2-9]| |
89
|
|
|
|
|
|
|
4(?: |
90
|
|
|
|
|
|
|
[2-57-9][2-9]| |
91
|
|
|
|
|
|
|
6\\d |
92
|
|
|
|
|
|
|
) |
93
|
|
|
|
|
|
|
)\\d{5} |
94
|
|
|
|
|
|
|
', |
95
|
|
|
|
|
|
|
'mobile' => ' |
96
|
|
|
|
|
|
|
6(?: |
97
|
|
|
|
|
|
|
[78][2-9]| |
98
|
|
|
|
|
|
|
9\\d |
99
|
|
|
|
|
|
|
)\\d{6} |
100
|
|
|
|
|
|
|
', |
101
|
|
|
|
|
|
|
'pager' => '', |
102
|
|
|
|
|
|
|
'personal_number' => '700[2-9]\\d{4}', |
103
|
|
|
|
|
|
|
'specialrate' => '(808[1-9]\\d\\d)|(900[1-9]\\d\\d)', |
104
|
|
|
|
|
|
|
'toll_free' => '800\\d{4}', |
105
|
|
|
|
|
|
|
'voip' => '' |
106
|
|
|
|
|
|
|
}; |
107
|
|
|
|
|
|
|
my %areanames = (); |
108
|
|
|
|
|
|
|
$areanames{en} = {"355872", "Qendër\ Ersekë\/Mollas\/Çlirim\,\ Kolonjë", |
109
|
|
|
|
|
|
|
"355361", "Ura\ Vajgurore\,\ Berat", |
110
|
|
|
|
|
|
|
"35545", "Tirana", |
111
|
|
|
|
|
|
|
"355562", "Milot\/Fushe\-Kuqe\,\ Kurbin", |
112
|
|
|
|
|
|
|
"355378", "Aranitas\/Ngracan\/Selitë\/Fratar\/Kutë\,\ Mallakastër", |
113
|
|
|
|
|
|
|
"355363", "Otllak\/Lumas\,\ Berat", |
114
|
|
|
|
|
|
|
"355287", "Klos\/Suç\/Lis\,\ Mat", |
115
|
|
|
|
|
|
|
"355296", "Fushë\-Bulqizë\/Shupenzë\/Zerqan\,\ Bulqizë", |
116
|
|
|
|
|
|
|
"355375", "Golem\/Grabian\/Remas\,\ Lushnjë", |
117
|
|
|
|
|
|
|
"355281", "Shëngjin\/Balldre\,\ Lezhë", |
118
|
|
|
|
|
|
|
"355874", "Hoçisht\/Miras\,\ Devoll", |
119
|
|
|
|
|
|
|
"35554", "Elbasan", |
120
|
|
|
|
|
|
|
"355866", "Libonik\/Vreshtaz\,\ Korçë", |
121
|
|
|
|
|
|
|
"35547", "Kamëz\/Vorë\/Paskuqan\/Zall\-Herr\/Burxullë\/Prezë\,\ Tiranë", |
122
|
|
|
|
|
|
|
"355813", "Përmet", |
123
|
|
|
|
|
|
|
"355564", "Nikël\/Bubq\,\ Kruje", |
124
|
|
|
|
|
|
|
"355576", "Katund\ i\ Ri\/Ishem\,\ Durrës", |
125
|
|
|
|
|
|
|
"355367", "Perondi\/Kozarë\,\ Kuçovë", |
126
|
|
|
|
|
|
|
"355283", "Kolsh\/Zejmen\/Shënkoll\,\ Lezhë", |
127
|
|
|
|
|
|
|
"35522", "Shkodër", |
128
|
|
|
|
|
|
|
"355811", "Bilisht\,\ Devoll", |
129
|
|
|
|
|
|
|
"355381", "Patos\,\ Fier", |
130
|
|
|
|
|
|
|
"355582", "Belsh\,\ Elbasan", |
131
|
|
|
|
|
|
|
"355893", "Ksamil\,\ Sarandë", |
132
|
|
|
|
|
|
|
"355595", "Qukës\/Rajcë\,\ Librazhd", |
133
|
|
|
|
|
|
|
"35555", "Kavajë", |
134
|
|
|
|
|
|
|
"355267", "Dajç\/Velipojë\,\ Shkodër", |
135
|
|
|
|
|
|
|
"355383", "Qendër\,\ Fier", |
136
|
|
|
|
|
|
|
"35532", "Berat", |
137
|
|
|
|
|
|
|
"355891", "Konispol\/Xare\/Markat\,\ Sarandë", |
138
|
|
|
|
|
|
|
"355261", "Vau\-Dejës", |
139
|
|
|
|
|
|
|
"355886", "Qendër\/Kurvelesh\/Lopëz\,\ Tepelenë", |
140
|
|
|
|
|
|
|
"355584", "Labinot\-Fushë\/Labinot\-Mal\/Funarë\/Gracen\,\ Elbasan", |
141
|
|
|
|
|
|
|
"35544", "Tirana", |
142
|
|
|
|
|
|
|
"355270", "Kolsh\/Surroj\/Arren\/Malzi\,\ Kukës", |
143
|
|
|
|
|
|
|
"355278", "Bicaj\/Topojan\/Shishtavec\,\ Kukës", |
144
|
|
|
|
|
|
|
"355589", "Karinë\/Gjocaj\/Shezë\,\ Peqin", |
145
|
|
|
|
|
|
|
"355263", "Pult\/Shalë\/Shosh\/Temal\/Shllak\,\ Shkodër", |
146
|
|
|
|
|
|
|
"355387", "Cakran\/Frakull\,\ Fier", |
147
|
|
|
|
|
|
|
"355216", "Rrëshen", |
148
|
|
|
|
|
|
|
"355396", "Shushicë\/Armen\,\ Vlorë", |
149
|
|
|
|
|
|
|
"355275", "Bujan\/Fierzë\/Bytyc\/Lekbiba\,\ Tropojë", |
150
|
|
|
|
|
|
|
"355376", "Dushk\/Tërbuf\,\ Lushnjë", |
151
|
|
|
|
|
|
|
"355295", "Sllovë\/Zall\-Dardhë\/Zall\-Reç\/Kala\ e\ Dodes\,\ Dibër", |
152
|
|
|
|
|
|
|
"355364", "Vërtop\/Terpan\,\ Berat", |
153
|
|
|
|
|
|
|
"355282", "Kallmet\/Blinisht\/Dajç\/Ungrej\,\ Lezhë", |
154
|
|
|
|
|
|
|
"35534", "Fier", |
155
|
|
|
|
|
|
|
"355877", "Dishnicë\/Sukë\/Ballaban\,\ Përmet", |
156
|
|
|
|
|
|
|
"355812", "Ersekë\,\ Kolonjë", |
157
|
|
|
|
|
|
|
"355369", "Qendër\/Vendreshë\,\ Skrapar", |
158
|
|
|
|
|
|
|
"355578", "Synej\/Golem\,\ Kavajë", |
159
|
|
|
|
|
|
|
"355570", "Gosë\/Lekaj\/Sinaballaj\,\ Kavajë", |
160
|
|
|
|
|
|
|
"355362", "Velabisht\/Roshnik\,\ Berat", |
161
|
|
|
|
|
|
|
"355871", "Leskovik\/Barmash\/Novoselë\,\ Kolonjë", |
162
|
|
|
|
|
|
|
"355284", "Rubik\,\ Mirditë", |
163
|
|
|
|
|
|
|
"355868", "Buçimas\/Udenisht\,\ Pogradec", |
164
|
|
|
|
|
|
|
"35583", "Pogradec", |
165
|
|
|
|
|
|
|
"355860", "Trebinjë\/Proptisht\/Velçan\,\ Pogradec", |
166
|
|
|
|
|
|
|
"355561", "Mamurras\,\ Kurbin", |
167
|
|
|
|
|
|
|
"355575", "Xhafzotaj\/Maminas\,\ Durrës", |
168
|
|
|
|
|
|
|
"355873", "Qendër\ Bilisht\/Progër\,\ Devoll", |
169
|
|
|
|
|
|
|
"355814", "Tepelenë", |
170
|
|
|
|
|
|
|
"355865", "Gorë\/Pirg\/Moglicë\,\ Korçë", |
171
|
|
|
|
|
|
|
"35542", "Tirana", |
172
|
|
|
|
|
|
|
"355563", "Fushë\-Krujë", |
173
|
|
|
|
|
|
|
"355289", "Ulëz\/Rukaj\/Derjan\/Macukull\,\ Mat", |
174
|
|
|
|
|
|
|
"355262", "Rrethinat\/Ana\-Malit\,\ Shkodër", |
175
|
|
|
|
|
|
|
"355384", "Mbrostar\ Ura\/LIibofshë\,\ Fier", |
176
|
|
|
|
|
|
|
"355596", "Pishaj\/Sult\/Tunjë\/Kushovë\/Skënderbegas\,\ Gramsh", |
177
|
|
|
|
|
|
|
"355587", "Gostime\/Klos\/Mollas\,\ Elbasan", |
178
|
|
|
|
|
|
|
"355894", "Livadhja\/Dhivër\,\ Sarandë", |
179
|
|
|
|
|
|
|
"35549", "Petrelë\/Baldushk\/Bërzhitë\/Krrabë\/Shengjergj\/Zall\-Bastar\,\ Tiranë", |
180
|
|
|
|
|
|
|
"355389", "Dermenas\/Topojë\,\ Fier", |
181
|
|
|
|
|
|
|
"35535", "Lushnje", |
182
|
|
|
|
|
|
|
"355276", "Fajza\/Golaj\/Gjinaj\,\ Has", |
183
|
|
|
|
|
|
|
"355395", "Novoselë\,\ Vlorë", |
184
|
|
|
|
|
|
|
"355264", "Postribë\/Gur\ i\ Zi", |
185
|
|
|
|
|
|
|
"355215", "Lezhë", |
186
|
|
|
|
|
|
|
"355382", "Roskovec\,\ Fier", |
187
|
|
|
|
|
|
|
"35524", "Kukës", |
188
|
|
|
|
|
|
|
"355581", "Cërrik\,\ Elbasan", |
189
|
|
|
|
|
|
|
"355398", "Sevaster\/Brataj\/Hore\-Vranisht\,\ Vlorë", |
190
|
|
|
|
|
|
|
"355218", "Peshkopi", |
191
|
|
|
|
|
|
|
"35552", "Durrës", |
192
|
|
|
|
|
|
|
"355885", "Memaliaj\,\ Tepelenë", |
193
|
|
|
|
|
|
|
"355583", "Bradashesh\/Shirgjan\,\ Elbasan", |
194
|
|
|
|
|
|
|
"355892", "Aliko\/Lukovë\,\ Sarandë", |
195
|
|
|
|
|
|
|
"355269", "Kastrat\/Shkrel\/Kelmend\,\ Malësi\ e\ Madhe", |
196
|
|
|
|
|
|
|
"355373", "Krutje\/Bubullimë\/Allkaj\,\ Lushnjë", |
197
|
|
|
|
|
|
|
"355294", "Arras\/Fushë\-Çidhën\/Lurë\,\ Dibër", |
198
|
|
|
|
|
|
|
"355365", "Sinjë\/Cukalat\,\ Berat", |
199
|
|
|
|
|
|
|
"355371", "Divjakë\,\ Lushnjë", |
200
|
|
|
|
|
|
|
"355862", "Qendër\,\ Korçë", |
201
|
|
|
|
|
|
|
"35533", "Vlorë", |
202
|
|
|
|
|
|
|
"355368", "Poliçan\/Bogovë\,\ Skrapar", |
203
|
|
|
|
|
|
|
"355360", "Leshnje\/Potom\/Çepan\/Gjerbës\/Zhepë\,\ Skrapar", |
204
|
|
|
|
|
|
|
"355572", "Manëz\,\ Durrës", |
205
|
|
|
|
|
|
|
"355377", "Qendër\/Greshicë\/Hekal\,\ Mallakastër", |
206
|
|
|
|
|
|
|
"355511", "Kruje", |
207
|
|
|
|
|
|
|
"355579", "Luz\ i\ Vogël\/Kryevidh\/Helmës\,\ Kavajë", |
208
|
|
|
|
|
|
|
"355292", "Maqellarë\/Melan\,\ Dibër", |
209
|
|
|
|
|
|
|
"355312", "Çorovodë\,\ Skrapar", |
210
|
|
|
|
|
|
|
"355285", "Kthjellë\/Selitë\,\ Mirditë", |
211
|
|
|
|
|
|
|
"355869", "Çëravë\/Dardhas\,\ Pogradec", |
212
|
|
|
|
|
|
|
"35546", "Tirana", |
213
|
|
|
|
|
|
|
"355876", "Qendër\/Frashër\/Petran\/Çarshovë\,\ Përmet", |
214
|
|
|
|
|
|
|
"355864", "Voskop\/Voskopojë\/Vithkuq\/Lekas\,\ Korçë", |
215
|
|
|
|
|
|
|
"355815", "Delvinë", |
216
|
|
|
|
|
|
|
"355513", "Gramsh", |
217
|
|
|
|
|
|
|
"355288", "Baz\/Komsi\/Gurrë\/Xibër\,\ Mat", |
218
|
|
|
|
|
|
|
"35584", "Gjirokastër", |
219
|
|
|
|
|
|
|
"355574", "Rashbull\/Gjepalaj\,\ Durrës", |
220
|
|
|
|
|
|
|
"355591", "Përrenjas\,\ Librazhd", |
221
|
|
|
|
|
|
|
"355277", "Shtiqen\/Tërthore\/Zapod\,\ Kukës", |
222
|
|
|
|
|
|
|
"355392", "Selenicë\,\ Vlorë", |
223
|
|
|
|
|
|
|
"355212", "Pukë", |
224
|
|
|
|
|
|
|
"355385", "Portëz\/Zharëz\,\ Fier", |
225
|
|
|
|
|
|
|
"35585", "Sarandë", |
226
|
|
|
|
|
|
|
"355882", "Cepo\/Picar\/Lazarat\/Atigon\,\ Gjirokastër", |
227
|
|
|
|
|
|
|
"355895", "Finiq\/Mesopotam\/Vergo\,\ Delvinë", |
228
|
|
|
|
|
|
|
"355593", "Lunik\/Orenjë\/Stebleve\,\ Librazhd", |
229
|
|
|
|
|
|
|
"355388", "Levan\,\ Fier", |
230
|
|
|
|
|
|
|
"355273", "Iballë\/Fierzë\/Blerim\/Qafë\-Mali\,\ Pukë", |
231
|
|
|
|
|
|
|
"355394", "Qendër\,\ Vlorë", |
232
|
|
|
|
|
|
|
"355265", "Vig\-Mnelë\/Hajmel\,\ Shkodër", |
233
|
|
|
|
|
|
|
"355214", "Krumë", |
234
|
|
|
|
|
|
|
"35548", "Kashar\/Vaqar\/Ndroq\/Pezë\/Farkë\/Dajt\,\ Tiranë", |
235
|
|
|
|
|
|
|
"355219", "Bulqizë", |
236
|
|
|
|
|
|
|
"355884", "Dropull\ i\ Poshtëm\/Dropull\ i\ Sipërm\,\ Gjirokastër", |
237
|
|
|
|
|
|
|
"355597", "Kodovjat\/Poroçan\/Kukur\/Lenie\,\ Gramsh", |
238
|
|
|
|
|
|
|
"355271", "Fushë\-Arrëz\/Rrapë\,\ Pukë", |
239
|
|
|
|
|
|
|
"355586", "Gjergjan\/Papër\/Shalës\,\ Elbasan", |
240
|
|
|
|
|
|
|
"355268", "Qendër\/Gruemirë\,\ Malësi\ e\ Madhe", |
241
|
|
|
|
|
|
|
"355867", "Pojan\/Liqenas\,\ Korçë", |
242
|
|
|
|
|
|
|
"355512", "Peqin", |
243
|
|
|
|
|
|
|
"355311", "Kuçovë", |
244
|
|
|
|
|
|
|
"355577", "Rrogozhinë\,\ Kavajë", |
245
|
|
|
|
|
|
|
"355291", "Tomin\/Luzni\,\ Dibër", |
246
|
|
|
|
|
|
|
"355374", "Gradishtë\/Kolonjë\,\ Lushnjë", |
247
|
|
|
|
|
|
|
"355366", "Poshnjë\/Kutalli\,\ Berat", |
248
|
|
|
|
|
|
|
"355313", "Ballsh\,\ Mallakastër", |
249
|
|
|
|
|
|
|
"355293", "Kastriot\/Muhur\/Selishtë\,\ Dibër", |
250
|
|
|
|
|
|
|
"355514", "Librazhd", |
251
|
|
|
|
|
|
|
"355565", "Koder\-Thumane\/Cudhi\,\ Kruje", |
252
|
|
|
|
|
|
|
"355863", "Drenovë\/Mollaj\,\ Korçë", |
253
|
|
|
|
|
|
|
"355573", "Sukth\,\ Durrës", |
254
|
|
|
|
|
|
|
"355875", "Këlcyrë\,\ Përmet", |
255
|
|
|
|
|
|
|
"355372", "Karbunarë\/Fier\-Shegan\/Hysgjokaj\/Ballagat\,\ Lushnjë", |
256
|
|
|
|
|
|
|
"355861", "Maliq\,\ Korçë", |
257
|
|
|
|
|
|
|
"35553", "Laç\,\ Kurbin", |
258
|
|
|
|
|
|
|
"355286", "Kaçinar\/Orosh\/Fan\,\ Mirditë", |
259
|
|
|
|
|
|
|
"355571", "Shijak\,\ Durrës", |
260
|
|
|
|
|
|
|
"355297", "Gjorice\/Ostren\/Trebisht\/Martanesh\,\ Bulqizë", |
261
|
|
|
|
|
|
|
"355887", "Qesarat\/Krahës\/Luftinje\/Buz\,\ Tepelenë", |
262
|
|
|
|
|
|
|
"355594", "Hotolisht\/Polis\/Stravaj\,\ Librazhd", |
263
|
|
|
|
|
|
|
"355272", "Qerret\/Qelëz\/Gjegjan\,\ Pukë", |
264
|
|
|
|
|
|
|
"355386", "Kuman\/Kurjan\/Strum\/Ruzhdie\,\ Fier", |
265
|
|
|
|
|
|
|
"355217", "Burrel", |
266
|
|
|
|
|
|
|
"355397", "Vllahinë\/Kote\,\ Vlorë", |
267
|
|
|
|
|
|
|
"355585", "Shushicë\/Tregan\/Gjinar\/Zavalinë\,\ Elbasan", |
268
|
|
|
|
|
|
|
"355883", "Lunxheri\/Odrie\/Zagorie\/Pogon\,\ Gjirokastër", |
269
|
|
|
|
|
|
|
"355592", "Qendër\,\ Librazhd", |
270
|
|
|
|
|
|
|
"355279", "Gryk\-Çajë\/Ujmisht\/Bushtrice\/Kalis\,\ Kukës", |
271
|
|
|
|
|
|
|
"35582", "Korçë", |
272
|
|
|
|
|
|
|
"355211", "Koplik", |
273
|
|
|
|
|
|
|
"355391", "Orikum\,\ Vlorë", |
274
|
|
|
|
|
|
|
"355274", "Tropojë\/Llugaj\/Margegaj\,\ Tropojë", |
275
|
|
|
|
|
|
|
"355580", "Përparim\/Pajovë\,\ Peqin", |
276
|
|
|
|
|
|
|
"355881", "Libohovë\/Qendër\,\ Gjirokastër", |
277
|
|
|
|
|
|
|
"355266", "Bushat\/Bërdicë\,\ Shkodër", |
278
|
|
|
|
|
|
|
"355588", "Rrasë\/Fierzë\/Kajan\/Grekan\,\ Elbasan", |
279
|
|
|
|
|
|
|
"355213", "Bajram\ Curri", |
280
|
|
|
|
|
|
|
"355393", "Himarë\,\ Vlorë", |
281
|
|
|
|
|
|
|
"35543", "Tirana",}; |
282
|
|
|
|
|
|
|
|
283
|
|
|
|
|
|
|
sub new { |
284
|
19
|
|
|
19
|
1
|
38
|
my $class = shift; |
285
|
19
|
|
|
|
|
28
|
my $number = shift; |
286
|
19
|
|
|
|
|
111
|
$number =~ s/(^\+355|\D)//g; |
287
|
19
|
|
|
|
|
100
|
my $self = bless({ country_code => '355', number => $number, formatters => $formatters, validators => $validators, areanames => \%areanames}, $class); |
288
|
19
|
100
|
|
|
|
81
|
return $self if ($self->is_valid()); |
289
|
1
|
|
|
|
|
11
|
$number =~ s/^(?:0)//; |
290
|
1
|
|
|
|
|
15
|
$self = bless({ country_code => '355', number => $number, formatters => $formatters, validators => $validators, areanames => \%areanames}, $class); |
291
|
1
|
50
|
|
|
|
5
|
return $self->is_valid() ? $self : undef; |
292
|
|
|
|
|
|
|
} |
293
|
|
|
|
|
|
|
1; |