# automatically generated file, don't edit # Copyright 2024 David Cantrell, derived from data from libphonenumber # http://code.google.com/p/libphonenumber/ # # 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. package Number::Phone::StubCountry::KZ; use base qw(Number::Phone::StubCountry); use strict; use warnings; use utf8; our $VERSION = 1.20250323211830; my $formatters = []; my $validators = { 'fixed_line' => ' (?: 33622| 7(?: 1(?: 0(?: [23]\\d| 4[0-3]| 59| 63 )| 1(?: [23]\\d| 4[0-79]| 59 )| 2(?: [23]\\d| 59 )| 3(?: 2\\d| 3[0-79]| 4[0-35-9]| 59 )| 4(?: [24]\\d| 3[013-9]| 5[1-9]| 97 )| 5(?: 2\\d| 3[1-9]| 4[0-7]| 59 )| 6(?: [2-4]\\d| 5[19]| 61 )| 72\\d| 8(?: [27]\\d| 3[1-46-9]| 4[0-5]| 59 ) )| 2(?: 1(?: [23]\\d| 4[46-9]| 5[3469] )| 2(?: 2\\d| 3[0679]| 46| 5[12679] )| 3(?: [2-4]\\d| 5[139] )| 4(?: 2\\d| 3[1-35-9]| 59 )| 5(?: [23]\\d| 4[0-8]| 59| 61 )| 6(?: 2\\d| 3[1-9]| 4[0-4]| 59 )| 7(?: [2379]\\d| 40| 5[279] )| 8(?: [23]\\d| 4[0-3]| 59 )| 9(?: 2\\d| 3[124578]| 59 ) ) ) )\\d{5} ', 'geographic' => ' (?: 33622| 7(?: 1(?: 0(?: [23]\\d| 4[0-3]| 59| 63 )| 1(?: [23]\\d| 4[0-79]| 59 )| 2(?: [23]\\d| 59 )| 3(?: 2\\d| 3[0-79]| 4[0-35-9]| 59 )| 4(?: [24]\\d| 3[013-9]| 5[1-9]| 97 )| 5(?: 2\\d| 3[1-9]| 4[0-7]| 59 )| 6(?: [2-4]\\d| 5[19]| 61 )| 72\\d| 8(?: [27]\\d| 3[1-46-9]| 4[0-5]| 59 ) )| 2(?: 1(?: [23]\\d| 4[46-9]| 5[3469] )| 2(?: 2\\d| 3[0679]| 46| 5[12679] )| 3(?: [2-4]\\d| 5[139] )| 4(?: 2\\d| 3[1-35-9]| 59 )| 5(?: [23]\\d| 4[0-8]| 59| 61 )| 6(?: 2\\d| 3[1-9]| 4[0-4]| 59 )| 7(?: [2379]\\d| 40| 5[279] )| 8(?: [23]\\d| 4[0-3]| 59 )| 9(?: 2\\d| 3[124578]| 59 ) ) ) )\\d{5} ', 'mobile' => ' 7(?: 0[0-25-8]| 47| 6[0-4]| 7[15-8]| 85 )\\d{7} ', 'pager' => '', 'personal_number' => '808\\d{7}', 'specialrate' => '(809\\d{7})', 'toll_free' => ' 8(?: 00| 108\\d{3} )\\d{7} ', 'voip' => '751\\d{7}' }; my %areanames = (); $areanames{en} = {"7353", "Orenburg", "771843", "Maisky\ District", "771035", "Ulytau", "771833", "Terenkol", "771840", "Bayanaul", "77242", "Kyzylorda", "771445", "Ubaganskoye", "771435", "Zhitikara", "771142", "Taipak", "771132", "Fyodorovka", "772932", "Beineu", "77185", "Shaldai", "7871", "Chechen\ Republic", "772543", "Aqsumbe", "771451", "Sarykol", "772533", "Turkestan", "772540", "Arys", "7867", "Republic\ of\ North\ Ossetia", "772530", "Temirlanovka", "7347", "Republic\ of\ Bashkortostan", "771454", "Karamendy", "7848", "Tolyatti", "7865", "Stavropol\ territory", "771841", "Aktogai", "771831", "Zhelezinka", "772839", "Sarkand", "772836", "Karabulak", "7384", "Kemerovo", "772938", "Fort\ Shevchenko", "771137", "Chingirlau", "771147", "Akzhaiksky\ District", "7345", "Tyumen", "771834", "Uspenka", "771844", "Irtyshsky\ District", "771546", "Talshik", "771536", "Taiynsha", "772541", "Myrzakent", "771453", "Auliekol", "772531", "Aksukent", "771539", "Beskol", "772237", "Ayagoz", "771138", "Zhalpaktal", "772937", "Kuryk", "77279", "Almaty", "7496", "Moscow", "772534", "Zhetysai", "772544", "Shaulder", "7814", "Republic\ of\ Karelia", "7471", "Kursk", "772777", "Kegen", "772256", "Kainar", "772330", "Zyryanovsky\ District", "772432", "Shiyeli", "772340", "Zaisan", "772333", "Samarskoye", "772343", "Terekty", "772634", "Zhanatas", "772644", "Karatau", "77112", "Uralsk", "7495", "Moscow", "772641", "Akkol", "772631", "Kulan", "771639", "Stepnyak", "771649", "Zhaksynsky\ District", "771646", "Makinsk", "771636", "Shuchinsk", "772154", "Botakara", "7346", "Surgut", "7421", "Khabarovsk\ Territory", "7481", "Smolensk", "77292", "Aktau", "77222", "Semey", "7866", "Kabardino\-Balkarian\ Republic", "771235", "Dossor", "772778", "Chundzha", "771349", "Shalkarsky\ District", "772437", "Zhosaly", "771339", "Komsomolskoye", "772331", "Glubokoye", "772341", "Ulken\ Naryn", "771336", "Khromtau", "772772", "Kapchagai", "771346", "Shubarkuduk", "772643", "Shu", "772633", "Asa", "772640", "Moiynkumsky\ District", "7812", "St\ Petersburg", "772344", "Akzhar", "772334", "Tavricheskoye", "77213", "Aktau\/Temirtau", "7382", "Tomsk", "7821", "Komi\ Republic", "7863", "Rostov", "772438", "Aiteke\ bi", "7343", "Ekaterinburg", "772153", "Topar", "772532", "Abai", "771457", "Dzhangildinsky\ District", "772542", "Asykata", "772230", "Urdzhar", "7413", "Magadan", "7494", "Kostroma", "7816", "Veliky\ Novgorod", "7878", "Karachayevo\-Cherkessian\ Republic", "7712302", "Tengizshevroil", "77145834", "Krasnogorsk", "771832", "Irtyshsk", "771842", "Koktobe", "771130", "Peremetnoye", "771140", "Saikhin", "771133", "Aksai", "771143", "Akzhaik", "7302", "Chita", "771458", "Kostanai\ Region", "771335", "Shalkar", "771345", "Karauylkeldy", "77232", "Ust\-Kamenogorsk", "7831", "Nizhni\ Novgorod", "772931", "Shetpe", "771236", "Makhambet", "771239", "Makat", "772547", "Lenger", "772537", "Saryagash", "771452", "Karasu", "771651", "Kabanbai\ Batyr", "7416", "Amur\ Region", "772934", "Zhanaozen", "7813", "Leningrad\ region", "771838", "Koktobe", "771837", "Aksu", "7383", "Novosibirsk", "7869", "Sevastopol", "77262", "Taraz", "771645", "Stepnogorsk", "7862", "Sochi", "771635", "Zhaksy", "771144", "Kaztalovka", "771134", "Zhympity", "772548", "Shayan", "772538", "Turara\ Ryskulova", "7349", "Yamalo\-Nenets\ Autonomous\ District", "7841", "Penza", "772146", "Karkaralinsk", "772149", "Osakarovka", "771131", "Darinskoye", "7342", "Perm", "771141", "Zhangala", "7352", "Kurgan", "77245", "Kyzylorda\ Region", "7851", "Astrakhan", "772638", "Tole\ bi", "771545", "Zhambylsky\ District", "77252", "Shymkent", "771535", "Novoishimski", "7817", "Vologda", "7492", "Vladimir", "772725", "Otegen\ Batyra", "772771", "Kaskelen", "7415", "Kamchatka\ Region", "772342", "Katon\-Karagai", "7499", "Moscow", "772332", "Shemonaikha", "772433", "Aralsk", "772637", "Sarykemer", "772774", "Talgar", "77182", "Pavlodar", "772835", "Tekeli", "772759", "Almaty\ Region", "7385", "Altai\ Territory", "772338", "Bozanbai\/Molodezhnyi", "772348", "Kokpekty", "771439", "Torgai", "772337", "Serebryansk", "772347", "Kalbatau", "771449", "Taranovskoye", "772431", "Zhalagash", "772773", "Bakanas", "771446", "Uzunkolsky\ District", "772770", "Uzynagash", "771436", "Taranovskoye", "740", "Kaliningrad", "736", "Simferopol", "7815", "Murmansk", "771039", "Priozersk", "771036", "Balkhash", "7391", "Krasnoyarsk\ Territory", "772632", "Merke", "77272", "Almaty", "772642", "Moiynkum", "771135", "Zhanibek", "77212", "Karaganda", "771145", "Karatobe\ District", "771644", "Arshaly", "771333", "Kandyagash", "772251", "Kurchatov", "771343", "Irgiz", "771330", "Khromtau\ District", "771442", "Fyodorovka", "771340", "Khobdinsky\ District", "7482", "Tver", "772636", "Kordai", "772639", "Saudakent", "771641", "Astrakhanka", "771631", "Shortandy", "771042", "Zharyk", "771032", "Karazhal", "7855", "Naberezhnye\ Chelny", "7846", "Samara", "772752", "Otegen\ Batyra", "7836", "Republic\ of\ Marij\ El", "77135", "Aktobe\ Region", "7498", "Moscow", "77122", "Atyrau", "772159", "Karaganda\ Region", "772935", "Zhetybai", "772156", "Shakhtinsk", "7411", "Republic\ of\ Sakha", "772336", "Ridder", "772346", "Aksuat", "771331", "Martuk", "771341", "Khobda", "771447", "Karabalyksky\ District", "771437", "Kamysty", "772339", "Kurchum", "7843", "Republic\ of\ Tatarstan", "771037", "Aktogai", "771334", "Emba", "771640", "Balkashino", "771630", "Burabay", "771643", "Atbasar", "771633", "Ereimentau", "7381", "Omsk", "7395", "Irkutsk", "77224", "Barshatas", "7811", "Pskov", "772757", "Akshi", "771038", "Shashubai", "7474", "Lipetsk", "7833", "Kirov", "771448", "Oktyabrskoye", "771438", "Amangeldy", "772840", "Saryozek", "772830", "Alakolsky\ District", "772843", "Lepsy", "772833", "Usharal", "77102", "Zhezkazgan", "7847", "Republic\ of\ Kalmykia", "7879", "Mineranye\ Vody", "772132", "Nurinsky\ District", "77142", "Kostanai", "772435", "Zhanakorgan", "7872", "Republic\ of\ Daghestan", "771456", "Kachar", "7484", "Kaluga", "7424", "Sakhalin\ Region", "771232", "Atyrau\ Region", "771540", "Kishkenekol", "771459", "Kostanai\ Region", "771543", "Yavlenka", "771533", "Saumalkol", "771836", "Sharbakty", "7472", "Belgorod", "771839", "Akku", "77187", "Ekibastuz", "772841", "Kapal", "772831", "Zharkent", "772775", "Esik", "771238", "Miyaly", "772834", "Ushtobe", "7835", "Chuvashi\ Republic", "772137", "Saran", "772147", "Egindybulak", "7845", "Saratov", "772138", "Gabidena\ Mustafina", "772148", "Molodezhnoye", "772539", "Kazygurt", "771237", "Kulsary", "7820", "Cherepovets", "771541", "Mamlutka", "771531", "Bulayevo", "772546", "Sholakkorgan", "772536", "Kentau", "771534", "Sergeyevka", "771544", "Presnovka", "771648", "Derzhavinsk", "771638", "Akkol", "77149", "Kostanai", "7873", "Ingushi\ Republic", "7491", "Ryazan", "77152", "Petropavlovsk", "772545", "Ikan", "772535", "Shardara", "771443", "Borovskoi", "771433", "Lisakovsk", "772776", "Shelek", "772257", "Shulbinsk", "771342", "Badamsha", "771440", "Amangeldy", "771332", "Uil", "771430", "Arkalyk", "7485", "Yaroslavl", "772779", "Narynkol", "77274", "Karassaisky\ District", "77273", "Almaty", "771030", "Atasu", "771040", "Zhairem\ \(GOK\)", "77282", "Taldykorgan", "771845", "Pavlodar\ Area", "771033", "Agadyr", "771043", "Zhairem", "7351", "Chelyabinsk", "771647", "Esil", "771637", "Korgalzhyn", "7473", "Voronezh", "7487", "Tula", "7427", "Chukotka\ Autonomous\ District", "7834", "Republic\ of\ Mordovia", "771455", "Zatobolsk", "771348", "Shalkarsky\ District", "7818", "Arkhangelsk", "77272956", "Talgar", "7844", "Volgograd", "7388", "Republic\ of\ Altai", "772436", "Terenozek", "771441", "Karabalyk", "771431", "Rudny", "772439", "Aralsky\ District", "771337", "Alga", "772252", "Karaul", "771347", "Aitekebisky\ District", "771034", "Zhezdy", "771632", "Zerenda", "771642", "Egendykol", "771434", "Denisovka", "771444", "Uzunkol", "771031", "Aksu\-Ayuly", "733", "Baikonur", "771041", "Aktau\,\ Zhezkazgan", "7717", "Astana", "7483", "Bryansk", "7423", "Primorie\ territory", "771532", "Smirnovo", "771230", "Atyrau\ Region", "771542", "Kishkenekol", "7301", "Republic\ of\ Buryatia", "772351", "Borodulikha", "771233", "Ganyushkino", "77272983", "Kaskelen", "7712303", "Tengizs", "772832", "Zhansugurov", "772842", "Kogaly", "77125", "Atyrau\ Region", "772335", "Zyryanovsk", "77132", "Aktobe\/Kargalinskoye", "772345", "Shar", "772239", "Makanchi", "771547", "Zhambylsky\ District", "771537", "Timiryazevo", "7341", "Udmurtian\ Republic", "772353", "Novaya\ Shulba", "771231", "Akkystau", "772236", "Beskaragai", "7842", "Ulyanovsk", "7861", "Krasnodar\ Territory", "772838", "Balpyk\ bi", "771234", "Indernborski", "7486", "Orel", "7877", "Republic\ of\ Adygeya", "7426", "Jewish\ Autonomous\ Region", "772144", "Kiyevka", "77162", "Kokshetau\/Krasni\ Yar", "772635", "Bauyrzhan\ Mamyshuly", "7394", "Republic\ of\ Tuva", "7475", "Tambov", "772837", "Kabanbai", "772131", "Abai", "771149", "Zelenovsky\ District", "771139", "Taskala", "771136", "Chapayev", "77106", "Satpaev", "771146", "Akzhaiksky\ District", "7390", "Republic\ of\ Khakassia", "771538", "Beskol",}; $areanames{ru} = {"772338", "УланÑкий\ Ñ€\-н", "772348", "КокпектинÑкий\ Ñ€\-н", "7385", "ÐлтайÑкий\ край", "772759", "ÐлматинÑкаÑ\ облаÑть", "772632", "МеркенÑкий\ Ñ€\-н", "772642", "МойынкумÑкий\ Ñ€\-н", "77272", "Ðлма\-Ðта", "7815", "МурманÑкаÑ\ обл\.", "771039", "ПриозерÑк", "771036", "Балхаш", "7391", "КраÑноÑÑ€Ñкий\ край", "740", "КалининградÑкаÑ\ обл\.", "736", "РеÑпублика\ Крым", "772337", "СеребрÑнÑк", "771439", "ДжангильдинÑкий\ Ñ€\-н", "772347", "ЖарминÑкий\ Ñ€\-н", "771449", "ТарановÑкий\ Ñ€\-н", "772431", "ЖалагашÑкий\ Ñ€\-н", "772773", "БалхашÑкий\ Ñ€\-н", "772770", "ЖамбылÑкий\ Ñ€\-н", "771446", "УзункольÑкий\ Ñ€\-н", "771436", "ТарановÑкий\ Ñ€\-н", "7817", "ВологодÑкаÑ\ обл\.", "77252", "Шымкент", "771545", "ЖамбылÑкий\ Ñ€\-н", "771535", "Габита\ МуÑрепова\ Ñ€\-н", "77245", "КызылординÑкаÑ\ облаÑть", "772638", "ШуÑкий\ Ñ€\-н", "7851", "ÐÑтраханÑкаÑ\ обл\.", "7352", "КурганÑкаÑ\ обл\.", "772774", "ТалгарÑкий\ Ñ€\-н", "77182", "Павлодар", "772835", "Текели", "772637", "БайзакÑкий\ Ñ€\-н", "772771", "КараÑайÑкий\ Ñ€\-н", "772725", "Отеген\-Батыр", "7415", "КамчатÑкий\ край", "772342", "Катон\-КарагайÑкий\ Ñ€\-н", "7499", "г\.\ МоÑква", "772332", "ШемонаихинÑкий\ Ñ€\-н", "772433", "ÐральÑкий\ Ñ€\-н", "7492", "ВладимирÑкаÑ\ обл\.", "7813", "ЛенинградÑкаÑ\ обл\.", "771838", "МайÑкий\ Ñ€\-он", "771651", "ЦелиноградÑкий\ Ñ€\-н", "7416", "ÐмурÑкаÑ\ обл\.", "772934", "Жанаозен", "771236", "МахамбетÑкий\ Ñ€\-н", "771239", "МакатÑкий\ Ñ€\-н", "772547", "Ленгер", "772537", "Сарыагаш", "771452", "КараÑуÑкий\ Ñ€\-н", "7831", "ÐижегородÑкаÑ\ обл\.", "772931", "МангиÑтауÑкий\ Ñ€\-н", "772146", "КаркаралинÑк", "772149", "ОÑакаровÑкий\ Ñ€\-н", "771131", "ЗеленовÑкий\ Ñ€\-н", "7342", "ПермÑкий\ край", "771141", "ЖангалинÑкий\ Ñ€\-н", "772548", "ШаÑн", "772538", "имени\ Турара\ Ð Ñ‹Ñкулова", "7349", "Ямало\-Ðенецкий\ ÐО", "7841", "ПензенÑкаÑ\ обл\.", "77262", "Тараз", "771645", "СтепногорÑк", "7862", "КраÑнодарÑкий\ край", "771635", "ЖакÑынÑкий\ Ñ€\-н", "771144", "КазталовÑкий\ Ñ€\-н", "771134", "СырымÑкий\ Ñ€\-н", "771837", "ÐкÑуÑкий\ Ñ€\-н", "7383", "ÐовоÑибирÑкаÑ\ обл\.", "7869", "г\.\ СеваÑтополь", "7878", "РеÑпублика\ Карачаево\-ЧеркеÑÑкаÑ", "7712302", "Тенгизшевройл", "7494", "КоÑтромÑкаÑ\ обл\.", "7816", "ÐовгородÑкаÑ\ обл\.", "771457", "ДжангильдинÑкий\ Ñ€\-н", "772532", "ÐбаÑ", "772230", "УрджарÑкий\ Ñ€\-н", "772542", "ÐÑыката", "7413", "МагаданÑкаÑ\ обл\.", "771458", "КоÑтанайÑкаÑ\ облаÑть", "771335", "ШалкарÑкий\ Ñ€\-н", "77232", "УÑть\-КаменогорÑк", "771345", "БайганинÑкий\ Ñ€\-н", "771130", "ЗеленовÑкий\ Ñ€\-н", "771140", "БокейординÑкий\ Ñ€\-н", "771133", "БурлинÑкий\ Ñ€\-н", "771143", "ТеректинÑкий\ Ñ€\-н", "7302", "ЗабайкальÑкий\ край", "77145834", "КраÑногорÑк", "771832", "ИртышÑкий\ Ñ€\-н", "771842", "МайÑкий\ Ñ€\-он", "7812", "г\.\ Санкт\-Петербург", "772344", "ТарбагатайÑкий\ Ñ€\-н", "772334", "УланÑкий\ Ñ€\-н", "77213", "Темиртау", "772643", "ШуÑкий\ Ñ€\-н", "772633", "ЖамбылÑкий\ Ñ€\-н", "772640", "МойынкумÑкий\ Ñ€\-н", "771349", "ШалкарÑкий\ Ñ€\-н", "771339", "ÐйтекебийÑкий\ Ñ€\-н", "772437", "КармакшинÑкий\ Ñ€\-н", "772331", "ГлубоковÑкий\ Ñ€\-н", "772341", "Катон\-КарагайÑкий\ Ñ€\-н", "771336", "ХромтауÑкий\ Ñ€\-н", "772772", "Капчагай", "771346", "ТемирÑкий\ Ñ€\-н", "7343", "СвердловÑкаÑ\ обл", "772153", "ÐбайÑкий\ Ñ€\-н", "772438", "КазалинÑкий\ Ñ€\-н", "7863", "РоÑтовÑкаÑ\ обл\.", "7821", "РеÑпублика\ Коми", "7382", "ТомÑкаÑ\ обл\.", "772641", "ТалаÑÑкий\ Ñ€\-н", "772631", "Турара\ Ð Ñ‹Ñкулова\ Ñ€\-н", "771639", "ЕнбекшилдерÑкий\ Ñ€\-н", "771649", "ЖакÑынÑкий\ Ñ€\-н", "771646", "БуландинÑкий\ Ñ€\-н", "771636", "ЩучинÑкий\ Ñ€\-н", "772634", "ЖанатаÑ", "772644", "ТалаÑÑкий\ Ñ€\-н", "77112", "УральÑк", "7495", "МоÑковÑкаÑ\ обл\.", "772777", "РайымбекÑкий\ Ñ€\-н", "772256", "ÐлгабаÑ", "772432", "ШиелийÑкий\ Ñ€\-н", "772330", "ЗырÑновÑкий\ Ñ€\-н", "772340", "ЗайÑанÑкий\ Ñ€\-н", "772333", "КокпектинÑкий\ Ñ€\-н", "772343", "КурчумÑкий\ Ñ€\-н", "77222", "СемипалатинÑк", "771235", "МакатÑкий\ Ñ€\-н", "7866", "РеÑпублика\ Кабардино\-БалкарÑкаÑ", "772778", "УйгурÑкий\ Ñ€\-н", "7421", "ХабаровÑкий\ край", "7481", "СмоленÑкаÑ\ обл\.", "77292", "Ðктау", "7346", "Ханты\ \-\ МанÑийÑкий\ \-\ Югра\ ÐО", "772154", "Бухар\-ЖырауÑкий\ Ñ€\-н", "771834", "УÑпенÑкий\ Ñ€\-н", "771844", "ИртышÑкий\ Ñ€\-н", "772938", "ТупкараганÑкий\ Ñ€\-н", "771137", "ЧингирлауÑкий\ Ñ€\-н", "771147", "ÐкжаикÑкий\ Ñ€\-н", "7345", "ТюменÑкаÑ\ обл\.", "771841", "ÐктогайÑкий\ Ñ€\-н", "771831", "ЖелезинÑкий\ Ñ€\-н", "772839", "СаркандÑкий\ Ñ€\-н", "772836", "ЕÑкельдинÑкий\ Ñ€\-н", "7384", "КемеровÑкаÑ\ обл\.", "7848", "СамарÑкаÑ\ обл\.", "7865", "СтавропольÑкий\ край", "7471", "КурÑкаÑ\ обл\.", "7496", "г\.\ МоÑква", "772534", "ЖетыÑай", "772544", "Шаульдер", "7814", "РеÑпублика\ КарелиÑ", "771138", "КазталовÑкий\ Ñ€\-н", "772937", "КаракиÑнÑкий\ Ñ€\-н", "77279", "Ðлматы", "771546", "ÐкжарÑкий\ Ñ€\-н", "771536", "ТайыншинÑкий\ Ñ€\-н", "771453", "ÐулиекольÑкий\ Ñ€\-н", "772541", "Мырзакент", "772531", "ÐкÑукент", "771539", "КызылжарÑкий\ Ñ€\-н", "772237", "ÐÑзог", "771142", "ÐкжаикÑкий\ Ñ€\-н", "771132", "ТеректинÑкий\ Ñ€\-н", "771445", "ÐлтынÑаринÑкий\ Ñ€\-н", "77242", "Кызылорда", "771435", "ЖитикаринÑкий\ Ñ€\-н", "7353", "ОренбургÑкаÑ\ обл\.", "771843", "МайÑкий\ Ñ€\-н", "771035", "УлытауÑкий\ Ñ€\-н", "771833", "КачирÑкий\ Ñ€\-н", "771840", "БаÑнаульÑкий\ Ñ€\-н", "7347", "РеÑпублика\ БашкортоÑтан", "771454", "ÐаурзумÑкий\ Ñ€\-н", "772543", "ÐкÑумбе", "771451", "СарыкольÑкий\ Ñ€\-н", "772533", "ТуркеÑтан", "7867", "РеÑпублика\ СевернаÑ\ ОÑетиÑ\ \-\ ÐланиÑ", "772540", "ÐрыÑ", "772530", "Темирлановка", "772932", "БейнеуÑкий\ Ñ€\-н", "7493", "ИвановÑкаÑ\ обл\.", "77185", "Шалдай", "7871", "РеÑпублика\ ЧеченÑкаÑ", "7877", "РеÑпублика\ ÐдыгеÑ", "7486", "ОрловÑкаÑ\ обл\.", "7426", "ЕврейÑкаÑ\ автономнаÑ\ обл\.", "7861", "КраÑнодарÑкий\ край", "772838", "КокÑуÑкий\ Ñ€\-н", "771234", "ИндерÑкий\ Ñ€\-н", "7842", "УльÑновÑкаÑ\ обл\.", "772239", "УрджарÑкий\ Ñ€\-н", "771547", "ЖамбылÑкий\ Ñ€\-н", "771537", "ТимирÑзевÑкий\ Ñ€\-н", "7341", "РеÑпублика\ УдмуртÑкаÑ", "771231", "ИÑатайÑкий\ Ñ€\-н", "772353", "БородулихинÑкий\ Ñ€\-н", "772236", "БеÑкарагайÑкий\ Ñ€\-н", "771538", "КызылжарÑкий\ Ñ€\-н", "772131", "ÐбайÑкий\ Ñ€\-н", "771149", "ÐкжаикÑкий\ Ñ€\-н", "771139", "ТаÑкалинÑкий\ Ñ€\-н", "771136", "ÐкжаикÑкий\ Ñ€\-н", "771146", "ÐкжаикÑкий\ Ñ€\-н", "77106", "Сатпаев", "7390", "РеÑпублика\ ХакаÑиÑ", "7475", "ТамбовÑкаÑ\ обл\.", "772837", "ÐлакольÑкий\ Ñ€\-н", "772144", "ÐуринÑкий\ Ñ€\-н", "77162", "Кокшетау", "772635", "ЖуалынÑкий\ Ñ€\-н", "7394", "РеÑпублика\ Тыва", "77272983", "КаÑкелен", "7712303", "Тензиз", "7717", "ÐÑтана", "7483", "БрÑнÑкаÑ\ обл\.", "7423", "ПриморÑкий\ край", "771532", "ÐккайынÑкий\ Ñ€\-н", "771542", "УалихановÑкий\ Ñ€\-н", "771230", "ÐтырауÑкаÑ\ облаÑть", "7301", "РеÑпублика\ БурÑтиÑ", "771233", "КурмангазинÑкий\ Ñ€\-н", "772351", "БородулихинÑкий\ Ñ€\-н", "772335", "ЗырÑновÑк", "77132", "Ðктобе\/ÐктюбинÑк", "772345", "ЖарминÑкий\ Ñ€\-н", "77125", "ÐтырауÑкаÑ\ облаÑть", "772832", "ÐкÑуÑкий\ Ñ€\-н", "772842", "КербулакÑкий\ Ñ€\-н", "7834", "РеÑпублика\ МордовиÑ", "771455", "КоÑтанайÑкий\ Ñ€\-н", "7818", "ÐрхангельÑкаÑ\ обл\.", "771348", "ШалкарÑкий\ Ñ€\-н", "77272956", "Талгар", "7487", "ТульÑкаÑ\ обл\.", "7427", "ЧукотÑкий\ ÐО", "7473", "ВоронежÑкаÑ\ обл\.", "771434", "ДениÑовÑкий\ Ñ€\-н", "771444", "УзункольÑкий\ Ñ€\-н", "771031", "ШетÑкий\ Ñ€\-н", "733", "Байконыр", "771041", "Ðктау\,\ Жезказган", "771632", "ЗерендинÑкий\ Ñ€\-н", "771642", "ЕгиндыкольÑкий\ Ñ€\-н", "7388", "РеÑпублика\ Ðлтай", "772436", "СырдарьинÑкий\ Ñ€\-н", "771441", "КарабалыкÑкий\ Ñ€\-н", "771431", "Рудный", "772439", "ÐральÑкий\ Ñ€\-н", "771337", "ÐлгинÑкий\ Ñ€\-н", "771347", "ÐйтекебийÑкий\ Ñ€\-н", "772252", "ÐбайÑкий\ Ñ€\-н", "771034", "УлытауÑкий\ Ñ€\-н", "7844", "ВолгоградÑкаÑ\ обл\.", "7873", "РеÑпублика\ ИнгушетиÑ", "7491", "Ð ÑзанÑкаÑ\ обл\.", "772545", "Икан", "77152", "ПетропавловÑк", "772535", "Шардара", "77149", "КоÑтанай", "771648", "ЖаркаинÑкий\ Ñ€\-н", "771638", "ÐккольÑкий\ Ñ€\-н", "7351", "ЧелÑбинÑкаÑ\ обл\.", "771647", "ЕÑильÑкий\ Ñ€\-н", "771637", "КоргалжынÑкий\ Ñ€\-н", "771030", "Жана\-ÐркинÑкий\ Ñ€\-н", "771040", "Жайрем\ \(ГОК\)", "77282", "Талдыкорган", "771033", "ШетÑкий\ Ñ€\-н", "771845", "Павлодар", "771043", "Жайрем\ \(поÑелок\)", "771443", "МендыкаринÑкий\ Ñ€\-н", "771433", "ЛиÑаковÑк", "772257", "ШульбинÑк", "772776", "ЕнбекшиказахÑкий\ Ñ€\-н", "771440", "ÐмангельдинÑкий\ Ñ€\-н", "771342", "КаргалинÑкий\ Ñ€\-н", "771332", "УилÑкий\ Ñ€\-н", "771430", "Ðркалык", "7485", "ЯроÑлавÑкаÑ\ обл\.", "772779", "РайымбекÑкий\ Ñ€\-н", "77274", "КараÑайÑкий\ Ñ€\-н", "77273", "Ðлма\-Ðта", "772137", "Сарань", "772147", "КаркаралинÑкий\ Ñ€\-н", "772775", "ЕнбекшиказахÑкий\ Ñ€\-н", "771238", "КзылкогинÑкий\ Ñ€\-н", "772834", "КаратальÑкий\ Ñ€\-н", "7835", "ЧувашÑкаÑ\ РеÑпублика\ \-\ ЧувашиÑ", "771836", "ЩербактинÑкий\ Ñ€\-н", "771839", "ЛебÑжинÑкий\ Ñ€\-н", "7472", "БелгородÑкаÑ\ обл\.", "772841", "ÐкÑуÑкий\ Ñ€\-н", "77187", "ÐкибаÑтуз", "772831", "ПанфиловÑкий\ Ñ€\-н", "771534", "Шал\ Ðкына\ Ñ€\-н", "771544", "ЖамбылÑкий\ Ñ€\-н", "772539", "Казыгурт", "771237", "ЖылыойÑкий\ Ñ€\-н", "7820", "ВологодÑкаÑ\ обл\.", "771541", "МамлютÑкий\ Ñ€\-н", "771531", "Магжана\ Жумабаева\ Ñ€\-н", "772546", "Шолаккорган", "772536", "Кентау", "7845", "СаратовÑкаÑ\ обл\.", "772138", "Бухар\-ЖырауÑкий\ Ñ€\-н", "772148", "ОÑакаровÑкий\ Ñ€\-н", "77142", "КоÑтанай", "772435", "ЖанакорганÑкий\ Ñ€\-н", "7872", "РеÑпублика\ ДагеÑтан", "7879", "СтавропольÑкий\ край", "772132", "ÐуринÑкий\ Ñ€\-н", "772840", "КербулакÑкий\ Ñ€\-н", "772830", "ÐлакольÑкий\ Ñ€\-н", "772843", "ЛепÑÑ‹", "772833", "ÐлакольÑкий\ Ñ€\-н", "77102", "Жезказган", "7847", "РеÑпублика\ КалмыкиÑ", "7424", "СахалинÑкаÑ\ обл\.", "7484", "КалужÑкаÑ\ обл\.", "771456", "Качар", "771232", "ÐтырауÑкаÑ\ облаÑть", "771540", "УалихановÑкий\ Ñ€\-н", "771459", "КоÑтанайÑкаÑ\ облаÑть", "771543", "ЕÑильÑкий\ Ñ€\-н", "771533", "ÐйыртауÑкий\ Ñ€\-н", "771640", "СандыктауÑкий\ Ñ€\-н", "771630", "Боровое", "771643", "ÐтбаÑарÑкий\ Ñ€\-н", "771633", "ЕрейментауÑкий\ Ñ€\-н", "7381", "ОмÑкаÑ\ обл\.", "771037", "ÐктогайÑкий\ Ñ€\-н", "771334", "МугалжарÑкий\ Ñ€\-н", "7843", "РеÑпублика\ ТатарÑтан", "772336", "Риддер", "772346", "ТарбагатайÑкий\ Ñ€\-н", "771331", "МартукÑкий\ Ñ€\-н", "771341", "ХобдинÑкий\ Ñ€\-н", "771447", "КарабалыкÑкий\ Ñ€\-н", "772339", "КурчумÑкий\ Ñ€\-н", "771437", "КамыÑтинÑкий\ Ñ€\-н", "7833", "КировÑкаÑ\ обл\.", "771448", "КараÑуÑкий\ Ñ€\-н", "771438", "ÐмангельдинÑкий\ Ñ€\-н", "771038", "Сыры\-Шаган", "7474", "ЛипецкаÑ\ обл\.", "7395", "ИркутÑкаÑ\ обл\.", "77224", "Ðмельтау", "7811", "ПÑковÑкаÑ\ обл\.", "772757", "Ðкший", "771042", "Ðкой", "771032", "Каражал", "7855", "РеÑпублика\ ТатарÑтан", "7846", "СамарÑкаÑ\ обл\.", "772636", "Кордай", "772639", "СарыÑуÑкий\ Ñ€\-н", "771641", "ÐÑтраханÑкий\ Ñ€\-н", "771631", "ШортандинÑкий\ Ñ€\-н", "772251", "Курчатов", "771333", "МугалжарÑкий\ Ñ€\-н", "771343", "ИргизÑкий\ Ñ€\-н", "771330", "ХромтауÑкий\ Ñ€\-н", "771442", "ФедоровÑкий\ Ñ€\-н", "771340", "ХобдинÑкий\ Ñ€\-н", "7482", "ТверÑкаÑ\ обл\.", "771135", "ЖанибекÑкий\ Ñ€\-н", "77212", "Караганда", "771145", "КаратобинÑкий\ Ñ€\-н", "771644", "ÐршалынÑкий\ Ñ€\-н", "772159", "КарагандинÑкаÑ\ облаÑть", "772935", "КаракиÑнÑкий\ Ñ€\-н", "772156", "ШахтинÑк", "7411", "РеÑпублика\ Саха\ \/ЯкутиÑ\/", "77122", "Ðтырау", "772752", "ИлийÑкий\ Ñ€\-н", "7836", "РеÑпублика\ Марий\ Ðл", "77135", "ÐктюбинÑкаÑ\ облаÑть", "7498", "МоÑковÑкаÑ\ обл\.",}; my $timezones = { '' => [ 'Asia/Almaty', 'Asia/Anadyr', 'Asia/Aqtobe', 'Asia/Irkutsk', 'Asia/Kamchatka', 'Asia/Krasnoyarsk', 'Asia/Magadan', 'Asia/Novosibirsk', 'Asia/Omsk', 'Asia/Sakhalin', 'Asia/Vladivostok', 'Asia/Yakutsk', 'Asia/Yekaterinburg', 'Europe/Bucharest', 'Europe/Moscow', 'Europe/Samara' ], '301' => [ 'Asia/Irkutsk' ], '302' => [ 'Asia/Yakutsk' ], '33' => [ 'Asia/Almaty' ], '34' => [ 'Asia/Yekaterinburg' ], '341' => [ 'Europe/Samara' ], '35' => [ 'Asia/Yekaterinburg' ], '36' => [ 'Europe/Moscow' ], '381' => [ 'Asia/Omsk' ], '382' => [ 'Asia/Novosibirsk' ], '383' => [ 'Asia/Novosibirsk' ], '384' => [ 'Asia/Krasnoyarsk' ], '385' => [ 'Asia/Krasnoyarsk' ], '388' => [ 'Asia/Krasnoyarsk' ], '390' => [ 'Asia/Krasnoyarsk' ], '391' => [ 'Asia/Krasnoyarsk' ], '394' => [ 'Asia/Krasnoyarsk' ], '395' => [ 'Asia/Irkutsk' ], '40' => [ 'Europe/Bucharest' ], '411' => [ 'Asia/Yakutsk' ], '413' => [ 'Asia/Magadan' ], '415' => [ 'Asia/Kamchatka' ], '416' => [ 'Asia/Yakutsk' ], '421' => [ 'Asia/Vladivostok' ], '423' => [ 'Asia/Vladivostok' ], '424' => [ 'Asia/Sakhalin' ], '426' => [ 'Asia/Vladivostok' ], '427' => [ 'Asia/Anadyr' ], '47' => [ 'Europe/Moscow' ], '48' => [ 'Europe/Moscow' ], '49' => [ 'Europe/Moscow' ], '7' => [ 'Asia/Almaty', 'Asia/Aqtobe' ], '71' => [ 'Asia/Almaty' ], '711' => [ 'Asia/Aqtobe' ], '712' => [ 'Asia/Aqtobe' ], '713' => [ 'Asia/Aqtobe' ], '72' => [ 'Asia/Almaty' ], '729' => [ 'Asia/Aqtobe' ], '79' => [ 'Asia/Almaty' ], '800' => [ 'Asia/Almaty', 'Asia/Aqtobe', 'Europe/Moscow' ], '803' => [ 'Europe/Moscow' ], '804' => [ 'Europe/Moscow' ], '808' => [ 'Asia/Almaty', 'Asia/Aqtobe', 'Europe/Moscow' ], '809' => [ 'Asia/Almaty', 'Asia/Aqtobe', 'Europe/Moscow' ], '81' => [ 'Europe/Moscow' ], '810' => [ 'Asia/Almaty', 'Asia/Aqtobe', 'Europe/Moscow' ], '82' => [ 'Europe/Moscow' ], '83' => [ 'Europe/Moscow' ], '840' => [ 'Europe/Bucharest', 'Europe/Moscow' ], '841' => [ 'Europe/Moscow' ], '842' => [ 'Europe/Samara' ], '843' => [ 'Europe/Moscow' ], '844' => [ 'Europe/Moscow' ], '845' => [ 'Europe/Moscow' ], '846' => [ 'Europe/Samara' ], '847' => [ 'Europe/Moscow' ], '848' => [ 'Europe/Samara' ], '851' => [ 'Europe/Samara' ], '855' => [ 'Europe/Moscow' ], '86' => [ 'Europe/Moscow' ], '87' => [ 'Europe/Moscow' ], '9' => [ 'Europe/Moscow' ] }; sub new { my $class = shift; my $number = shift; $number =~ s/(^\+7|\D)//g; my $self = bless({ country_code => '7', number => $number, formatters => $formatters, validators => $validators, timezones => $timezones, areanames => \%areanames}, $class); return $self if ($self->is_valid()); $number =~ s/^(?:8)//; $self = bless({ country_code => '7', number => $number, formatters => $formatters, validators => $validators, areanames => \%areanames}, $class); return $self->is_valid() ? $self : undef; } 1;