# automatically generated file, don't edit



# Copyright 2011 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::HN;
use base qw(Number::Phone::StubCountry);

use strict;
use warnings;
use utf8;
our $VERSION = 1.20181205223703;

my $formatters = [
                {
                  'pattern' => '(\\d{4})(\\d{4})',
                  'format' => '$1-$2',
                  'leading_digits' => '[237-9]'
                }
              ];

my $validators = {
                'specialrate' => '',
                'personal_number' => '',
                'fixed_line' => '
          2(?:
            2(?:
              0[019]|
              1[1-36]|
              [23]\\d|
              4[04-6]|
              5[57]|
              64|
              7[0135689]|
              8[01346-9]|
              9[0-2]
            )|
            4(?:
              07|
              2[3-59]|
              3[13-689]|
              4[0-68]|
              5[1-35]
            )|
            5(?:
              08|
              16|
              4[03-5]|
              5\\d|
              6[4-6]|
              74|
              80
            )|
            6(?:
              [056]\\d|
              17|
              3[04]|
              4[0-378]|
              [78][0-8]|
              9[01]
            )|
            7(?:
              6[46-9]|
              7[02-9]|
              8[034]
            )|
            8(?:
              79|
              8[0-357-9]|
              9[1-57-9]
            )
          )\\d{4}
        ',
                'toll_free' => '',
                'geographic' => '
          2(?:
            2(?:
              0[019]|
              1[1-36]|
              [23]\\d|
              4[04-6]|
              5[57]|
              64|
              7[0135689]|
              8[01346-9]|
              9[0-2]
            )|
            4(?:
              07|
              2[3-59]|
              3[13-689]|
              4[0-68]|
              5[1-35]
            )|
            5(?:
              08|
              16|
              4[03-5]|
              5\\d|
              6[4-6]|
              74|
              80
            )|
            6(?:
              [056]\\d|
              17|
              3[04]|
              4[0-378]|
              [78][0-8]|
              9[01]
            )|
            7(?:
              6[46-9]|
              7[02-9]|
              8[034]
            )|
            8(?:
              79|
              8[0-357-9]|
              9[1-57-9]
            )
          )\\d{4}
        ',
                'voip' => '',
                'pager' => '',
                'mobile' => '[37-9]\\d{7}'
              };
my %areanames = (
  5042209 => "Res\.\ Centro\ América\,\ Tegucigalpa",
  5042211 => "El\ Picacho",
  5042224 => "Cerro\ Grande",
  5042225 => "La\ Granja",
  5042226 => "Loarque",
  5042227 => "Res\.\ Centro\ América\,\ Tegucigalpa",
  5042228 => "Kennedy\,\ Tegucigalpa",
  5042229 => "El\ Ocotal",
  5042230 => "Kennedy\,\ Tegucigalpa",
  5042231 => "Miraflores",
  5042232 => "Miraflores",
  5042235 => "Miraflores",
  5042239 => "Miraflores",
  5042240 => "Kennedy\,\ Tegucigalpa",
  5042244 => "Tegucigalpa",
  5042245 => "La\ Vega\,\ Tegucigalpa",
  5042246 => "La\ Vega\,\ Tegucigalpa",
  5042255 => "El\ Hato",
  504240 => "Roatán\,\ Bay\ Islands",
  5042423 => "La\ Ceiba",
  5042424 => "Sabá",
  5042425 => "Utila\,\ Bay\ Islands",
  5042429 => "San\ Alejo\/Mesapa",
  5042431 => "San\ Francisco\,\ Atlántida",
  5042433 => "Arenal",
  5042434 => "Trujillo",
  5042435 => "Oakridge",
  5042436 => "La\ Masica",
  5042438 => "Bonito\ Oriental",
  5042440 => "La\ Ceiba",
  5042442 => "La\ Ceiba",
  5042443 => "La\ Ceiba",
  5042444 => "Tocoa\,\ Colón",
  5042445 => "Coxin\ Hole\,\ Roatán",
  5042446 => "Olanchito",
  5042448 => "Tela",
  5042451 => "Sonaguera",
  5042452 => "Coyoles\ Central",
  5042453 => "Guanaja",
  504251 => "San\ Pedro\ Sula\,\ Cortés",
  5042540 => "San\ Pedro\ Sula\,\ Cortés",
  5042545 => "San\ Pedro\ Sula\,\ Cortés",
  5042550 => "San\ Pedro\ Sula\,\ Cortés",
  5042552 => "San\ Pedro\ Sula\,\ Cortés",
  5042553 => "San\ Pedro\ Sula\,\ Cortés",
  5042555 => "Rivera\ Hernandez\,\ San\ Pedro\ Sula",
  5042556 => "La\ Puerta",
  5042557 => "San\ Pedro\ Sula\,\ Cortés",
  5042558 => "San\ Pedro\ Sula\,\ Cortés",
  5042559 => "Col\.\ Satélite",
  5042564 => "San\ Pedro\ Sula\,\ Cortés",
  5042565 => "Chamelecón",
  5042566 => "Jardines\ Del\ Valle",
  504257 => "Búfalo",
  504261 => "Choloma\,\ Cortés",
  5042643 => "Santa\ Bárbara",
  5042647 => "Progreso",
  5042648 => "Progreso\/Santa\ Cruz",
  5042650 => "San\ Manuel\/Rio\ Lindo",
  5042651 => "Cucuyagua\/Copán",
  5042652 => "Agua\ Caliente",
  5042653 => "Nueva\ Ocotepeque",
  5042654 => "Santa\ Cruz",
  5042780 => "Choluteca",
);
    sub new {
      my $class = shift;
      my $number = shift;
      $number =~ s/(^\+504|\D)//g;
      my $self = bless({ number => $number, formatters => $formatters, validators => $validators, areanames => \%areanames}, $class);
        return $self->is_valid() ? $self : undef;
    }
1;