// DO NOT EDIT (This file was auto-generated from NBPhoneMetaDataGenerator) #import "NBMetadataCore.h" #import #import "NBPhoneNumberDesc.h" #import "NBNumberFormat.h" @implementation NBPhoneMetadataIM - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[135789]\\d{6,9}" withPossibleNumberPattern:@"\\d{6,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1624\\d{6}" withPossibleNumberPattern:@"\\d{6,10}" withExample:@"1624456789"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7[569]24\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7924123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"808162\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8081624567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:872299|90[0167]624)\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9016247890"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:4(?:40[49]06|5624\\d)|70624\\d)\\d{3}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8456247890"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"70\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7012345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"56\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5612345678"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3(?:08162\\d|3\\d{5}|4(?:40[49]06|5624\\d)|7(?:0624\\d|2299\\d))\\d{3}|55\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5512345678"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"IM"; self.countryCode = [NSNumber numberWithInteger:44]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = @" x"; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataHR - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-7]\\d{5,8}|[89]\\d{6,11}" withPossibleNumberPattern:@"\\d{6,12}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1\\d{7}|(?:2[0-3]|3[1-5]|4[02-47-9]|5[1-3])\\d{6,7}" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"12345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9(?:[1-9]\\d{6,10}|01\\d{6,9})" withPossibleNumberPattern:@"\\d{8,12}" withExample:@"912345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[01]\\d{4,7}" withPossibleNumberPattern:@"\\d{7,10}" withExample:@"8001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6(?:[01459]\\d{4,7})" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"611234"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7[45]\\d{4,7}" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"741234567"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[76]2\\d{6,7}" withPossibleNumberPattern:@"\\d{8,9}" withExample:@"62123456"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"HR"; self.countryCode = [NSNumber numberWithInteger:385]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"1"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(1)(\\d{4})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"6[09]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(6[09])(\\d{4})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[67]2"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"([67]2)(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"[2-5]"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"([2-5]\\d)(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"9"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(9\\d)(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"9"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(9\\d)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"9"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(9\\d)(\\d{3,4})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"6[0145]|7"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2,3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats7]; NSMutableArray *numberFormats8_patternArray = [[NSMutableArray alloc] init]; [numberFormats8_patternArray addObject:@"6[0145]|7"]; NBNumberFormat *numberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3,4})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats8_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats8]; NSMutableArray *numberFormats9_patternArray = [[NSMutableArray alloc] init]; [numberFormats9_patternArray addObject:@"8"]; NBNumberFormat *numberFormats9 = [[NBNumberFormat alloc] initWithPattern:@"(80[01])(\\d{2})(\\d{2,3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats9_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats9]; NSMutableArray *numberFormats10_patternArray = [[NSMutableArray alloc] init]; [numberFormats10_patternArray addObject:@"8"]; NBNumberFormat *numberFormats10 = [[NBNumberFormat alloc] initWithPattern:@"(80[01])(\\d{3,4})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats10_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats10]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataGW - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:4(?:0\\d{5}|4\\d{7})|9\\d{8})" withPossibleNumberPattern:@"\\d{7,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"443(?:2[0125]|3[1245]|4[12]|5[1-4]|70|9[1-467])\\d{4}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"443201234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9(?:55\\d|6(?:6\\d|9[012])|77\\d)\\d{5}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"955012345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"40\\d{5}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"4012345"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"GW"; self.countryCode = [NSNumber numberWithInteger:245]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"44|9[567]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"40"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataIN - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1\\d{7,12}|[2-9]\\d{9,10}" withPossibleNumberPattern:@"\\d{6,13}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:11|2[02]|33|4[04]|79)[2-7]\\d{7}|80[2-467]\\d{7}|(?:1(?:2[0-249]|3[0-25]|4[145]|[59][14]|6[014]|7[1257]|8[01346])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568]|9[14])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|[36][25]|22|4[28]|5[12]|[78]1|9[15])|6(?:12|[2345]1|57|6[13]|7[14]|80)|7(?:12|2[14]|3[134]|4[47]|5[15]|[67]1|88)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91))[2-7]\\d{6}|(?:(?:1(?:2[35-8]|3[346-9]|4[236-9]|[59][0235-9]|6[235-9]|7[34689]|8[257-9])|2(?:1[134689]|3[24-8]|4[2-8]|5[25689]|6[2-4679]|7[13-79]|8[2-479]|9[235-9])|3(?:01|1[79]|2[1-5]|4[25-8]|5[125689]|6[235-7]|7[157-9]|8[2-467])|4(?:1[14578]|2[5689]|3[2-467]|5[4-7]|6[35]|73|8[2689]|9[2389])|5(?:[16][146-9]|2[14-8]|3[1346]|4[14-69]|5[46]|7[2-4]|8[2-8]|9[246])|6(?:1[1358]|2[2457]|3[2-4]|4[235-7]|[57][2-689]|6[24-578]|8[1-6])|8(?:1[1357-9]|2[235-8]|3[03-57-9]|4[0-24-9]|5\\d|6[2457-9]|7[1-6]|8[1256]|9[2-4]))\\d|7(?:(?:1[013-9]|2[0235-9]|3[2679]|4[1-35689]|5[2-46-9]|[67][02-9]|9\\d)\\d|8(?:2[0-6]|[013-8]\\d)))[2-7]\\d{5}" withPossibleNumberPattern:@"\\d{6,10}" withExample:@"1123456789"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:7(?:0\\d{3}|2(?:[0235679]\\d{2}|[14][017-9]\\d|8(?:[0-59]\\d|6[089])|9[389]\\d)|3(?:[05-8]\\d{2}|1(?:[089]\\d|7[5-8])|2(?:[5-8]\\d|[01][089])|3[17-9]\\d|4(?:[07-9]\\d|11)|9(?:[01689]\\d|59))|4(?:0[1-9]\\d|1(?:[015-9]\\d|4[08])|2(?:[1-7][089]|[89]\\d)|3(?:[0-8][089]|9\\d)|4(?:[089]\\d|11|7[02-8])|5(?:0[089]|99)|7(?:0[3-9]|11|7[02-8]|[89]\\d)|8(?:[0-24-7][089]|[389]\\d)|9(?:[0-6][089]|7[08]|[89]\\d))|5(?:[034678]\\d|2[03-9]|5[017-9]|9[7-9])\\d|6(?:0[0-47]|1[0-257-9]|2[0-4]|3[19]|5[4589]|[6-9]\\d)\\d|7(?:0[2-9]|[1-79]\\d|8[1-9])\\d|8(?:[0-79]\\d{2}|880)|99[4-9]\\d)|8(?:0(?:[01589]\\d|6[67])|1(?:[02-57-9]\\d|1[0135-9])|2(?:[236-9]\\d|5[1-9])|3(?:[0357-9]\\d|4[1-9])|[45]\\d{2}|6[02457-9]\\d|7(?:07|[1-69]\\d)|8(?:[0-26-9]\\d|44|5[2-9])|9(?:[035-9]\\d|2[2-9]|4[0-8]))\\d|9\\d{4})\\d{5}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9987654321"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:600\\d{6}|80(?:0\\d{4,9}|3\\d{9}))" withPossibleNumberPattern:@"\\d{8,13}" withExample:@"1800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"186[12]\\d{9}" withPossibleNumberPattern:@"\\d{13}" withExample:@"1861123456789"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1860\\d{7}" withPossibleNumberPattern:@"\\d{11}" withExample:@"18603451234"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"140\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1409305260"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:600\\d{6}|8(?:0(?:0\\d{4,9}|3\\d{9})|6(?:0\\d{7}|[12]\\d{9})))" withPossibleNumberPattern:@"\\d{8,13}" withExample:@"1800123456"]; self.codeID = @"IN"; self.countryCode = [NSNumber numberWithInteger:91]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"7(?:[023578]|4[0-57-9]|6[0-35-9]|99)|8(?:0[015689]|1[0-57-9]|2[2356-9]|3[0-57-9]|[45]|6[02457-9]|7[01-69]|8[0-24-9]|9[02-9])|9"]; [numberFormats0_patternArray addObject:@"7(?:[08]|2(?:[0235679]|[14][017-9]|8[0-569]|9[389])|3(?:[05-8]|1[07-9]|2[015-8]|3[17-9]|4[017-9]|9[015689])|4(?:[02][1-9]|1[014-9]|3\\d|[47][017-9]|5[09]|[89])|5(?:[034678]|2[03-9]|5[017-9]|9[7-9])|6(?:0[0-47]|1[0-257-9]|2[0-4]|3[19]|5[4589]|[6-9])|7(?:0[2-9]|[1-79]|8[1-9])|99[4-9])|8(?:0(?:[01589]|6[67])|1(?:[02-57-9]|1[0135-9])|2(?:[236-9]|5[1-9])|3(?:[0357-9]|4[1-9])|[45]|6[02457-9]|7(?:07|[1-69])|8(?:[0-26-9]|44|5[2-9])|9(?:[035-9]|2[2-9]|4[0-8]))|9"]; [numberFormats0_patternArray addObject:@"7(?:0|2(?:[0235679]|[14][017-9]|8[0-569]|9[389])|3(?:[05-8]|1(?:[089]|7[5-9])|2(?:[5-8]|[01][089])|3[17-9]|4(?:[07-9]|11)|9(?:[01689]|59))|4(?:0[1-9]|1(?:[015-9]|4[08])|2(?:[1-7][089]|[89])|3(?:[0-8][089]|9)|4(?:[089]|11|7[02-8])|5(?:0[089]|99)|7(?:0[3-9]|11|7[02-8]|[89])|8(?:[0-24-7][089]|[389])|9(?:[0-6][089]|7[08]|[89]))|5(?:[034678]|2[03-9]|5[017-9]|9[7-9])|6(?:0[0-47]|1[0-257-9]|2[0-4]|3[19]|5[4589]|[6-9])|7(?:0[2-9]|[1-79]|8[1-9])|8(?:[0-79]|880)|99[4-9])|8(?:0(?:[01589]|6[67])|1(?:[02-57-9]|1[0135-9])|2(?:[236-9]|5[1-9])|3(?:[0357-9]|4[1-9])|[45]|6[02457-9]|7(?:07|[1-69])|8(?:[0-26-9]|44|5[2-9])|9(?:[035-9]|2[2-9]|4[0-8]))|9"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{5})(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"11|2[02]|33|4[04]|79|80[2-46]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"1(?:2[0-249]|3[0-25]|4[145]|[569][14]|7[1257]|8[1346]|[68][1-9])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568]|9[14])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|3[15]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|[36][25]|22|4[28]|5[12]|[78]1|9[15])|6(?:12|[2345]1|57|6[13]|7[14]|80)"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"7(?:12|2[14]|3[134]|4[47]|5[15]|[67]1|88)"]; [numberFormats3_patternArray addObject:@"7(?:12|2[14]|3[134]|4[47]|5(?:1|5[2-6])|[67]1|88)"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91)"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"1(?:[23579]|[468][1-9])|[2-8]"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"160"]; [numberFormats6_patternArray addObject:@"1600"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(1600)(\\d{2})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"180"]; [numberFormats7_patternArray addObject:@"1800"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(1800)(\\d{4,5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats7]; NSMutableArray *numberFormats8_patternArray = [[NSMutableArray alloc] init]; [numberFormats8_patternArray addObject:@"18[06]"]; [numberFormats8_patternArray addObject:@"18[06]0"]; NBNumberFormat *numberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(18[06]0)(\\d{2,4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats8_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats8]; NSMutableArray *numberFormats9_patternArray = [[NSMutableArray alloc] init]; [numberFormats9_patternArray addObject:@"140"]; NBNumberFormat *numberFormats9 = [[NBNumberFormat alloc] initWithPattern:@"(140)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats9_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats9]; NSMutableArray *numberFormats10_patternArray = [[NSMutableArray alloc] init]; [numberFormats10_patternArray addObject:@"18[06]"]; [numberFormats10_patternArray addObject:@"18(?:0[03]|6[12])"]; NBNumberFormat *numberFormats10 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats10_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats10]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataKE - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"20\\d{6,7}|[4-9]\\d{6,9}" withPossibleNumberPattern:@"\\d{7,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"20\\d{6,7}|4(?:[0136]\\d{7}|[245]\\d{5,7})|5(?:[08]\\d{7}|[1-79]\\d{5,7})|6(?:[01457-9]\\d{5,7}|[26]\\d{7})" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"202012345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7(?:[0-36]\\d|5[0-6]|[79][0-7]|8[0-25-9])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"712123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800[24-8]\\d{5,6}" withPossibleNumberPattern:@"\\d{9,10}" withExample:@"800223456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[02-9]\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"900223456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"KE"; self.countryCode = [NSNumber numberWithInteger:254]; self.internationalPrefix = @"000"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"005|0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[24-6]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{5,7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"7"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[89]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataLA - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-8]\\d{7,9}" withPossibleNumberPattern:@"\\d{6,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2[13]|3(?:0\\d|[14])|[5-7][14]|41|8[1468])\\d{6}" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"21212862"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"20(?:2[2389]|5[4-689]|7[6-8]|9[15-9])\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"2023123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"LA"; self.countryCode = [NSNumber numberWithInteger:856]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"20"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(20)(\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"2[13]|3[14]|[4-8]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([2-8]\\d)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"30"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(30)(\\d{2})(\\d{2})(\\d{3})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataIO - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3\\d{6}" withPossibleNumberPattern:@"\\d{7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"37\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"3709100"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"38\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"3801234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"IO"; self.countryCode = [NSNumber numberWithInteger:246]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataHT - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-489]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:[248]\\d|5[1-5]|94)\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"22453300"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:3[1-9]\\d|4\\d{2}|9(?:8[0-35]|9[5-9]))\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"34101234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"98[89]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"98901234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"HT"; self.countryCode = [NSNumber numberWithInteger:509]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataGY - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-4679]\\d{6}" withPossibleNumberPattern:@"\\d{7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:1[6-9]|2[0-35-9]|3[1-4]|5[3-9]|6\\d|7[0-24-79])|3(?:2[25-9]|3\\d)|4(?:4[0-24]|5[56])|77[1-57])\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"2201234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6\\d{6}" withPossibleNumberPattern:@"\\d{7}" withExample:@"6091234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:289|862)\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"2891234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9008\\d{3}" withPossibleNumberPattern:@"\\d{7}" withExample:@"9008123"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"GY"; self.countryCode = [NSNumber numberWithInteger:592]; self.internationalPrefix = @"001"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataLB - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[13-9]\\d{6,7}" withPossibleNumberPattern:@"\\d{7,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[14-6]\\d{2}|7(?:[2-57]\\d|62|8[0-7]|9[04-9])|8[02-9]\\d|9\\d{2})\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"1123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:3\\d|7(?:[01]\\d|6[013-9]|8[89]|9[1-3])|81\\d)\\d{5}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"71123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9[01]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"90123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"LB"; self.countryCode = [NSNumber numberWithInteger:961]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[13-6]|7(?:[2-57]|62|8[0-7]|9[04-9])|8[02-9]|9"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[89][01]|7(?:[01]|6[013-9]|8[89]|9[1-3])"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([7-9]\\d)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataKG - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[235-8]\\d{8,9}" withPossibleNumberPattern:@"\\d{5,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:3(?:1(?:[256]\\d|3[1-9]|47)|2(?:22|3[0-479]|6[0-7])|4(?:22|5[6-9]|6\\d)|5(?:22|3[4-7]|59|6\\d)|6(?:22|5[35-7]|6\\d)|7(?:22|3[468]|4[1-9]|59|[67]\\d)|9(?:22|4[1-8]|6\\d))|6(?:09|12|2[2-4])\\d)\\d{5}" withPossibleNumberPattern:@"\\d{5,10}" withExample:@"312123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:20[0-35]|5[124-7]\\d|7[07]\\d)\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"700123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{6,7}" withPossibleNumberPattern:@"\\d{9,10}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"KG"; self.countryCode = [NSNumber numberWithInteger:996]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[25-7]|31[25]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"3(?:1[36]|[2-9])"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"8"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d)(\\d{3})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataHU - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-9]\\d{7,8}" withPossibleNumberPattern:@"\\d{6,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1\\d|2(?:1\\d|[2-9])|3(?:[2-7]|8\\d)|4[24-9]|5[2-79]|6[23689]|7(?:1\\d|[2-9])|8[2-57-9]|9[2-69])\\d{6}" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"12345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[257]0|3[01])\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"201234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9[01]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"90123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"40\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"40123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[48]0\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80123456"]; self.codeID = @"HU"; self.countryCode = [NSNumber numberWithInteger:36]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"06"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"06"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"1"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(1)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"($1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[2-9]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"($1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataLC - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[5789]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"758(?:4(?:30|5[0-9]|6[2-9]|8[0-2])|57[0-2]|638)\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"7584305678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"758(?:28[4-7]|384|4(?:6[01]|8[4-9])|5(?:1[89]|20|84)|7(?:1[2-9]|2[0-8]))\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7582845678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"LC"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"758"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataIQ - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-7]\\d{7,9}" withPossibleNumberPattern:@"\\d{6,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1\\d{7}|(?:2[13-5]|3[02367]|4[023]|5[03]|6[026])\\d{6,7}" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"12345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7[3-9]\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7912345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"IQ"; self.countryCode = [NSNumber numberWithInteger:964]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"1"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(1)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[2-6]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([2-6]\\d)(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"7"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(7\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataKH - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-9]\\d{7,9}" withPossibleNumberPattern:@"\\d{6,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2[3-6]|3[2-6]|4[2-4]|[5-7][2-5])(?:[237-9]|4[56]|5\\d|6\\d?)\\d{5}|23(?:4[234]|8\\d{2})\\d{4}" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"23756789"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1(?:[013-79]\\d|[28]\\d{1,2})|2[3-6]48|3(?:[18]\\d{2}|[2-6]48)|4[2-4]48|5[2-5]48|6(?:[016-9]\\d|[2-5]48)|7(?:[07-9]\\d|[16]\\d{2}|[2-5]48)|8(?:[013-79]\\d|8\\d{2})|9(?:6\\d{2}|7\\d{1,2}|[0-589]\\d))\\d{5}" withPossibleNumberPattern:@"\\d{8,9}" withExample:@"91234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1800(?:1\\d|2[019])\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1900(?:1\\d|2[09])\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1900123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"KH"; self.countryCode = [NSNumber numberWithInteger:855]; self.internationalPrefix = @"00[14-9]"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"1\\d[1-9]|[2-9]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"1[89]0"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(1[89]00)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataJM - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[589]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"876(?:5(?:0[12]|1[0-468]|2[35]|63)|6(?:0[1-3579]|1[027-9]|[23]\\d|40|5[06]|6[2-589]|7[05]|8[04]|9[4-9])|7(?:0[2-689]|[1-6]\\d|8[056]|9[45])|9(?:0[1-8]|1[02378]|[2-8]\\d|9[2-468]))\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"8765123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"876(?:2[16-9]\\d|[348]\\d{2}|5(?:0[3-9]|27|6[0-24-9]|[3-578]\\d)|7(?:0[07]|7\\d|8[1-47-9]|9[0-36-9])|9(?:[01]9|9[0579]))\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8762101234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"JM"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"876"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataIR - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-8]\\d{9}|9(?:[0-4]\\d{8}|9\\d{2,8})" withPossibleNumberPattern:@"\\d{4,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1[137]|2[13-68]|3[1458]|4[145]|5[146-8]|6[146]|7[1467]|8[13467])\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"2123456789"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9(?:0[1-3]|[13]\\d|2[0-2]|90)\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9123456789"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[2-6]0\\d|993)\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9932123456"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"943\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9432123456"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9990\\d{0,6}" withPossibleNumberPattern:@"\\d{4,10}" withExample:@"9990123456"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"IR"; self.countryCode = [NSNumber numberWithInteger:98]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"21"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(21)(\\d{3,5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[1-8]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"9"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"9"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{2,3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"9"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataKI - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2458]\\d{4}|3\\d{4,7}|7\\d{7}" withPossibleNumberPattern:@"\\d{5,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[24]\\d|3[1-9]|50|8[0-5])\\d{3}" withPossibleNumberPattern:@"\\d{5}" withExample:@"31234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:@"72012345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3001\\d{4}" withPossibleNumberPattern:@"\\d{5,8}" withExample:@"30010000"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"KI"; self.countryCode = [NSNumber numberWithInteger:686]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataIS - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[4-9]\\d{6}|38\\d{7}" withPossibleNumberPattern:@"\\d{7,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:4(?:1[0-24-6]|2[0-7]|[37][0-8]|4[0-245]|5[0-68]|6\\d|8[0-36-8])|5(?:05|[156]\\d|2[02578]|3[013-79]|4[03-7]|7[0-2578]|8[0-35-9]|9[013-689])|87[23])\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"4101234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"38[589]\\d{6}|(?:6(?:1[1-8]|2[056]|3[089]|4[0167]|5[0159]|[67][0-69]|9\\d)|7(?:5[057]|6[0-2]|[78]\\d)|8(?:2[0-59]|3[0-4]|[469]\\d|5[1-9]))\\d{4}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"6111234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"8001234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"9011234"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"49\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"4921234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"809\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"8091234"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:6(?:2[1-478]|49|8\\d)|8(?:7[0189]|80)|95[48])\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"6211234"]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"IS"; self.countryCode = [NSNumber numberWithInteger:354]; self.internationalPrefix = @"1(?:0(?:01|10|20)|100)|00"; self.preferredInternationalPrefix = @"00"; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[4-9]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"3"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(3\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMA - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[5689]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:2(?:(?:[015-7]\\d|2[02-9]|3[2-57]|4[2-8]|8[235-7])\\d|9(?:0\\d|[89]0))|3(?:(?:[0-4]\\d|[57][2-9]|6[235-8]|9[3-9])\\d|8(?:0\\d|[89]0)))\\d{4}" withPossibleNumberPattern:@"\\d{9}" withExample:@"520123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6(?:0[0-8]|[12-79]\\d|8[017])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"650123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"801234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"89\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"891234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MA"; self.countryCode = [NSNumber numberWithInteger:212]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"5(?:2[015-7]|3[0-4])|6"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([56]\\d{2})(\\d{6})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"5(?:2[2-489]|3[5-9])|892"]; [numberFormats1_patternArray addObject:@"5(?:2(?:[2-48]|90)|3(?:[5-79]|80))|892"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([58]\\d{3})(\\d{5})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"5(?:29|38)"]; [numberFormats2_patternArray addObject:@"5(?:29|38)[89]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(5\\d{4})(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"8(?:0|9[013-9])"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(8[09])(\\d{7})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = YES; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataJO - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[235-9]\\d{7,8}" withPossibleNumberPattern:@"\\d{8,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:6(?:2[0-35-9]|3[0-57-8]|4[24-7]|5[0-24-8]|[6-8][023]|9[0-3])|7(?:0[1-79]|10|2[014-7]|3[0-689]|4[019]|5[0-3578]))|32(?:0[1-69]|1[1-35-7]|2[024-7]|3\\d|4[0-3]|[57][023]|6[03])|53(?:0[0-3]|[13][023]|2[0-59]|49|5[0-35-9]|6[15]|7[45]|8[1-6]|9[0-36-9])|6(?:2[50]0|3(?:00|33)|4(?:0[0125]|1[2-7]|2[0569]|[38][07-9]|4[025689]|6[0-589]|7\\d|9[0-2])|5(?:[01][056]|2[034]|3[0-57-9]|4[17-8]|5[0-69]|6[0-35-9]|7[1-379]|8[0-68]|9[02-39]))|87(?:[02]0|7[08]|90))\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"62001234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7(?:55|7[025-9]|8[015-9]|9[0-25-9])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"790123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"90012345"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"85\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"85012345"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"70\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"700123456"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"74(?:66|77)\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"746612345"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:10|8\\d)\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"88101234"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"JO"; self.countryCode = [NSNumber numberWithInteger:962]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2356]|87"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"7[457-9]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(7)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"70|8[0158]|9"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{5,6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataIT - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[01589]\\d{5,10}|3(?:[12457-9]\\d{8}|[36]\\d{7,9})" withPossibleNumberPattern:@"\\d{6,11}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"0(?:[26]\\d{4,9}|(?:1(?:[0159]\\d|[27][1-5]|31|4[1-4]|6[1356]|8[2-57])|3(?:[0159]\\d|2[1-4]|3[12]|[48][1-6]|6[2-59]|7[1-7])|4(?:[0159]\\d|[23][1-9]|4[245]|6[1-5]|7[1-4]|81)|5(?:[0159]\\d|2[1-5]|3[2-6]|4[1-79]|6[4-6]|7[1-578]|8[3-8])|7(?:[0159]\\d|2[12]|3[1-7]|4[2346]|6[13569]|7[13-6]|8[1-59])|8(?:[0159]\\d|2[34578]|3[1-356]|[6-8][1-5])|9(?:[0159]\\d|[238][1-5]|4[12]|6[1-8]|7[1-6]))\\d{2,7})" withPossibleNumberPattern:@"\\d{6,11}" withExample:@"0212345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3(?:[12457-9]\\d{8}|6\\d{7,8}|3\\d{7,9})" withPossibleNumberPattern:@"\\d{9,11}" withExample:@"3123456789"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80(?:0\\d{6}|3\\d{3})" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"0878\\d{5}|1(?:44|6[346])\\d{6}|89(?:2\\d{3}|4(?:[0-4]\\d{2}|[5-9]\\d{4})|5(?:[0-4]\\d{2}|[5-9]\\d{6})|9\\d{6})" withPossibleNumberPattern:@"\\d{6,10}" withExample:@"899123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"84(?:[08]\\d{6}|[17]\\d{3})" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"848123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:78\\d|99)\\d{6}" withPossibleNumberPattern:@"\\d{9,10}" withExample:@"1781234567"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"55\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5512345678"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"848\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"848123456"]; self.codeID = @"IT"; self.countryCode = [NSNumber numberWithInteger:39]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"0[26]|55"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3,4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"0[26]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(0[26])(\\d{4})(\\d{5})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"0[26]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(0[26])(\\d{4,6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"0[13-57-9][0159]"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(0\\d{2})(\\d{3,4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"0[13-57-9][0159]|8(?:03|4[17]|9[245])"]; [numberFormats4_patternArray addObject:@"0[13-57-9][0159]|8(?:03|4[17]|9(?:2|[45][0-4]))"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3,6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"0[13-57-9][2-46-8]"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(0\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"0[13-57-9][2-46-8]"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(0\\d{3})(\\d{2,6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"[13]|8(?:00|4[08]|9[59])"]; [numberFormats7_patternArray addObject:@"[13]|8(?:00|4[08]|9(?:5[5-9]|9))"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats7]; NSMutableArray *numberFormats8_patternArray = [[NSMutableArray alloc] init]; [numberFormats8_patternArray addObject:@"894"]; [numberFormats8_patternArray addObject:@"894[5-9]"]; NBNumberFormat *numberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats8_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats8]; NSMutableArray *numberFormats9_patternArray = [[NSMutableArray alloc] init]; [numberFormats9_patternArray addObject:@"3"]; NBNumberFormat *numberFormats9 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats9_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats9]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = YES; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataJP - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-9]\\d{8,9}|00(?:[36]\\d{7,14}|7\\d{5,7}|8\\d{7})" withPossibleNumberPattern:@"\\d{8,17}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1(?:1[235-8]|2[3-6]|3[3-9]|4[2-6]|[58][2-8]|6[2-7]|7[2-9]|9[1-9])|2[2-9]\\d|[36][1-9]\\d|4(?:6[02-8]|[2-578]\\d|9[2-59])|5(?:6[1-9]|7[2-8]|[2-589]\\d)|7(?:3[4-9]|4[02-9]|[25-9]\\d)|8(?:3[2-9]|4[5-9]|5[1-9]|8[03-9]|[2679]\\d)|9(?:[679][1-9]|[2-58]\\d))\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"312345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[7-9]0[1-9]\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9012345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"120\\d{6}|800\\d{7}|00(?:37\\d{6,13}|66\\d{6,13}|777(?:[01]\\d{2}|5\\d{3}|8\\d{4})|882[1245]\\d{4})" withPossibleNumberPattern:@"\\d{8,17}" withExample:@"120123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"990\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"990123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"60\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"601234567"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"50[1-9]\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5012345678"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"20\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"2012345678"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"570\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"570123456"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"00(?:37\\d{6,13}|66\\d{6,13}|777(?:[01]\\d{2}|5\\d{3}|8\\d{4})|882[1245]\\d{4})" withPossibleNumberPattern:@"\\d{8,17}" withExample:@"00777012"]; self.codeID = @"JP"; self.countryCode = [NSNumber numberWithInteger:81]; self.internationalPrefix = @"010"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"(?:12|57|99)0"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"800"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"0077"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"0077"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{2})(\\d{3,4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"0088"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{2})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"00(?:37|66)"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{3})(\\d{3,4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"00(?:37|66)"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})(\\d{4,5})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"00(?:37|66)"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{5})(\\d{5,6})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats7]; NSMutableArray *numberFormats8_patternArray = [[NSMutableArray alloc] init]; [numberFormats8_patternArray addObject:@"00(?:37|66)"]; NBNumberFormat *numberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{6})(\\d{6,7})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats8_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats8]; NSMutableArray *numberFormats9_patternArray = [[NSMutableArray alloc] init]; [numberFormats9_patternArray addObject:@"[2579]0|80[1-9]"]; NBNumberFormat *numberFormats9 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{4})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats9_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats9]; NSMutableArray *numberFormats10_patternArray = [[NSMutableArray alloc] init]; [numberFormats10_patternArray addObject:@"1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|5(?:76|97)|499|746|8(?:3[89]|63|47|51)|9(?:49|80|9[16])"]; [numberFormats10_patternArray addObject:@"1(?:267|3(?:7[247]|9[278])|4(?:5[67]|66)|5(?:47|58|64|8[67])|6(?:3[245]|48|5[4-68]))|5(?:76|97)9|499[2468]|7468|8(?:3(?:8[78]|96)|636|477|51[24])|9(?:496|802|9(?:1[23]|69))"]; [numberFormats10_patternArray addObject:@"1(?:267|3(?:7[247]|9[278])|4(?:5[67]|66)|5(?:47|58|64|8[67])|6(?:3[245]|48|5[4-68]))|5(?:769|979[2-69])|499[2468]|7468|8(?:3(?:8[78]|96[2457-9])|636[2-57-9]|477|51[24])|9(?:496|802|9(?:1[23]|69))"]; NBNumberFormat *numberFormats10 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d)(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats10_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats10]; NSMutableArray *numberFormats11_patternArray = [[NSMutableArray alloc] init]; [numberFormats11_patternArray addObject:@"1(?:2[3-6]|3[3-9]|4[2-6]|5[2-8]|[68][2-7]|7[2-689]|9[1-578])|2(?:2[03-689]|3[3-58]|4[0-468]|5[04-8]|6[013-8]|7[06-9]|8[02-57-9]|9[13])|4(?:2[28]|3[689]|6[035-7]|7[05689]|80|9[3-5])|5(?:3[1-36-9]|4[4578]|5[013-8]|6[1-9]|7[2-8]|8[14-7]|9[4-9])|7(?:2[15]|3[5-9]|4[02-9]|6[135-8]|7[0-4689]|9[014-9])|8(?:2[49]|3[3-8]|4[5-8]|5[2-9]|6[35-9]|7[579]|8[03-579]|9[2-8])|9(?:[23]0|4[02-46-9]|5[024-79]|6[4-9]|7[2-47-9]|8[02-7]|9[3-7])"]; [numberFormats11_patternArray addObject:@"1(?:2[3-6]|3[3-9]|4[2-6]|5(?:[236-8]|[45][2-69])|[68][2-7]|7[2-689]|9[1-578])|2(?:2(?:[04-689]|3[23])|3[3-58]|4[0-468]|5(?:5[78]|7[2-4]|[0468][2-9])|6(?:[0135-8]|4[2-5])|7(?:[0679]|8[2-7])|8(?:[024578]|3[25-9]|9[6-9])|9(?:11|3[2-4]))|4(?:2(?:2[2-9]|8[237-9])|3[689]|6[035-7]|7(?:[059][2-8]|[68])|80|9[3-5])|5(?:3[1-36-9]|4[4578]|5[013-8]|6[1-9]|7[2-8]|8[14-7]|9(?:[89][2-8]|[4-7]))|7(?:2[15]|3[5-9]|4[02-9]|6[135-8]|7[0-4689]|9(?:[017-9]|4[6-8]|5[2-478]|6[2-589]))|8(?:2(?:4[4-8]|9[2-8])|3(?:7[2-6]|[3-6][2-9]|8[2-5])|4[5-8]|5[2-9]|6(?:[37]|5[4-7]|6[2-9]|8[2-8]|9[236-9])|7[579]|8[03-579]|9[2-8])|9(?:[23]0|4[02-46-9]|5[024-79]|6[4-9]|7[2-47-9]|8[02-7]|9(?:3[34]|[4-7]))"]; [numberFormats11_patternArray addObject:@"1(?:2[3-6]|3[3-9]|4[2-6]|5(?:[236-8]|[45][2-69])|[68][2-7]|7[2-689]|9[1-578])|2(?:2(?:[04-689]|3[23])|3[3-58]|4[0-468]|5(?:5[78]|7[2-4]|[0468][2-9])|6(?:[0135-8]|4[2-5])|7(?:[0679]|8[2-7])|8(?:[024578]|3[25-9]|9[6-9])|9(?:11|3[2-4]))|4(?:2(?:2[2-9]|8[237-9])|3[689]|6[035-7]|7(?:[059][2-8]|[68])|80|9[3-5])|5(?:3[1-36-9]|4[4578]|5[013-8]|6[1-9]|7[2-8]|8[14-7]|9(?:[89][2-8]|[4-7]))|7(?:2[15]|3[5-9]|4[02-9]|6[135-8]|7[0-4689]|9(?:[017-9]|4[6-8]|5[2-478]|6[2-589]))|8(?:2(?:4[4-8]|9(?:[3578]|20|4[04-9]|6[56]))|3(?:7(?:[2-5]|6[0-59])|[3-6][2-9]|8[2-5])|4[5-8]|5[2-9]|6(?:[37]|5(?:[467]|5[014-9])|6(?:[2-8]|9[02-69])|8[2-8]|9(?:[236-8]|9[23]))|7[579]|8[03-579]|9[2-8])|9(?:[23]0|4[02-46-9]|5[024-79]|6[4-9]|7[2-47-9]|8[02-7]|9(?:3(?:3[02-9]|4[0-24689])|4[2-69]|[5-7]))"]; [numberFormats11_patternArray addObject:@"1(?:2[3-6]|3[3-9]|4[2-6]|5(?:[236-8]|[45][2-69])|[68][2-7]|7[2-689]|9[1-578])|2(?:2(?:[04-689]|3[23])|3[3-58]|4[0-468]|5(?:5[78]|7[2-4]|[0468][2-9])|6(?:[0135-8]|4[2-5])|7(?:[0679]|8[2-7])|8(?:[024578]|3[25-9]|9[6-9])|9(?:11|3[2-4]))|4(?:2(?:2[2-9]|8[237-9])|3[689]|6[035-7]|7(?:[059][2-8]|[68])|80|9[3-5])|5(?:3[1-36-9]|4[4578]|5[013-8]|6[1-9]|7[2-8]|8[14-7]|9(?:[89][2-8]|[4-7]))|7(?:2[15]|3[5-9]|4[02-9]|6[135-8]|7[0-4689]|9(?:[017-9]|4[6-8]|5[2-478]|6[2-589]))|8(?:2(?:4[4-8]|9(?:[3578]|20|4[04-9]|6(?:5[25]|60)))|3(?:7(?:[2-5]|6[0-59])|[3-6][2-9]|8[2-5])|4[5-8]|5[2-9]|6(?:[37]|5(?:[467]|5[014-9])|6(?:[2-8]|9[02-69])|8[2-8]|9(?:[236-8]|9[23]))|7[579]|8[03-579]|9[2-8])|9(?:[23]0|4[02-46-9]|5[024-79]|6[4-9]|7[2-47-9]|8[02-7]|9(?:3(?:3[02-9]|4[0-24689])|4[2-69]|[5-7]))"]; NBNumberFormat *numberFormats11 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats11_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats11]; NSMutableArray *numberFormats12_patternArray = [[NSMutableArray alloc] init]; [numberFormats12_patternArray addObject:@"1|2(?:2[37]|5[5-9]|64|78|8[39]|91)|4(?:2[2689]|64|7[347])|5(?:[2-589]|39)|60|8(?:[46-9]|3[279]|2[124589])|9(?:[235-8]|93)"]; [numberFormats12_patternArray addObject:@"1|2(?:2[37]|5(?:[57]|[68]0|9[19])|64|78|8[39]|917)|4(?:2(?:[68]|20|9[178])|64|7[347])|5(?:[2-589]|39[67])|60|8(?:[46-9]|3[279]|2[124589])|9(?:[235-8]|93[34])"]; [numberFormats12_patternArray addObject:@"1|2(?:2[37]|5(?:[57]|[68]0|9(?:17|99))|64|78|8[39]|917)|4(?:2(?:[68]|20|9[178])|64|7[347])|5(?:[2-589]|39[67])|60|8(?:[46-9]|3[279]|2[124589])|9(?:[235-8]|93(?:31|4))"]; NBNumberFormat *numberFormats12 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats12_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats12]; NSMutableArray *numberFormats13_patternArray = [[NSMutableArray alloc] init]; [numberFormats13_patternArray addObject:@"2(?:9[14-79]|74|[34]7|[56]9)|82|993"]; NBNumberFormat *numberFormats13 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats13_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats13]; NSMutableArray *numberFormats14_patternArray = [[NSMutableArray alloc] init]; [numberFormats14_patternArray addObject:@"3|4(?:2[09]|7[01])|6[1-9]"]; NBNumberFormat *numberFormats14 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{4})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats14_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats14]; NSMutableArray *numberFormats15_patternArray = [[NSMutableArray alloc] init]; [numberFormats15_patternArray addObject:@"[2479][1-9]"]; NBNumberFormat *numberFormats15 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats15_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats15]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *intlNumberFormats0_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats0_patternArray addObject:@"(?:12|57|99)0"]; NBNumberFormat *intlNumberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:intlNumberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats0]; NSMutableArray *intlNumberFormats1_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats1_patternArray addObject:@"800"]; NBNumberFormat *intlNumberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:intlNumberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats1]; NSMutableArray *intlNumberFormats2_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats2_patternArray addObject:@"[2579]0|80[1-9]"]; NBNumberFormat *intlNumberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{4})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:intlNumberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats2]; NSMutableArray *intlNumberFormats3_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats3_patternArray addObject:@"1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|5(?:76|97)|499|746|8(?:3[89]|63|47|51)|9(?:49|80|9[16])"]; [intlNumberFormats3_patternArray addObject:@"1(?:267|3(?:7[247]|9[278])|4(?:5[67]|66)|5(?:47|58|64|8[67])|6(?:3[245]|48|5[4-68]))|5(?:76|97)9|499[2468]|7468|8(?:3(?:8[78]|96)|636|477|51[24])|9(?:496|802|9(?:1[23]|69))"]; [intlNumberFormats3_patternArray addObject:@"1(?:267|3(?:7[247]|9[278])|4(?:5[67]|66)|5(?:47|58|64|8[67])|6(?:3[245]|48|5[4-68]))|5(?:769|979[2-69])|499[2468]|7468|8(?:3(?:8[78]|96[2457-9])|636[2-57-9]|477|51[24])|9(?:496|802|9(?:1[23]|69))"]; NBNumberFormat *intlNumberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d)(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:intlNumberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats3]; NSMutableArray *intlNumberFormats4_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats4_patternArray addObject:@"1(?:2[3-6]|3[3-9]|4[2-6]|5[2-8]|[68][2-7]|7[2-689]|9[1-578])|2(?:2[03-689]|3[3-58]|4[0-468]|5[04-8]|6[013-8]|7[06-9]|8[02-57-9]|9[13])|4(?:2[28]|3[689]|6[035-7]|7[05689]|80|9[3-5])|5(?:3[1-36-9]|4[4578]|5[013-8]|6[1-9]|7[2-8]|8[14-7]|9[4-9])|7(?:2[15]|3[5-9]|4[02-9]|6[135-8]|7[0-4689]|9[014-9])|8(?:2[49]|3[3-8]|4[5-8]|5[2-9]|6[35-9]|7[579]|8[03-579]|9[2-8])|9(?:[23]0|4[02-46-9]|5[024-79]|6[4-9]|7[2-47-9]|8[02-7]|9[3-7])"]; [intlNumberFormats4_patternArray addObject:@"1(?:2[3-6]|3[3-9]|4[2-6]|5(?:[236-8]|[45][2-69])|[68][2-7]|7[2-689]|9[1-578])|2(?:2(?:[04-689]|3[23])|3[3-58]|4[0-468]|5(?:5[78]|7[2-4]|[0468][2-9])|6(?:[0135-8]|4[2-5])|7(?:[0679]|8[2-7])|8(?:[024578]|3[25-9]|9[6-9])|9(?:11|3[2-4]))|4(?:2(?:2[2-9]|8[237-9])|3[689]|6[035-7]|7(?:[059][2-8]|[68])|80|9[3-5])|5(?:3[1-36-9]|4[4578]|5[013-8]|6[1-9]|7[2-8]|8[14-7]|9(?:[89][2-8]|[4-7]))|7(?:2[15]|3[5-9]|4[02-9]|6[135-8]|7[0-4689]|9(?:[017-9]|4[6-8]|5[2-478]|6[2-589]))|8(?:2(?:4[4-8]|9[2-8])|3(?:7[2-6]|[3-6][2-9]|8[2-5])|4[5-8]|5[2-9]|6(?:[37]|5[4-7]|6[2-9]|8[2-8]|9[236-9])|7[579]|8[03-579]|9[2-8])|9(?:[23]0|4[02-46-9]|5[024-79]|6[4-9]|7[2-47-9]|8[02-7]|9(?:3[34]|[4-7]))"]; [intlNumberFormats4_patternArray addObject:@"1(?:2[3-6]|3[3-9]|4[2-6]|5(?:[236-8]|[45][2-69])|[68][2-7]|7[2-689]|9[1-578])|2(?:2(?:[04-689]|3[23])|3[3-58]|4[0-468]|5(?:5[78]|7[2-4]|[0468][2-9])|6(?:[0135-8]|4[2-5])|7(?:[0679]|8[2-7])|8(?:[024578]|3[25-9]|9[6-9])|9(?:11|3[2-4]))|4(?:2(?:2[2-9]|8[237-9])|3[689]|6[035-7]|7(?:[059][2-8]|[68])|80|9[3-5])|5(?:3[1-36-9]|4[4578]|5[013-8]|6[1-9]|7[2-8]|8[14-7]|9(?:[89][2-8]|[4-7]))|7(?:2[15]|3[5-9]|4[02-9]|6[135-8]|7[0-4689]|9(?:[017-9]|4[6-8]|5[2-478]|6[2-589]))|8(?:2(?:4[4-8]|9(?:[3578]|20|4[04-9]|6[56]))|3(?:7(?:[2-5]|6[0-59])|[3-6][2-9]|8[2-5])|4[5-8]|5[2-9]|6(?:[37]|5(?:[467]|5[014-9])|6(?:[2-8]|9[02-69])|8[2-8]|9(?:[236-8]|9[23]))|7[579]|8[03-579]|9[2-8])|9(?:[23]0|4[02-46-9]|5[024-79]|6[4-9]|7[2-47-9]|8[02-7]|9(?:3(?:3[02-9]|4[0-24689])|4[2-69]|[5-7]))"]; [intlNumberFormats4_patternArray addObject:@"1(?:2[3-6]|3[3-9]|4[2-6]|5(?:[236-8]|[45][2-69])|[68][2-7]|7[2-689]|9[1-578])|2(?:2(?:[04-689]|3[23])|3[3-58]|4[0-468]|5(?:5[78]|7[2-4]|[0468][2-9])|6(?:[0135-8]|4[2-5])|7(?:[0679]|8[2-7])|8(?:[024578]|3[25-9]|9[6-9])|9(?:11|3[2-4]))|4(?:2(?:2[2-9]|8[237-9])|3[689]|6[035-7]|7(?:[059][2-8]|[68])|80|9[3-5])|5(?:3[1-36-9]|4[4578]|5[013-8]|6[1-9]|7[2-8]|8[14-7]|9(?:[89][2-8]|[4-7]))|7(?:2[15]|3[5-9]|4[02-9]|6[135-8]|7[0-4689]|9(?:[017-9]|4[6-8]|5[2-478]|6[2-589]))|8(?:2(?:4[4-8]|9(?:[3578]|20|4[04-9]|6(?:5[25]|60)))|3(?:7(?:[2-5]|6[0-59])|[3-6][2-9]|8[2-5])|4[5-8]|5[2-9]|6(?:[37]|5(?:[467]|5[014-9])|6(?:[2-8]|9[02-69])|8[2-8]|9(?:[236-8]|9[23]))|7[579]|8[03-579]|9[2-8])|9(?:[23]0|4[02-46-9]|5[024-79]|6[4-9]|7[2-47-9]|8[02-7]|9(?:3(?:3[02-9]|4[0-24689])|4[2-69]|[5-7]))"]; NBNumberFormat *intlNumberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:intlNumberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats4]; NSMutableArray *intlNumberFormats5_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats5_patternArray addObject:@"1|2(?:2[37]|5[5-9]|64|78|8[39]|91)|4(?:2[2689]|64|7[347])|5(?:[2-589]|39)|60|8(?:[46-9]|3[279]|2[124589])|9(?:[235-8]|93)"]; [intlNumberFormats5_patternArray addObject:@"1|2(?:2[37]|5(?:[57]|[68]0|9[19])|64|78|8[39]|917)|4(?:2(?:[68]|20|9[178])|64|7[347])|5(?:[2-589]|39[67])|60|8(?:[46-9]|3[279]|2[124589])|9(?:[235-8]|93[34])"]; [intlNumberFormats5_patternArray addObject:@"1|2(?:2[37]|5(?:[57]|[68]0|9(?:17|99))|64|78|8[39]|917)|4(?:2(?:[68]|20|9[178])|64|7[347])|5(?:[2-589]|39[67])|60|8(?:[46-9]|3[279]|2[124589])|9(?:[235-8]|93(?:31|4))"]; NBNumberFormat *intlNumberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:intlNumberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats5]; NSMutableArray *intlNumberFormats6_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats6_patternArray addObject:@"2(?:9[14-79]|74|[34]7|[56]9)|82|993"]; NBNumberFormat *intlNumberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:intlNumberFormats6_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats6]; NSMutableArray *intlNumberFormats7_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats7_patternArray addObject:@"3|4(?:2[09]|7[01])|6[1-9]"]; NBNumberFormat *intlNumberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{4})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:intlNumberFormats7_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats7]; NSMutableArray *intlNumberFormats8_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats8_patternArray addObject:@"[2479][1-9]"]; NBNumberFormat *intlNumberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:intlNumberFormats8_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats8]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataMC - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[4689]\\d{7,8}" withPossibleNumberPattern:@"\\d{8,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"870\\d{5}|9[2-47-9]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"99123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6\\d{8}|4(?:4\\d|5[1-9])\\d{5}" withPossibleNumberPattern:@"\\d{8,9}" withExample:@"612345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"90123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.codeID = @"MC"; self.countryCode = [NSNumber numberWithInteger:377]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"9"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"4"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"6"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(6)(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4 $5" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"8"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{2})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataKM - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[379]\\d{6}" withPossibleNumberPattern:@"\\d{7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7(?:6[0-37-9]|7[0-57-9])\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"7712345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3[234]\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"3212345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:39[01]|9[01]0)\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"9001234"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"KM"; self.countryCode = [NSNumber numberWithInteger:269]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMD - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[235-9]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:1[0569]|2\\d|3[015-7]|4[1-46-9]|5[0-24689]|6[2-589]|7[1-37]|9[1347-9])|5(?:33|5[257]))\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"22212345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:562\\d|6(?:[089]\\d{2}|[12][01]\\d|7(?:[1-6]\\d|7[0-4]))|7(?:6[07]|7[457-9]|[89]\\d)\\d)\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"62112345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90[056]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"90012345"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"808\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80812345"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3[08]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"30123456"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:03|14)\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80312345"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MD"; self.countryCode = [NSNumber numberWithInteger:373]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"22|3"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"2[13-79]|[5-7]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([25-7]\\d{2})(\\d{2})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[89]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"([89]\\d{2})(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataLI - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6\\d{8}|[23789]\\d{6}" withPossibleNumberPattern:@"\\d{7,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:01|1[27]|3\\d|6[02-578]|96)|3(?:7[0135-7]|8[048]|9[0269]))\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"2345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6(?:51[01]|6(?:0[0-6]|2[016-9]|39))\\d{5}|7(?:[37-9]\\d|42|56)\\d{4}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"660234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80(?:02[28]|9\\d{2})\\d{2}" withPossibleNumberPattern:@"\\d{7}" withExample:@"8002222"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90(?:02[258]|1(?:23|3[14])|66[136])\\d{2}" withPossibleNumberPattern:@"\\d{7}" withExample:@"9002222"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"870(?:28|87)\\d{2}" withPossibleNumberPattern:@"\\d{7}" withExample:@"8702812"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"697(?:42|56|[7-9]\\d)\\d{4}" withPossibleNumberPattern:@"\\d{9}" withExample:@"697861234"]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"LI"; self.countryCode = [NSNumber numberWithInteger:423]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[23789]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"6[56]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"697"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(69)(7\\d{2})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadata881 - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[67]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:@"612345678"]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:@"612345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[67]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:@"612345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"001"; self.countryCode = [NSNumber numberWithInteger:881]; self.internationalPrefix = nil; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[67]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{3})(\\d{5})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataKN - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[589]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"869(?:2(?:29|36)|302|4(?:6[015-9]|70))\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"8692361234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"869(?:5(?:5[6-8]|6[5-7])|66\\d|76[02-7])\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8697652917"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"KN"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"869"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataME - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-9]\\d{7,8}" withPossibleNumberPattern:@"\\d{6,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:20[2-8]|3(?:0[2-7]|[12][35-7]|3[4-7])|4(?:0[2367]|1[267])|5(?:0[467]|1[267]|2[367]))\\d{5}" withPossibleNumberPattern:@"\\d{6,8}" withExample:@"30234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6(?:00\\d|32\\d|[89]\\d{2}|61\\d|7(?:[0-8]\\d|9(?:[3-9]|[0-2]\\d)))\\d{4}" withPossibleNumberPattern:@"\\d{8,9}" withExample:@"67622901"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80080002"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:9(?:4[1568]|5[178]))\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"94515151"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"78[1-9]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"78108780"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"77\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"77273012"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"ME"; self.countryCode = [NSNumber numberWithInteger:382]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2-57-9]|6[036-9]"]; [numberFormats0_patternArray addObject:@"[2-57-9]|6(?:[03689]|7(?:[0-8]|9[3-9]))"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"679"]; [numberFormats1_patternArray addObject:@"679[0-2]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(67)(9)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataNA - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[68]\\d{7,8}" withPossibleNumberPattern:@"\\d{8,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6(?:1(?:17|2(?:[0189]\\d|[2-6]|7\\d?)|3(?:[01378]|2\\d)|4(?:[024]|10?|3[15]?)|69|7[014])|2(?:17|5(?:[0-36-8]|4\\d?)|69|70)|3(?:17|2(?:[0237]\\d?|[14-689])|34|6[289]|7[01]|81)|4(?:17|2(?:[012]|7?)|4(?:[06]|1\\d?)|5(?:[01357]|[25]\\d?)|69|7[01])|5(?:17|2(?:[0459]|[23678]\\d?)|69|7[01])|6(?:17|2(?:5|6\\d?)|38|42|69|7[01])|7(?:17|2(?:[569]|[234]\\d?)|3(?:0\\d?|[13])|69|7[01]))\\d{4}" withPossibleNumberPattern:@"\\d{8,9}" withExample:@"61221234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:60|8[125])\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"811234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8701\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"870123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:3\\d{2}|86)\\d{5}" withPossibleNumberPattern:@"\\d{8,9}" withExample:@"88612345"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"NA"; self.countryCode = [NSNumber numberWithInteger:264]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"8[1235]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(8\\d)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"6"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(6\\d)(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"88"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(88)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"870"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(870)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMF - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[56]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"590(?:[02][79]|13|5[0-268]|[78]7)\\d{4}" withPossibleNumberPattern:@"\\d{9}" withExample:@"590271234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"690(?:0[0-7]|[1-9]\\d)\\d{4}" withPossibleNumberPattern:@"\\d{9}" withExample:@"690301234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MF"; self.countryCode = [NSNumber numberWithInteger:590]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataLK - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-9]\\d{8}" withPossibleNumberPattern:@"\\d{7,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[189]1|2[13-7]|3[1-8]|4[157]|5[12457]|6[35-7])[2-57]\\d{6}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"112345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7[0125-8]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"712345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"LK"; self.countryCode = [NSNumber numberWithInteger:94]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[1-689]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{1})(\\d{6})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"7"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadata882 - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[13]\\d{6,11}" withPossibleNumberPattern:@"\\d{7,12}" withExample:@"3451234567"]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:@"3451234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3(?:2\\d{3}|37\\d{2}|4(?:2|7\\d{3}))\\d{4}" withPossibleNumberPattern:@"\\d{7,10}" withExample:@"3451234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:3(?:0[0347]|[13][0139]|2[035]|4[013568]|6[0459]|7[06]|8[15678]|9[0689])\\d{4}|6\\d{5,10})|345\\d{7}" withPossibleNumberPattern:@"\\d{7,12}" withExample:@"3451234567"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"348[57]\\d{7}" withPossibleNumberPattern:@"\\d{11}" withExample:@"3451234567"]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"001"; self.countryCode = [NSNumber numberWithInteger:882]; self.internationalPrefix = nil; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"3[23]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{4})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"16|342"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"34[57]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"348"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"1"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"16"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3,4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"16"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{4,5})(\\d{5})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataKP - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1\\d{9}|[28]\\d{7}" withPossibleNumberPattern:@"\\d{6,8}|\\d{10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2\\d{7}|85\\d{6}" withPossibleNumberPattern:@"\\d{6,8}" withExample:@"21234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"19[123]\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1921234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:[0-24-9]\\d{2}|3(?:[0-79]\\d|8[02-9]))\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"23821234"]; self.codeID = @"KP"; self.countryCode = [NSNumber numberWithInteger:850]; self.internationalPrefix = @"00|99"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"1"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"2"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"8"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMG - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[23]\\d{8}" withPossibleNumberPattern:@"\\d{7,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"20(?:2\\d{2}|4[47]\\d|5[3467]\\d|6[279]\\d|7(?:2[29]|[35]\\d)|8[268]\\d|9[245]\\d)\\d{4}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"202123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3[2-49]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"321234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"22\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"221234567"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MG"; self.countryCode = [NSNumber numberWithInteger:261]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([23]\\d)(\\d{2})(\\d{3})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataNC - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-57-9]\\d{5}" withPossibleNumberPattern:@"\\d{6}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2[03-9]|3[0-5]|4[1-7]|88)\\d{4}" withPossibleNumberPattern:@"\\d{6}" withExample:@"201234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:5[0-4]|[79]\\d|8[0-79])\\d{4}" withPossibleNumberPattern:@"\\d{6}" withExample:@"751234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"36\\d{4}" withPossibleNumberPattern:@"\\d{6}" withExample:@"366711"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"NC"; self.countryCode = [NSNumber numberWithInteger:687]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2-46-9]|5[0-4]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1.$2.$3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMH - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-6]\\d{6}" withPossibleNumberPattern:@"\\d{7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:247|528|625)\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"2471234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:235|329|45[56]|545)\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"2351234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"635\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"6351234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MH"; self.countryCode = [NSNumber numberWithInteger:692]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadata883 - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"51\\d{7}(?:\\d{3})?" withPossibleNumberPattern:@"\\d{9}(?:\\d{3})?" withExample:@"510012345"]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:@"510012345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:@"510012345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"51(?:00\\d{5}(?:\\d{3})?|[13]0\\d{8})" withPossibleNumberPattern:@"\\d{9}(?:\\d{3})?" withExample:@"510012345"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"001"; self.countryCode = [NSNumber numberWithInteger:883]; self.internationalPrefix = nil; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = YES; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"510"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"510"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"51[13]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataKR - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"007\\d{9,11}|[1-7]\\d{3,9}|8\\d{8}" withPossibleNumberPattern:@"\\d{4,14}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2|3[1-3]|[46][1-4]|5[1-5])(?:1\\d{2,3}|[1-9]\\d{6,7})" withPossibleNumberPattern:@"\\d{4,10}" withExample:@"22123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1[0-26-9]\\d{7,8}" withPossibleNumberPattern:@"\\d{9,10}" withExample:@"1000000000"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:00798\\d{0,2}|80)\\d{7}" withPossibleNumberPattern:@"\\d{9,14}" withExample:@"801234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"60[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"602345678"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"50\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5012345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"70\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7012345678"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"15\\d{7,8}" withPossibleNumberPattern:@"\\d{9,10}" withExample:@"1523456789"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:5(?:44|66|77|88|99)|6(?:00|44|6[16]|70|88)|8(?:00|33|55|77|99))\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"15441234"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"00798\\d{7,9}" withPossibleNumberPattern:@"\\d{12,14}" withExample:@"007981234567"]; self.codeID = @"KR"; self.countryCode = [NSNumber numberWithInteger:82]; self.internationalPrefix = @"00(?:[124-68]|3\\d{2}|7(?:[0-8]\\d|9[0-79]))"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0(8[1-46-8]|85\\d{2})?"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"00798"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{5})(\\d{3,4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"00798"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{5})(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"1(?:0|1[19]|[69]9|5[458])|[57]0"]; [numberFormats2_patternArray addObject:@"1(?:0|1[19]|[69]9|5(?:44|59|8))|[57]0"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{4})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"1(?:[01]|5[1-4]|6[2-8]|[7-9])|[68]0|[3-6][1-9][1-9]"]; [numberFormats3_patternArray addObject:@"1(?:[01]|5(?:[1-3]|4[56])|6[2-8]|[7-9])|[68]0|[3-6][1-9][1-9]"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3,4})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"131"]; [numberFormats4_patternArray addObject:@"1312"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d)(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"131"]; [numberFormats5_patternArray addObject:@"131[13-9]"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"13[2-9]"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"30"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1-$2-$3-$4" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [numberFormats_FormatArray addObject:numberFormats7]; NSMutableArray *numberFormats8_patternArray = [[NSMutableArray alloc] init]; [numberFormats8_patternArray addObject:@"2[1-9]"]; NBNumberFormat *numberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{3,4})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats8_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [numberFormats_FormatArray addObject:numberFormats8]; NSMutableArray *numberFormats9_patternArray = [[NSMutableArray alloc] init]; [numberFormats9_patternArray addObject:@"21[0-46-9]"]; NBNumberFormat *numberFormats9 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{3,4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats9_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [numberFormats_FormatArray addObject:numberFormats9]; NSMutableArray *numberFormats10_patternArray = [[NSMutableArray alloc] init]; [numberFormats10_patternArray addObject:@"[3-6][1-9]1"]; [numberFormats10_patternArray addObject:@"[3-6][1-9]1(?:[0-46-9])"]; NBNumberFormat *numberFormats10 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3,4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats10_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [numberFormats_FormatArray addObject:numberFormats10]; NSMutableArray *numberFormats11_patternArray = [[NSMutableArray alloc] init]; [numberFormats11_patternArray addObject:@"1(?:5[46-9]|6[04678]|8[03579])"]; [numberFormats11_patternArray addObject:@"1(?:5(?:44|66|77|88|99)|6(?:00|44|6[16]|70|88)|8(?:00|33|55|77|99))"]; NBNumberFormat *numberFormats11 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats11_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [numberFormats_FormatArray addObject:numberFormats11]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *intlNumberFormats0_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats0_patternArray addObject:@"1(?:0|1[19]|[69]9|5[458])|[57]0"]; [intlNumberFormats0_patternArray addObject:@"1(?:0|1[19]|[69]9|5(?:44|59|8))|[57]0"]; NBNumberFormat *intlNumberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{4})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:intlNumberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats0]; NSMutableArray *intlNumberFormats1_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats1_patternArray addObject:@"1(?:[01]|5[1-4]|6[2-8]|[7-9])|[68]0|[3-6][1-9][1-9]"]; [intlNumberFormats1_patternArray addObject:@"1(?:[01]|5(?:[1-3]|4[56])|6[2-8]|[7-9])|[68]0|[3-6][1-9][1-9]"]; NBNumberFormat *intlNumberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3,4})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:intlNumberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats1]; NSMutableArray *intlNumberFormats2_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats2_patternArray addObject:@"131"]; [intlNumberFormats2_patternArray addObject:@"1312"]; NBNumberFormat *intlNumberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d)(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:intlNumberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats2]; NSMutableArray *intlNumberFormats3_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats3_patternArray addObject:@"131"]; [intlNumberFormats3_patternArray addObject:@"131[13-9]"]; NBNumberFormat *intlNumberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:intlNumberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats3]; NSMutableArray *intlNumberFormats4_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats4_patternArray addObject:@"13[2-9]"]; NBNumberFormat *intlNumberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:intlNumberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats4]; NSMutableArray *intlNumberFormats5_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats5_patternArray addObject:@"30"]; NBNumberFormat *intlNumberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1-$2-$3-$4" withLeadingDigitsPatterns:intlNumberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats5]; NSMutableArray *intlNumberFormats6_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats6_patternArray addObject:@"2[1-9]"]; NBNumberFormat *intlNumberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{3,4})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:intlNumberFormats6_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats6]; NSMutableArray *intlNumberFormats7_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats7_patternArray addObject:@"21[0-46-9]"]; NBNumberFormat *intlNumberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{3,4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:intlNumberFormats7_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats7]; NSMutableArray *intlNumberFormats8_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats8_patternArray addObject:@"[3-6][1-9]1"]; [intlNumberFormats8_patternArray addObject:@"[3-6][1-9]1(?:[0-46-9])"]; NBNumberFormat *intlNumberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3,4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:intlNumberFormats8_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats8]; NSMutableArray *intlNumberFormats9_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats9_patternArray addObject:@"1(?:5[46-9]|6[04678]|8[03579])"]; [intlNumberFormats9_patternArray addObject:@"1(?:5(?:44|66|77|88|99)|6(?:00|44|6[16]|70|88)|8(?:00|33|55|77|99))"]; NBNumberFormat *intlNumberFormats9 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:intlNumberFormats9_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC-$1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats9]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataNE - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[0289]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:0(?:20|3[1-7]|4[134]|5[14]|6[14578]|7[1-578])|1(?:4[145]|5[14]|6[14-68]|7[169]|88))\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"20201234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:8[089]|9\\d)\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"93123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"08\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"08123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"09\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"09123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"NE"; self.countryCode = [NSNumber numberWithInteger:227]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[289]|09"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"08"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(08)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataNF - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[13]\\d{5}" withPossibleNumberPattern:@"\\d{5,6}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1(?:06|17|28|39)|3[012]\\d)\\d{3}" withPossibleNumberPattern:@"\\d{5,6}" withExample:@"106609"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3[58]\\d{4}" withPossibleNumberPattern:@"\\d{5,6}" withExample:@"381234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"NF"; self.countryCode = [NSNumber numberWithInteger:672]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"1"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"3"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMK - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-578]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:[23]\\d|5[124578]|6[01])|3(?:1[3-6]|[23][2-6]|4[2356])|4(?:[23][2-6]|4[3-6]|5[256]|6[25-8]|7[24-6]|8[4-6]))\\d{5}" withPossibleNumberPattern:@"\\d{6,8}" withExample:@"22212345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7(?:[0-25-8]\\d{2}|32\\d|421)\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"72345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5[02-9]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"50012345"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:0[1-9]|[1-9]\\d)\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MK"; self.countryCode = [NSNumber numberWithInteger:389]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"2"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(2)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[347]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([347]\\d)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[58]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"([58]\\d{2})(\\d)(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataNG - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-6]\\d{5,8}|9\\d{5,9}|[78]\\d{5,13}" withPossibleNumberPattern:@"\\d{5,14}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[12]\\d{6,7}|9(?:0[3-9]|[1-9]\\d)\\d{5}|(?:3\\d|4[023568]|5[02368]|6[02-469]|7[4-69]|8[2-9])\\d{6}|(?:4[47]|5[14579]|6[1578]|7[0-357])\\d{5,6}|(?:78|41)\\d{5}" withPossibleNumberPattern:@"\\d{5,9}" withExample:@"12345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1(?:7[34]\\d|8(?:04|[124579]\\d|8[0-3])|95\\d)|287[0-7]|3(?:18[1-8]|88[0-7]|9(?:8[5-9]|6[1-5]))|4(?:28[0-2]|6(?:7[1-9]|8[02-47])|88[0-2])|5(?:2(?:7[7-9]|8\\d)|38[1-79]|48[0-7]|68[4-7])|6(?:2(?:7[7-9]|8\\d)|4(?:3[7-9]|[68][129]|7[04-69]|9[1-8])|58[0-2]|98[7-9])|7(?:38[0-7]|69[1-8]|78[2-4])|8(?:28[3-9]|38[0-2]|4(?:2[12]|3[147-9]|5[346]|7[4-9]|8[014-689]|90)|58[1-8]|78[2-9]|88[5-7])|98[07]\\d)\\d{4}|(?:70[1-689]\\d|8(?:0(?:1[01]|[2-9]\\d)|1(?:[0-8]\\d|9[01]))|90[23589]\\d)\\d{6}" withPossibleNumberPattern:@"\\d{8,10}" withExample:@"8021234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{7,11}" withPossibleNumberPattern:@"\\d{10,14}" withExample:@"80017591759"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"700\\d{7,11}" withPossibleNumberPattern:@"\\d{10,14}" withExample:@"7001234567"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"NG"; self.countryCode = [NSNumber numberWithInteger:234]; self.internationalPrefix = @"009"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"70|8[01]|90[23589]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[12]|9(?:0[3-9]|[1-9])"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[3-6]|7(?:[1-79]|0[1-9])|8[2-9]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{2,3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"[78]00"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"([78]00)(\\d{4})(\\d{4,5})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"[78]00"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"([78]00)(\\d{5})(\\d{5,6})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"78"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(78)(\\d{2})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataML - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[246-9]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:0(?:2\\d|7[0-8])|1(?:2[5-7]|[3-689]\\d))|44[1239]\\d)\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"20212345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:079|17\\d)|[679]\\d{3}|8[239]\\d{2})\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"65012345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80012345"]; self.codeID = @"ML"; self.countryCode = [NSNumber numberWithInteger:223]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[246-9]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"67|74"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})" withFormat:@"$1" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *intlNumberFormats0_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats0_patternArray addObject:@"[246-9]"]; NBNumberFormat *intlNumberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:intlNumberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats0]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMM - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[14578]\\d{5,7}|[26]\\d{5,8}|9(?:2\\d{0,2}|[58]|3\\d|4\\d{1,2}|6\\d?|[79]\\d{0,2})\\d{6}" withPossibleNumberPattern:@"\\d{5,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:2\\d{1,2}|[3-5]\\d|6\\d?|[89][0-6]\\d)\\d{4}|2(?:2(?:000\\d{3}|\\d{4})|3\\d{4}|4(?:0\\d{5}|\\d{4})|5(?:1\\d{3,6}|[02-9]\\d{3,5})|[6-9]\\d{4})|4(?:2[245-8]|[346][2-6]|5[3-5])\\d{4}|5(?:2(?:20?|[3-8])|3[2-68]|4(?:21?|[4-8])|5[23]|6[2-4]|7[2-8]|8[24-7]|9[2-7])\\d{4}|6(?:0[23]|1[2356]|[24][2-6]|3[24-6]|5[2-4]|6[2-8]|7(?:[2367]|4\\d|5\\d?|8[145]\\d)|8[245]|9[24])\\d{4}|7(?:[04][24-8]|[15][2-7]|22|3[2-4])\\d{4}|8(?:1(?:2\\d{1,2}|[3-689]\\d)|2(?:2\\d|3(?:\\d|20)|[4-8]\\d)|3[24]\\d|4[24-7]\\d|5[245]\\d|6[23]\\d)\\d{3}" withPossibleNumberPattern:@"\\d{5,9}" withExample:@"1234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"17[01]\\d{4}|9(?:2(?:[0-4]|5\\d{2}|6[0-5]\\d)|3[0-36]\\d|4(?:0[0-4]\\d|[1379]\\d|2\\d{2}|4[0-589]\\d|5\\d{2}|88)|5[0-6]|61?\\d|7(?:3\\d|[789]\\d{2})|8\\d|9(?:1\\d|[67]\\d{2}|[089]))\\d{5}" withPossibleNumberPattern:@"\\d{7,10}" withExample:@"92123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1333\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"13331234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MM"; self.countryCode = [NSNumber numberWithInteger:95]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"1|2[245]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"251"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(2)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"16|2"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{2})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"67|81"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"[4-8]"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"9(?:2[0-4]|[35-9]|4[137-9])"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(9)(\\d{3})(\\d{4,6})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"9(?:3[0-36]|4[0-57-9])"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(9)([34]\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"92[56]"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(9)(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats7]; NSMutableArray *numberFormats8_patternArray = [[NSMutableArray alloc] init]; [numberFormats8_patternArray addObject:@"93"]; NBNumberFormat *numberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(9)(\\d{3})(\\d{3})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats8_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats8]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataLR - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2\\d{7,8}|[37-9]\\d{8}|4\\d{6}|5\\d{6,8}" withPossibleNumberPattern:@"\\d{7,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:@"21234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:330\\d|4[67]|5\\d|77\\d{2}|88\\d{2}|994\\d)\\d{5}|(?:20\\d{3}|33(?:0\\d{2}|2(?:02|5\\d))|555\\d{2}|77[0567]\\d{2}|88[068]\\d{2}|994\\d{2})\\d{4}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"770123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90[03]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"900123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"332(?:0[02]|5\\d)\\d{4}" withPossibleNumberPattern:@"\\d{9}" withExample:@"332001234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"LR"; self.countryCode = [NSNumber numberWithInteger:231]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"2"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(2\\d)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[2579]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[4-6]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"([4-6])(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"[38]"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataNI - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[12578]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:@"21234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:5[0-7]\\d{5}|[78]\\d{6})|7[5-8]\\d{6}|8\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:@"81234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1800\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"18001234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"NI"; self.countryCode = [NSNumber numberWithInteger:505]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataKW - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[12569]\\d{6,7}" withPossibleNumberPattern:@"\\d{7,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:18\\d|2(?:[23]\\d{2}|4(?:[1-35-9]\\d|44)|5(?:0[034]|[2-46]\\d|5[1-3]|7[1-7])))\\d{4}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"22345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:5(?:[05]\\d{2}|1[0-7]\\d|2(?:22|5[25])|66\\d)|6(?:0[034679]\\d|222|5[015-9]\\d|6\\d{2}|7[067]\\d|9[0369]\\d)|9(?:0[09]\\d|22\\d|4[01479]\\d|55\\d|6[0679]\\d|[79]\\d{2}|8[057-9]\\d))\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"50012345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"KW"; self.countryCode = [NSNumber numberWithInteger:965]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[16]|2(?:[0-35-9]|4[0-35-9])|9[024-9]|52[25]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{3,4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"244|5(?:[015]|66)"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMN - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[12]\\d{7,9}|[57-9]\\d{7}" withPossibleNumberPattern:@"\\d{6,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[12](?:1\\d|2(?:[1-3]\\d?|7\\d)|3[2-8]\\d{1,2}|4[2-68]\\d{1,2}|5[1-4689]\\d{1,2})\\d{5}|5[0568]\\d{6}" withPossibleNumberPattern:@"\\d{6,10}" withExample:@"50123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:8(?:[05689]\\d|3[01])|9[013-9]\\d)\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"88123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7[05-8]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"75123456"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MN"; self.countryCode = [NSNumber numberWithInteger:976]; self.internationalPrefix = @"001"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[12]1"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([12]\\d)(\\d{2})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[12]2[1-3]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([12]2\\d)(\\d{5,6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[12](?:27|[3-5])"]; [numberFormats2_patternArray addObject:@"[12](?:27|[3-5]\\d)2"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"([12]\\d{3})(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"[57-9]"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"[12](?:27|[3-5])"]; [numberFormats4_patternArray addObject:@"[12](?:27|[3-5]\\d)[4-9]"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"([12]\\d{4})(\\d{4,5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataLS - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2568]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:@"22123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[56]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:@"50123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800[256]\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80021234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"LS"; self.countryCode = [NSNumber numberWithInteger:266]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataPA - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-9]\\d{6,7}" withPossibleNumberPattern:@"\\d{7,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1(?:0[0-8]|1[49]|2[37]|3[0137]|4[147]|5[05]|6[58]|7[0167]|8[58]|9[139])|2(?:[0235679]\\d|1[0-7]|4[04-9]|8[028])|3(?:[09]\\d|1[014-7]|2[0-3]|3[03]|4[03-57]|55|6[068]|7[06-8]|8[06-9])|4(?:3[013-69]|4\\d|7[0-589])|5(?:[01]\\d|2[0-7]|[56]0|79)|7(?:0[09]|2[0-267]|3[06]|[469]0|5[06-9]|7[0-24-79]|8[7-9])|8(?:09|[34]\\d|5[0134]|8[02])|9(?:0[6-9]|1[016-8]|2[036-8]|3[3679]|40|5[0489]|6[06-9]|7[046-9]|8[36-8]|9[1-9]))\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"2001234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1[16]1|21[89]|8(?:1[01]|7[23]))\\d{4}|6(?:[024-9]\\d|1[0-5]|3[0-24-9])\\d{5}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"60012345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[09]\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"8001234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:779|8(?:55|60|7[78])|9(?:00|81))\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"8601234"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"PA"; self.countryCode = [NSNumber numberWithInteger:507]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[1-57-9]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"6"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMO - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[268]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:28[2-57-9]|8[2-57-9]\\d)\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"28212345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6(?:[2356]\\d|8[158])\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"66123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MO"; self.countryCode = [NSNumber numberWithInteger:853]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([268]\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataLT - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[3-9]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:3[1478]|4[124-6]|52)\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"31234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:@"61234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9(?:0[0239]|10)\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"90012345"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"808\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80812345"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"700\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"70012345"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"70[67]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"70712345"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"LT"; self.countryCode = [NSNumber numberWithInteger:370]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"8"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"[08]"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"37|4(?:1|5[45]|6[2-4])"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([34]\\d)(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"(8-$1)" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"3[148]|4(?:[24]|6[09])|528|6"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([3-6]\\d{2})(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"(8-$1)" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[7-9]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"([7-9]\\d{2})(\\d{2})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"8 $1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"52[0-79]"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(5)(2\\d{2})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"(8-$1)" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataKY - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[3589]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"345(?:2(?:22|44)|444|6(?:23|38|40)|7(?:4[35-79]|6[6-9]|77)|8(?:00|1[45]|25|[48]8)|9(?:14|4[035-9]))\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"3452221234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"345(?:32[1-9]|5(?:1[67]|2[5-7]|4[6-8]|76)|9(?:1[67]|2[2-9]|3[689]))\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"3453231234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002345678"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}|345976\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002345678"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"345849\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"3458491234"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"KY"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"345"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMP - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[5689]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"670(?:2(?:3[3-7]|56|8[5-8])|32[1238]|4(?:33|8[348])|5(?:32|55|88)|6(?:64|70|82)|78[589]|8[3-9]8|989)\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"6702345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"670(?:2(?:3[3-7]|56|8[5-8])|32[1238]|4(?:33|8[348])|5(?:32|55|88)|6(?:64|70|82)|78[589]|8[3-9]8|989)\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"6702345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MP"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = YES; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"670"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataLU - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[24-9]\\d{3,10}|3(?:[0-46-9]\\d{2,9}|5[013-9]\\d{1,8})" withPossibleNumberPattern:@"\\d{4,11}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2[2-9]\\d{2,9}|(?:[3457]\\d{2}|8(?:0[2-9]|[13-9]\\d)|9(?:0[89]|[2-579]\\d))\\d{1,8})" withPossibleNumberPattern:@"\\d{4,11}" withExample:@"27123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6[2679][18]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"628123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90[015]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"90012345"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"801\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80112345"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"70\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"70123456"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"20(?:1\\d{5}|[2-689]\\d{1,7})" withPossibleNumberPattern:@"\\d{4,10}" withExample:@"20201234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"LU"; self.countryCode = [NSNumber numberWithInteger:352]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"(15(?:0[06]|1[12]|35|4[04]|55|6[26]|77|88|99)\\d)"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2-5]|7[1-9]|[89](?:[1-9]|0[2-9])"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[2-5]|7[1-9]|[89](?:[1-9]|0[2-9])"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"20"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"2(?:[0367]|4[3-8])"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{1,2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"20"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{3})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"2(?:[0367]|4[3-8])"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})(\\d{1,2})" withFormat:@"$1 $2 $3 $4 $5" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"2(?:[12589]|4[12])|[3-5]|7[1-9]|8(?:[1-9]|0[2-9])|9(?:[1-9]|0[2-46-9])"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{1,4})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"70|80[01]|90[015]"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats7]; NSMutableArray *numberFormats8_patternArray = [[NSMutableArray alloc] init]; [numberFormats8_patternArray addObject:@"6"]; NBNumberFormat *numberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats8_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats8]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataNL - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1\\d{4,8}|[2-7]\\d{8}|[89]\\d{6,9}" withPossibleNumberPattern:@"\\d{5,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1[0135-8]|2[02-69]|3[0-68]|4[0135-9]|[57]\\d|8[478])\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"101234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6[1-58]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"612345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{4,7}" withPossibleNumberPattern:@"\\d{7,10}" withExample:@"8001234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90[069]\\d{4,7}" withPossibleNumberPattern:@"\\d{7,10}" withExample:@"9061234"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"85\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"851234567"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"66\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"662345678"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"140(?:1(?:[035]|[16-8]\\d)|2(?:[0346]|[259]\\d)|3(?:[03568]|[124]\\d)|4(?:[0356]|[17-9]\\d)|5(?:[0358]|[124679]\\d)|7\\d|8[458])" withPossibleNumberPattern:@"\\d{5,6}" withExample:@"14020"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"14\\d{3,4}" withPossibleNumberPattern:@"\\d{5,6}" withExample:nil]; self.codeID = @"NL"; self.countryCode = [NSNumber numberWithInteger:31]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"1[035]|2[0346]|3[03568]|4[0356]|5[0358]|7|8[4578]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([1-578]\\d)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"1[16-8]|2[259]|3[124]|4[17-9]|5[124679]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([1-5]\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"6[0-57-9]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(6)(\\d{8})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"66"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(66)(\\d{7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"14"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(14)(\\d{3,4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"80|9"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"([89]0\\d)(\\d{4,7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataKZ - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:33\\d|7\\d{2}|80[09])\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"33622\\d{5}|7(?:1(?:0(?:[23]\\d|4[023]|59|63)|1(?:[23]\\d|4[0-79]|59)|2(?:[23]\\d|59)|3(?:2\\d|3[1-79]|4[0-35-9]|59)|4(?:2\\d|3[013-79]|4[0-8]|5[1-79])|5(?:2\\d|3[1-8]|4[1-7]|59)|6(?:[234]\\d|5[19]|61)|72\\d|8(?:[27]\\d|3[1-46-9]|4[0-5]))|2(?:1(?:[23]\\d|4[46-9]|5[3469])|2(?:2\\d|3[0679]|46|5[12679])|3(?:[234]\\d|5[139])|4(?:2\\d|3[1235-9]|59)|5(?:[23]\\d|4[01246-8]|59|61)|6(?:2\\d|3[1-9]|4[0-4]|59)|7(?:[237]\\d|40|5[279])|8(?:[23]\\d|4[0-3]|59)|9(?:2\\d|3[124578]|59)))\\d{5}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7123456789"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7(?:0[012578]|47|6[02-4]|7[15-8]|85)\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7710009998"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"809\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8091234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"751\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7511234567"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"751\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7511234567"]; self.codeID = @"KZ"; self.countryCode = [NSNumber numberWithInteger:7]; self.internationalPrefix = @"810"; self.preferredInternationalPrefix = @"8~10"; self.nationalPrefix = @"8"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"8"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMQ - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[56]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"596(?:0[2-5]|[12]0|3[05-9]|4[024-8]|[5-7]\\d|89|9[4-8])\\d{4}" withPossibleNumberPattern:@"\\d{9}" withExample:@"596301234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"696(?:[0-479]\\d|5[01]|8[0-689])\\d{4}" withPossibleNumberPattern:@"\\d{9}" withExample:@"696201234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MQ"; self.countryCode = [NSNumber numberWithInteger:596]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadata888 - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"\\d{11}" withPossibleNumberPattern:@"\\d{11}" withExample:@"12345678901"]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:@"12345678901"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:@"12345678901"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"\\d{11}" withPossibleNumberPattern:@"\\d{11}" withExample:@"12345678901"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"001"; self.countryCode = [NSNumber numberWithInteger:888]; self.internationalPrefix = nil; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = YES; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{5})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataLV - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2689]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:@"63123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:@"21234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"90123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"81\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"81123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"LV"; self.countryCode = [NSNumber numberWithInteger:371]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([2689]\\d)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMR - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-48]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"25[08]\\d{5}|35\\d{6}|45[1-7]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"35123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[234][0-46-9]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"22123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MR"; self.countryCode = [NSNumber numberWithInteger:222]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([2-48]\\d)(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataPE - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[14-9]\\d{7,8}" withPossibleNumberPattern:@"\\d{6,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1\\d|4[1-4]|5[1-46]|6[1-7]|7[2-46]|8[2-4])\\d{6}" withPossibleNumberPattern:@"\\d{6,8}" withExample:@"11234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:@"912345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"805\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80512345"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"801\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80112345"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[24]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80212345"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"PE"; self.countryCode = [NSNumber numberWithInteger:51]; self.internationalPrefix = @"19(?:1[124]|77|90)00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = @" Anexo "; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"1"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(1)(\\d{7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[4-7]|8[2-4]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([4-8]\\d)(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"80"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"9"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(9\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMS - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[5689]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"664491\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"6644912345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"66449[2-6]\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"6644923456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MS"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"664"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataQA - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-8]\\d{6,7}" withPossibleNumberPattern:@"\\d{7,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"4[04]\\d{6}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"44123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[3567]\\d{7}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"33123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{4}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"8001234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:[12]\\d|61)\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"2123456"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"QA"; self.countryCode = [NSNumber numberWithInteger:974]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[28]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([28]\\d{2})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[3-7]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([3-7]\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataNO - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"0\\d{4}|[2-9]\\d{7}" withPossibleNumberPattern:@"\\d{5}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2[1-4]|3[1-3578]|5[1-35-7]|6[1-4679]|7[0-8])\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"21234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:4[015-8]|5[89]|87|9\\d)\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"40612345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[01]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"82[09]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"82012345"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"810(?:0[0-6]|[2-8]\\d)\\d{3}" withPossibleNumberPattern:@"\\d{8}" withExample:@"81021234"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"880\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"88012345"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"85[0-5]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"85012345"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"0\\d{4}|81(?:0(?:0[7-9]|1\\d)|5\\d{2})\\d{3}" withPossibleNumberPattern:@"\\d{5}(?:\\d{3})?" withExample:@"01234"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"81[23]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"81212345"]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"NO"; self.countryCode = [NSNumber numberWithInteger:47]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[489]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([489]\\d{2})(\\d{2})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[235-7]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([235-7]\\d)(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = YES; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataPF - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"4\\d{5,7}|8\\d{7}" withPossibleNumberPattern:@"\\d{6}(?:\\d{2})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"4(?:[09][45689]\\d|4)\\d{4}" withPossibleNumberPattern:@"\\d{6}(?:\\d{2})?" withExample:@"40412345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8[79]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"87123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"44\\d{4}" withPossibleNumberPattern:@"\\d{6}" withExample:@"441234"]; self.codeID = @"PF"; self.countryCode = [NSNumber numberWithInteger:689]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"4[09]|8[79]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"44"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMT - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2357-9]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:0(?:1[0-6]|3[1-4]|[69]\\d)|[1-357]\\d{2})\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"21001234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:7(?:210|[79]\\d{2})|9(?:2(?:1[01]|31)|696|8(?:1[1-3]|89|97)|9\\d{2}))\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"96961234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800[3467]\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80071234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:0(?:0(?:37|43)|6\\d{2}|70\\d|9[0168])|[12]\\d0[1-5])\\d{3}" withPossibleNumberPattern:@"\\d{8}" withExample:@"50037123"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3550\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"35501234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7117\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"71171234"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"501\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"50112345"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MT"; self.countryCode = [NSNumber numberWithInteger:356]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataLY - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[25679]\\d{8}" withPossibleNumberPattern:@"\\d{7,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2[1345]|5[1347]|6[123479]|71)\\d{7}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"212345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9[1-6]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"912345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"LY"; self.countryCode = [NSNumber numberWithInteger:218]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([25679]\\d)(\\d{7})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataNP - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-8]\\d{7}|9(?:[1-69]\\d{6,8}|7[2-6]\\d{5,7}|8\\d{8})" withPossibleNumberPattern:@"\\d{6,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1[0-6]\\d|2[13-79][2-6]|3[135-8][2-6]|4[146-9][2-6]|5[135-7][2-6]|6[13-9][2-6]|7[15-9][2-6]|8[1-46-9][2-6]|9[1-79][2-6])\\d{5}" withPossibleNumberPattern:@"\\d{6,8}" withExample:@"14567890"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9(?:6[013]|7[245]|8[0-24-6])\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9841234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"NP"; self.countryCode = [NSNumber numberWithInteger:977]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"1[2-6]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(1)(\\d{7})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"1[01]|[2-8]|9(?:[1-69]|7[15-9])"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{6})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"9(?:6[013]|7[245]|8)"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(9\\d{2})(\\d{7})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataPG - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-9]\\d{6,7}" withPossibleNumberPattern:@"\\d{7,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:3[0-2]\\d|4[25]\\d|5[34]\\d|64[1-9]|77(?:[0-24]\\d|30)|85[02-46-9]|9[78]\\d)\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"3123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:20150|68\\d{2}|7(?:[0-689]\\d|75)\\d{2})\\d{3}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"6812345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"180\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"1801234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"275\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"2751234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"PG"; self.countryCode = [NSNumber numberWithInteger:675]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[13-689]|27"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"20|7"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMU - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-9]\\d{6,7}" withPossibleNumberPattern:@"\\d{7,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:[03478]\\d|1[0-7]|6[1-69])|4(?:[013568]\\d|2[4-7])|5(?:44\\d|471)|6\\d{2}|8(?:14|3[129]))\\d{4}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"2012345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:2[59]\\d|4(?:2[1-389]|4\\d|7[1-9]|9\\d)|7\\d{2}|8(?:[0-2568]\\d|7[15-8])|9[0-8]\\d)\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"52512345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[012]\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"8001234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"30\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"3012345"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3(?:20|9\\d)\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"3201234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MU"; self.countryCode = [NSNumber numberWithInteger:230]; self.internationalPrefix = @"0(?:0|[2-7]0|33)"; self.preferredInternationalPrefix = @"020"; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2-46-9]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([2-46-9]\\d{2})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"5"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(5\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataPH - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2\\d{5,7}|[3-9]\\d{7,9}|1800\\d{7,9}" withPossibleNumberPattern:@"\\d{5,13}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2\\d{5}(?:\\d{2})?|(?:3[2-68]|4[2-9]|5[2-6]|6[2-58]|7[24578]|8[2-8])\\d{7}|88(?:22\\d{6}|42\\d{4})" withPossibleNumberPattern:@"\\d{5,10}" withExample:@"21234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:81[37]|9(?:0[5-9]|1[024-9]|2[0-35-9]|3[02-9]|4[236-9]|50|7[34-79]|89|9[4-9]))\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9051234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1800\\d{7,9}" withPossibleNumberPattern:@"\\d{11,13}" withExample:@"180012345678"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"PH"; self.countryCode = [NSNumber numberWithInteger:63]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"2"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(2)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"2"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(2)(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"3(?:23|39|46)|4(?:2[3-6]|[35]9|4[26]|76)|5(?:22|44)|642|8(?:62|8[245])"]; [numberFormats2_patternArray addObject:@"3(?:230|397|461)|4(?:2(?:35|[46]4|51)|396|4(?:22|63)|59[347]|76[15])|5(?:221|446)|642[23]|8(?:622|8(?:[24]2|5[13]))"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4,6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"346|4(?:27|9[35])|883"]; [numberFormats3_patternArray addObject:@"3469|4(?:279|9(?:30|56))|8834"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{5})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"[3-8]"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"([3-8]\\d)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"81|9"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"1"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(1800)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"1"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(1800)(\\d{1,2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats7]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMV - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[3467]\\d{6}|9(?:00\\d{7}|\\d{6})" withPossibleNumberPattern:@"\\d{7,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:3(?:0[01]|3[0-59])|6(?:[567][02468]|8[024689]|90))\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"6701234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:46[46]|7[3-9]\\d|9[15-9]\\d)\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"7712345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9001234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"781\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"7812345"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MV"; self.countryCode = [NSNumber numberWithInteger:960]; self.internationalPrefix = @"0(?:0|19)"; self.preferredInternationalPrefix = @"00"; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[3467]|9(?:[1-9]|0[1-9])"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"900"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataOM - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:5|[279]\\d)\\d{6}|800\\d{5,6}" withPossibleNumberPattern:@"\\d{7,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2[2-6]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"23123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7[19]\\d{6}|9(?:0[1-9]|[1-9]\\d)\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"92123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8007\\d{4,5}|500\\d{4}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"80071234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"90012345"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"OM"; self.countryCode = [NSNumber numberWithInteger:968]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"2"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(2\\d)(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[79]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([79]\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[58]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"([58]00)(\\d{4,6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataNR - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[458]\\d{6}" withPossibleNumberPattern:@"\\d{7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:444|888)\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"4441234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"55[5-9]\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"5551234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"NR"; self.countryCode = [NSNumber numberWithInteger:674]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMW - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1(?:\\d{2})?|[2789]\\d{2})\\d{6}" withPossibleNumberPattern:@"\\d{7,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1[2-9]|21\\d{2})\\d{5}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"1234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:111|77\\d|88\\d|99\\d)\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"991234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MW"; self.countryCode = [NSNumber numberWithInteger:265]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"1"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"2"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(2\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[1789]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMX - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-9]\\d{9,10}" withPossibleNumberPattern:@"\\d{7,11}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:33|55|81)\\d{8}|(?:2(?:0[01]|2[2-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-6][1-9]|[37][1-8]|8[1-35-9]|9[2-689])|5(?:88|9[1-79])|6(?:1[2-68]|[234][1-9]|5[1-3689]|6[12457-9]|7[1-7]|8[67]|9[4-8])|7(?:[13467][1-9]|2[1-8]|5[13-9]|8[1-69]|9[17])|8(?:2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))\\d{7}" withPossibleNumberPattern:@"\\d{7,10}" withExample:@"2221234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:(?:33|55|81)\\d{8}|(?:2(?:2[2-9]|3[1-35-8]|4[13-9]|7[1-689]|8[1-578]|9[467])|3(?:1[1-79]|[2458][1-9]|7[1-8]|9[1-5])|4(?:1[1-57-9]|[24-6][1-9]|[37][1-8]|8[1-35-9]|9[2-689])|5(?:88|9[1-79])|6(?:1[2-68]|[2-4][1-9]|5[1-3689]|6[12457-9]|7[1-7]|8[67]|9[4-8])|7(?:[13467][1-9]|2[1-8]|5[13-9]|8[1-69]|9[17])|8(?:2[13-689]|3[1-6]|4[124-6]|6[1246-9]|7[1-378]|9[12479])|9(?:1[346-9]|2[1-4]|3[2-46-8]|5[1348]|[69][1-9]|7[12]|8[1-8]))\\d{7})" withPossibleNumberPattern:@"\\d{11}" withExample:@"12221234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|88)\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9001234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"300\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"3001234567"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"500\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5001234567"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MX"; self.countryCode = [NSNumber numberWithInteger:52]; self.internationalPrefix = @"0[09]"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"01"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0[12]|04[45](\\d{10})"; self.nationalPrefixTransformRule = @"1$1"; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"33|55|81"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([358]\\d)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"01 $1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[2467]|3[0-2457-9]|5[089]|8[02-9]|9[0-35-9]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"01 $1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"1(?:33|55|81)"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(1)([358]\\d)(\\d{4})(\\d{4})" withFormat:@"044 $2 $3 $4" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"1(?:[2467]|3[0-2457-9]|5[089]|8[2-9]|9[1-35-9])"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(1)(\\d{3})(\\d{3})(\\d{4})" withFormat:@"044 $2 $3 $4" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *intlNumberFormats0_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats0_patternArray addObject:@"33|55|81"]; NBNumberFormat *intlNumberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([358]\\d)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats0_patternArray withNationalPrefixFormattingRule:@"01 $1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats0]; NSMutableArray *intlNumberFormats1_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats1_patternArray addObject:@"[2467]|3[0-2457-9]|5[089]|8[02-9]|9[0-35-9]"]; NBNumberFormat *intlNumberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats1_patternArray withNationalPrefixFormattingRule:@"01 $1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats1]; NSMutableArray *intlNumberFormats2_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats2_patternArray addObject:@"1(?:33|55|81)"]; NBNumberFormat *intlNumberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(1)([358]\\d)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:intlNumberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats2]; NSMutableArray *intlNumberFormats3_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats3_patternArray addObject:@"1(?:[2467]|3[0-2457-9]|5[089]|8[2-9]|9[1-35-9])"]; NBNumberFormat *intlNumberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(1)(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:intlNumberFormats3_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats3]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataPK - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1\\d{8}|[2-8]\\d{5,11}|9(?:[013-9]\\d{4,9}|2\\d(?:111\\d{6}|\\d{3,7}))" withPossibleNumberPattern:@"\\d{6,12}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:21|42)[2-9]\\d{7}|(?:2[25]|4[0146-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]\\d{6}|(?:2(?:3[2358]|4[2-4]|9[2-8])|45[3479]|54[2-467]|60[468]|72[236]|8(?:2[2-689]|3[23578]|4[3478]|5[2356])|9(?:1|2[2-8]|3[27-9]|4[2-6]|6[3569]|9[25-8]))[2-9]\\d{5,6}|58[126]\\d{7}" withPossibleNumberPattern:@"\\d{6,10}" withExample:@"2123456789"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3(?:0\\d|1[0-6]|2[0-5]|3[0-7]|4[0-8]|55|64)\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"3012345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"90012345"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"122\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"122044444"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:[125]|3[2358]|4[2-4]|9[2-8])|4(?:[0-246-9]|5[3479])|5(?:[1-35-7]|4[2-467])|6(?:[1-8]|0[468])|7(?:[14]|2[236])|8(?:[16]|2[2-689]|3[23578]|4[3478]|5[2356])|9(?:1|22|3[27-9]|4[2-6]|6[3569]|9[2-7]))111\\d{6}" withPossibleNumberPattern:@"\\d{11,12}" withExample:@"21111825888"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"PK"; self.countryCode = [NSNumber numberWithInteger:92]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"(?:2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)1"]; [numberFormats0_patternArray addObject:@"(?:2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)11"]; [numberFormats0_patternArray addObject:@"(?:2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)111"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(111)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"2[349]|45|54|60|72|8[2-5]|9[2-9]"]; [numberFormats1_patternArray addObject:@"(?:2[349]|45|54|60|72|8[2-5]|9[2-9])\\d1"]; [numberFormats1_patternArray addObject:@"(?:2[349]|45|54|60|72|8[2-5]|9[2-9])\\d11"]; [numberFormats1_patternArray addObject:@"(?:2[349]|45|54|60|72|8[2-5]|9[2-9])\\d111"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(111)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"(?:2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{7,8})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"2[349]|45|54|60|72|8[2-5]|9[2-9]"]; [numberFormats3_patternArray addObject:@"(?:2[349]|45|54|60|72|8[2-5]|9[2-9])\\d[2-9]"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{6,7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"3"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(3\\d{2})(\\d{7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"58[12]|1"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"([15]\\d{3})(\\d{5,6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"586"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(586\\d{2})(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"[89]00"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"([89]00)(\\d{3})(\\d{2})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats7]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMY - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[13-9]\\d{7,9}" withPossibleNumberPattern:@"\\d{6,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:3[2-9]\\d|[4-9][2-9])\\d{6}" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"323456789"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:1[1-5]\\d{2}|[02-4679][2-9]\\d|59\\d{2}|8(?:1[23]|[2-9]\\d))\\d{5}" withPossibleNumberPattern:@"\\d{9,10}" withExample:@"123456789"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1[378]00\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1300123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1600\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1600123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"154\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1541234567"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MY"; self.countryCode = [NSNumber numberWithInteger:60]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[4-79]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([4-79])(\\d{3})(\\d{4})" withFormat:@"$1-$2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"3"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(3)(\\d{4})(\\d{4})" withFormat:@"$1-$2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"1[02-46-9][1-9]|8"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"([18]\\d)(\\d{3})(\\d{3,4})" withFormat:@"$1-$2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"1[36-8]0"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(1)([36-8]00)(\\d{2})(\\d{4})" withFormat:@"$1-$2-$3-$4" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"11"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(11)(\\d{4})(\\d{4})" withFormat:@"$1-$2 $3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"15"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(15[49])(\\d{3})(\\d{4})" withFormat:@"$1-$2 $3" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataNU - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-5]\\d{3}" withPossibleNumberPattern:@"\\d{4}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[34]\\d{3}" withPossibleNumberPattern:@"\\d{4}" withExample:@"4002"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[125]\\d{3}" withPossibleNumberPattern:@"\\d{4}" withExample:@"1234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"NU"; self.countryCode = [NSNumber numberWithInteger:683]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataPL - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[12]\\d{6,8}|[3-57-9]\\d{8}|6\\d{5,8}" withPossibleNumberPattern:@"\\d{6,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1[2-8]|2[2-69]|3[2-4]|4[1-468]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145])\\d{7}|[12]2\\d{5}" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"123456789"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:5[0137]|6[069]|7[2389]|88)\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"512345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"70\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"701234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"801\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"801234567"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"39\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"391234567"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"64\\d{4,7}" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"641234567"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"PL"; self.countryCode = [NSNumber numberWithInteger:48]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[14]|2[0-57-9]|3[2-4]|5[24-689]|6[1-3578]|7[14-7]|8[1-79]|9[145]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[12]2"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{1})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"26|39|5[0137]|6[0469]|7[02389]|8[08]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"64"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{2,3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"64"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataMZ - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[28]\\d{7,8}" withPossibleNumberPattern:@"\\d{8,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:[1346]\\d|5[0-2]|[78][12]|93)\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"21123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8[23467]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"821234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"MZ"; self.countryCode = [NSNumber numberWithInteger:258]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"2|8[2-7]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([28]\\d)(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"80"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(80\\d)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataPM - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[45]\\d{5}" withPossibleNumberPattern:@"\\d{6}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"41\\d{4}" withPossibleNumberPattern:@"\\d{6}" withExample:@"411234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"55\\d{4}" withPossibleNumberPattern:@"\\d{6}" withExample:@"551234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"PM"; self.countryCode = [NSNumber numberWithInteger:508]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([45]\\d)(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataRE - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[268]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"262\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"262161234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6(?:9[23]|47)\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"692123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"801234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"89[1-37-9]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"891123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:1[019]|2[0156]|84|90)\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"810123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"RE"; self.countryCode = [NSNumber numberWithInteger:262]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([268]\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = YES; self.leadingDigits = @"262|6[49]|8"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataSA - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1\\d{7,8}|(?:[2-467]|92)\\d{7}|5\\d{8}|8\\d{9}" withPossibleNumberPattern:@"\\d{7,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"11\\d{7}|1?(?:2[24-8]|3[35-8]|4[3-68]|6[2-5]|7[235-7])\\d{6}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"112345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:5(?:[013-689]\\d|7[0-26-8])|811\\d)\\d{6}" withPossibleNumberPattern:@"\\d{9,10}" withExample:@"512345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"92[05]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"920012345"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"SA"; self.countryCode = [NSNumber numberWithInteger:966]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[1-467]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([1-467])(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"1[1-467]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(1\\d)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"5"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(5\\d)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"92"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(92\\d{2})(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"80"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(800)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"81"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(811)(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataSB - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-9]\\d{4,6}" withPossibleNumberPattern:@"\\d{5,7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1[4-79]|[23]\\d|4[0-2]|5[03]|6[0-37])\\d{3}" withPossibleNumberPattern:@"\\d{5}" withExample:@"40123"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"48\\d{3}|7(?:30|[46-8]\\d|5[025-9]|9[0-5])\\d{4}|8[4-9]\\d{5}|9(?:1[2-9]|2[013-9]|3[0-2]|[46]\\d|5[0-46-9]|7[0-689]|8[0-79]|9[0-8])\\d{4}" withPossibleNumberPattern:@"\\d{5,7}" withExample:@"7421234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1[38]\\d{3}" withPossibleNumberPattern:@"\\d{5}" withExample:@"18123"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5[12]\\d{3}" withPossibleNumberPattern:@"\\d{5}" withExample:@"51123"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"SB"; self.countryCode = [NSNumber numberWithInteger:677]; self.internationalPrefix = @"0[01]"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[7-9]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataNZ - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6[235-9]\\d{6}|[2-57-9]\\d{7,10}" withPossibleNumberPattern:@"\\d{7,11}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:3[2-79]|[49][2-9]|6[235-9]|7[2-57-9])\\d{6}|24099\\d{3}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"32345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:[028]\\d{7,8}|1(?:[03]\\d{5,7}|[12457]\\d{5,6}|[689]\\d{5})|[79]\\d{7})" withPossibleNumberPattern:@"\\d{8,10}" withExample:@"211234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"508\\d{6,7}|80\\d{6,8}" withPossibleNumberPattern:@"\\d{8,10}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90\\d{7,9}" withPossibleNumberPattern:@"\\d{9,11}" withExample:@"900123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"70\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"701234567"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[28]6\\d{6,7}" withPossibleNumberPattern:@"\\d{8,9}" withExample:@"26123456"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"NZ"; self.countryCode = [NSNumber numberWithInteger:64]; self.internationalPrefix = @"0(?:0|161)"; self.preferredInternationalPrefix = @"00"; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[346]|7[2-57-9]|9[1-9]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([34679])(\\d{3})(\\d{4})" withFormat:@"$1-$2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"240"]; [numberFormats1_patternArray addObject:@"2409"]; [numberFormats1_patternArray addObject:@"24099"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(24099)(\\d{3})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"21"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"2(?:1[1-9]|[69]|7[0-35-9])|70|86"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{3,5})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"2[028]"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(2\\d)(\\d{3,4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"2(?:10|74)|5|[89]0"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataSC - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2468]\\d{5,6}" withPossibleNumberPattern:@"\\d{6,7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"4[2-46]\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"4217123"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2[5-8]\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"2510123"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8000\\d{2}" withPossibleNumberPattern:@"\\d{6}" withExample:@"800000"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"64\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"6412345"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"SC"; self.countryCode = [NSNumber numberWithInteger:248]; self.internationalPrefix = @"0[0-2]"; self.preferredInternationalPrefix = @"00"; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"8"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[246]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataSD - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[19]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:[125]\\d|8[3567])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"121231234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9[0-3569]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"911231234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"SD"; self.countryCode = [NSNumber numberWithInteger:249]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataPR - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[5789]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:787|939)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"7872345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:787|939)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"7872345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002345678"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002345678"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"PR"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = YES; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"787|939"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataSE - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-35-9]\\d{5,11}|4\\d{6,8}" withPossibleNumberPattern:@"\\d{6,12}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:0[1-8]\\d{6}|[136]\\d{5,7}|(?:2[0-35]|4[0-4]|5[0-25-9]|7[13-6]|[89]\\d)\\d{5,6})|2(?:[136]\\d{5,7}|(?:2[0-7]|4[0136-8]|5[0138]|7[018]|8[01]|9[0-57])\\d{5,6})|3(?:[356]\\d{5,7}|(?:0[0-4]|1\\d|2[0-25]|4[056]|7[0-2]|8[0-3]|9[023])\\d{5,6})|4(?:[0246]\\d{5,7}|(?:1[013-8]|3[0135]|5[14-79]|7[0-246-9]|8[0156]|9[0-689])\\d{5,6})|5(?:0[0-6]|[15][0-5]|2[0-68]|3[0-4]|4\\d|6[03-5]|7[013]|8[0-79]|9[01])\\d{5,6}|6(?:[03]\\d{5,7}|(?:1[1-3]|2[0-4]|4[02-57]|5[0-37]|6[0-3]|7[0-2]|8[0247]|9[0-356])\\d{5,6})|8\\d{6,8}|9(?:0[1-9]\\d{4,6}|(?:1[0-68]|2\\d|3[02-5]|4[0-3]|5[0-4]|[68][01]|7[0135-8])\\d{5,6})" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"8123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7[02369]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"701234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"20\\d{4,7}" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"20123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"649\\d{6}|9(?:00|39|44)[1-8]\\d{3,6}" withPossibleNumberPattern:@"\\d{7,10}" withExample:@"9001234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"77(?:0\\d{3}(?:\\d{3})?|[1-7]\\d{6})" withPossibleNumberPattern:@"\\d{6}(?:\\d{3})?" withExample:@"771234567"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"75[1-8]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"751234567"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"74[02-9]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"740123456"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:25[245]|67[3-6])\\d{9}" withPossibleNumberPattern:@"\\d{12}" withExample:@"254123456789"]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"SE"; self.countryCode = [NSNumber numberWithInteger:46]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"8"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(8)(\\d{2,3})(\\d{2,3})(\\d{2})" withFormat:@"$1-$2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"1[013689]|2[0136]|3[1356]|4[0246]|54|6[03]|90"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([1-69]\\d)(\\d{2,3})(\\d{2})(\\d{2})" withFormat:@"$1-$2 $3 $4" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"1[136]|2[136]|3[356]|4[0246]|6[03]|90"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"([1-469]\\d)(\\d{3})(\\d{2})" withFormat:@"$1-$2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"1[2457]|2(?:[247-9]|5[0138])|3[0247-9]|4[1357-9]|5[0-35-9]|6(?:[124-689]|7[0-2])|9(?:[125-8]|3[0-5]|4[0-3])"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1-$2 $3 $4" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"1[2457]|2(?:[247-9]|5[0138])|3[0247-9]|4[1357-9]|5[0-35-9]|6(?:[124-689]|7[0-2])|9(?:[125-8]|3[0-5]|4[0-3])"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2,3})(\\d{2})" withFormat:@"$1-$2 $3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"7"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(7\\d)(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1-$2 $3 $4" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"7"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(77)(\\d{2})(\\d{2})" withFormat:@"$1-$2$3" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"20"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(20)(\\d{2,3})(\\d{2})" withFormat:@"$1-$2 $3" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats7]; NSMutableArray *numberFormats8_patternArray = [[NSMutableArray alloc] init]; [numberFormats8_patternArray addObject:@"9[034]"]; NBNumberFormat *numberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(9[034]\\d)(\\d{2})(\\d{2})(\\d{3})" withFormat:@"$1-$2 $3 $4" withLeadingDigitsPatterns:numberFormats8_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats8]; NSMutableArray *numberFormats9_patternArray = [[NSMutableArray alloc] init]; [numberFormats9_patternArray addObject:@"9[034]"]; NBNumberFormat *numberFormats9 = [[NBNumberFormat alloc] initWithPattern:@"(9[034]\\d)(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats9_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats9]; NSMutableArray *numberFormats10_patternArray = [[NSMutableArray alloc] init]; [numberFormats10_patternArray addObject:@"25[245]|67[3-6]"]; NBNumberFormat *numberFormats10 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1-$2 $3 $4 $5" withLeadingDigitsPatterns:numberFormats10_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats10]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *intlNumberFormats0_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats0_patternArray addObject:@"8"]; NBNumberFormat *intlNumberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(8)(\\d{2,3})(\\d{2,3})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:intlNumberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats0]; NSMutableArray *intlNumberFormats1_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats1_patternArray addObject:@"1[013689]|2[0136]|3[1356]|4[0246]|54|6[03]|90"]; NBNumberFormat *intlNumberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([1-69]\\d)(\\d{2,3})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:intlNumberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats1]; NSMutableArray *intlNumberFormats2_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats2_patternArray addObject:@"1[136]|2[136]|3[356]|4[0246]|6[03]|90"]; NBNumberFormat *intlNumberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"([1-469]\\d)(\\d{3})(\\d{2})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats2]; NSMutableArray *intlNumberFormats3_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats3_patternArray addObject:@"1[2457]|2(?:[247-9]|5[0138])|3[0247-9]|4[1357-9]|5[0-35-9]|6(?:[124-689]|7[0-2])|9(?:[125-8]|3[0-5]|4[0-3])"]; NBNumberFormat *intlNumberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:intlNumberFormats3_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats3]; NSMutableArray *intlNumberFormats4_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats4_patternArray addObject:@"1[2457]|2(?:[247-9]|5[0138])|3[0247-9]|4[1357-9]|5[0-35-9]|6(?:[124-689]|7[0-2])|9(?:[125-8]|3[0-5]|4[0-3])"]; NBNumberFormat *intlNumberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2,3})(\\d{2})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats4_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats4]; NSMutableArray *intlNumberFormats5_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats5_patternArray addObject:@"7"]; NBNumberFormat *intlNumberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(7\\d)(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:intlNumberFormats5_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats5]; NSMutableArray *intlNumberFormats6_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats6_patternArray addObject:@"7"]; NBNumberFormat *intlNumberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(77)(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats6_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats6]; NSMutableArray *intlNumberFormats7_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats7_patternArray addObject:@"20"]; NBNumberFormat *intlNumberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(20)(\\d{2,3})(\\d{2})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats7_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats7]; NSMutableArray *intlNumberFormats8_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats8_patternArray addObject:@"9[034]"]; NBNumberFormat *intlNumberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(9[034]\\d)(\\d{2})(\\d{2})(\\d{3})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:intlNumberFormats8_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats8]; NSMutableArray *intlNumberFormats9_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats9_patternArray addObject:@"9[034]"]; NBNumberFormat *intlNumberFormats9 = [[NBNumberFormat alloc] initWithPattern:@"(9[034]\\d)(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:intlNumberFormats9_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats9]; NSMutableArray *intlNumberFormats10_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats10_patternArray addObject:@"25[245]|67[3-6]"]; NBNumberFormat *intlNumberFormats10 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4 $5" withLeadingDigitsPatterns:intlNumberFormats10_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats10]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataPS - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[24589]\\d{7,8}|1(?:[78]\\d{8}|[49]\\d{2,3})" withPossibleNumberPattern:@"\\d{4,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:22[234789]|42[45]|82[01458]|92[369])\\d{5}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"22234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5[69]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"599123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1800\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:4|9\\d)\\d{2}" withPossibleNumberPattern:@"\\d{4,5}" withExample:@"19123"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1700\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1700123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"PS"; self.countryCode = [NSNumber numberWithInteger:970]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2489]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([2489])(2\\d{2})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"5"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(5[69]\\d)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"1[78]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(1[78]00)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataTA - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8\\d{3}" withPossibleNumberPattern:@"\\d{4}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8\\d{3}" withPossibleNumberPattern:@"\\d{4}" withExample:@"8999"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"TA"; self.countryCode = [NSNumber numberWithInteger:290]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataPT - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-46-9]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:[12]\\d|[35][1-689]|4[1-59]|6[1-35689]|7[1-9]|8[1-69]|9[1256])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"212345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9(?:[1236]\\d{2}|480)\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"912345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[02]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6(?:0[178]|4[68])\\d{6}|76(?:0[1-57]|1[2-47]|2[237])\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"760123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80(?:8\\d|9[1579])\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"808123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"884[0-4689]\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"884123456"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"30\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"301234567"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7(?:0(?:7\\d|8[17]))\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"707123456"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"600\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"600110000"]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"PT"; self.countryCode = [NSNumber numberWithInteger:351]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"2[12]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(2\\d)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"2[3-9]|[346-9]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([2-46-9]\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataSG - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[36]\\d{7}|[17-9]\\d{7,10}" withPossibleNumberPattern:@"\\d{8,11}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6[1-9]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"61234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:8[1-8]|9[0-8])\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"81234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1?800\\d{7}" withPossibleNumberPattern:@"\\d{10,11}" withExample:@"18001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1900\\d{7}" withPossibleNumberPattern:@"\\d{11}" withExample:@"19001234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3[12]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"31234567"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7000\\d{7}" withPossibleNumberPattern:@"\\d{11}" withExample:@"70001234567"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"SG"; self.countryCode = [NSNumber numberWithInteger:65]; self.internationalPrefix = @"0[0-3]\\d"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[369]|8[1-9]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([3689]\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"1[89]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(1[89]00)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"70"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(7000)(\\d{4})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"80"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(800)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataTC - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[5689]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"649(?:712|9(?:4\\d|50))\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"6497121234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"649(?:2(?:3[129]|4[1-7])|3(?:3[1-389]|4[1-8])|4[34][1-3])\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"6492311234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002345678"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002345678"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"64971[01]\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"6497101234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"TC"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"649"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataSH - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[256]\\d{4}" withPossibleNumberPattern:@"\\d{4,5}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:[0-57-9]\\d|6[4-9])\\d{2}" withPossibleNumberPattern:@"\\d{5}" withExample:@"22158"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[56]\\d{4}" withPossibleNumberPattern:@"\\d{5}" withExample:nil]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"262\\d{2}" withPossibleNumberPattern:@"\\d{5}" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"SH"; self.countryCode = [NSNumber numberWithInteger:290]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = YES; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataTD - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2679]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"22(?:[3789]0|5[0-5]|6[89])\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"22501234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:6[023568]\\d|77\\d|9\\d{2})\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"63012345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"TD"; self.countryCode = [NSNumber numberWithInteger:235]; self.internationalPrefix = @"00|16"; self.preferredInternationalPrefix = @"00"; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataSI - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-7]\\d{6,7}|[89]\\d{4,7}" withPossibleNumberPattern:@"\\d{5,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1\\d|[25][2-8]|3[24-8]|4[24-8]|7[3-8])\\d{6}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"11234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[37][01]|4[0139]|51|6[48])\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"31234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80\\d{4,6}" withPossibleNumberPattern:@"\\d{6,8}" withExample:@"80123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90\\d{4,6}|89[1-3]\\d{2,5}" withPossibleNumberPattern:@"\\d{5,8}" withExample:@"90123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:59|8[1-3])\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"59012345"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"SI"; self.countryCode = [NSNumber numberWithInteger:386]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[12]|3[24-8]|4[24-8]|5[2-8]|7[3-8]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[37][01]|4[0139]|51|6"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([3-7]\\d)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[89][09]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"([89][09])(\\d{3,6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"59|8[1-3]"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"([58]\\d{2})(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataPW - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-8]\\d{6}" withPossibleNumberPattern:@"\\d{7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2552255|(?:277|345|488|5(?:35|44|87)|6(?:22|54|79)|7(?:33|47)|8(?:24|55|76))\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"2771234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:6[234689]0|77[45789])\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"6201234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"PW"; self.countryCode = [NSNumber numberWithInteger:680]; self.internationalPrefix = @"01[12]"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataSJ - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"0\\d{4}|[4789]\\d{7}" withPossibleNumberPattern:@"\\d{5}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"79\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"79123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:4[015-8]|5[89]|9\\d)\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"41234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[01]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"82[09]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"82012345"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"810(?:0[0-6]|[2-8]\\d)\\d{3}" withPossibleNumberPattern:@"\\d{8}" withExample:@"81021234"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"880\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"88012345"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"85[0-5]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"85012345"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"0\\d{4}|81(?:0(?:0[7-9]|1\\d)|5\\d{2})\\d{3}" withPossibleNumberPattern:@"\\d{5}(?:\\d{3})?" withExample:@"01234"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"81[23]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"81212345"]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"SJ"; self.countryCode = [NSNumber numberWithInteger:47]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataUA - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[3-9]\\d{8}" withPossibleNumberPattern:@"\\d{5,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:3[1-8]|4[13-8]|5[1-7]|6[12459])\\d{7}" withPossibleNumberPattern:@"\\d{5,9}" withExample:@"311234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:39|50|6[36-8]|73|9[1-9])\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"391234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"900123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"89\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"891234567"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"UA"; self.countryCode = [NSNumber numberWithInteger:380]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = @"0~0"; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[38]9|4(?:[45][0-5]|87)|5(?:0|6[37]|7[37])|6[36-8]|73|9[1-9]"]; [numberFormats0_patternArray addObject:@"[38]9|4(?:[45][0-5]|87)|5(?:0|6(?:3[14-7]|7)|7[37])|6[36-8]|73|9[1-9]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([3-9]\\d)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"3[1-8]2|4[13678]2|5(?:[12457]2|6[24])|6(?:[49]2|[12][29]|5[24])|8[0-8]|90"]; [numberFormats1_patternArray addObject:@"3(?:[1-46-8]2[013-9]|52)|4(?:[1378]2|62[013-9])|5(?:[12457]2|6[24])|6(?:[49]2|[12][29]|5[24])|8[0-8]|90"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([3-689]\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"3(?:5[013-9]|[1-46-8])|4(?:[137][013-9]|6|[45][6-9]|8[4-6])|5(?:[1245][013-9]|6[0135-9]|3|7[4-6])|6(?:[49][013-9]|5[0135-9]|[12][13-8])"]; [numberFormats2_patternArray addObject:@"3(?:5[013-9]|[1-46-8](?:22|[013-9]))|4(?:[137][013-9]|6(?:[013-9]|22)|[45][6-9]|8[4-6])|5(?:[1245][013-9]|6(?:3[02389]|[015689])|3|7[4-6])|6(?:[49][013-9]|5[0135-9]|[12][13-8])"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"([3-6]\\d{3})(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataRO - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2\\d{5,8}|[37-9]\\d{8}" withPossibleNumberPattern:@"\\d{6,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:1(?:\\d{7}|9\\d{3})|[3-6](?:\\d{7}|\\d9\\d{2}))|3[13-6]\\d{7}" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"211234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7(?:[0-8]\\d{2}|99\\d)\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"712345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90[036]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"900123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"801\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"801123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"802\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"802123456"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"37\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"372123456"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"RO"; self.countryCode = [NSNumber numberWithInteger:40]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = @" int "; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[23]1"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"21"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(21)(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[23][3-7]|[7-9]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"2[3-6]"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(2\\d{2})(\\d{3})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataSK - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[2-68]\\d{5,8}|9\\d{6,8})" withPossibleNumberPattern:@"\\d{6,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:16\\d{3,4}|\\d{8})|[3-5](?:[1-8]16\\d{2,3}|\\d{8})" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"212345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9(?:0(?:[1-8]\\d|9[1-9])|(?:1[0-24-9]|4[0489]|50)\\d)\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"912123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9(?:[78]\\d{7}|00\\d{6})" withPossibleNumberPattern:@"\\d{9}" withExample:@"900123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8[5-9]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"850123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6(?:02|5[0-4]|9[0-6])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"690123456"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9090\\d{3}" withPossibleNumberPattern:@"\\d{7}" withExample:@"9090123"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"96\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"961234567"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:602|8(?:00|[5-9]\\d)|9(?:00|[78]\\d))\\d{6}|9090\\d{3}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"800123456"]; self.codeID = @"SK"; self.countryCode = [NSNumber numberWithInteger:421]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"216"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(2)(16)(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[3-5]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([3-5]\\d)(16)(\\d{2,3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"2"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(2)(\\d{3})(\\d{3})(\\d{2})" withFormat:@"$1/$2 $3 $4" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"[3-5]"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"([3-5]\\d)(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1/$2 $3 $4" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"[689]"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"([689]\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"9090"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(9090)(\\d{3})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataPY - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5[0-5]\\d{4,7}|[2-46-9]\\d{5,8}" withPossibleNumberPattern:@"\\d{5,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[26]1|3[289]|4[124678]|7[123]|8[1236])\\d{5,7}|(?:2(?:2[4568]|7[15]|9[1-5])|3(?:18|3[167]|4[2357]|51)|4(?:18|2[45]|3[12]|5[13]|64|71|9[1-47])|5(?:[1-4]\\d|5[0234])|6(?:3[1-3]|44|7[1-4678])|7(?:17|4[0-4]|6[1-578]|75|8[0-8])|858)\\d{5,6}" withPossibleNumberPattern:@"\\d{5,9}" withExample:@"212345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9(?:6[12]|[78][1-6]|9[1-5])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"961456789"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8700[0-4]\\d{4}" withPossibleNumberPattern:@"\\d{9}" withExample:@"870012345"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-9]0\\d{4,7}" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"201234567"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"PY"; self.countryCode = [NSNumber numberWithInteger:595]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"(?:[26]1|3[289]|4[124678]|7[123]|8[1236])"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{5,7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"($1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[2-9]0"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3,6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"9[1-9]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"8700"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"[2-8][1-9]"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4,6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"($1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataTG - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[29]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:2[2-7]|3[23]|44|55|66|77)\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"22212345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9[0-389]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"90112345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"TG"; self.countryCode = [NSNumber numberWithInteger:228]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataSL - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-9]\\d{7}" withPossibleNumberPattern:@"\\d{6,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[235]2[2-4][2-9]\\d{4}" withPossibleNumberPattern:@"\\d{6,8}" withExample:@"22221234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2[15]|3[03-5]|4[04]|5[05]|66|7[6-9]|88|99)\\d{6}" withPossibleNumberPattern:@"\\d{6,8}" withExample:@"25123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"SL"; self.countryCode = [NSNumber numberWithInteger:232]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataTH - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-9]\\d{7,8}|1\\d{3}(?:\\d{5,6})?" withPossibleNumberPattern:@"\\d{4}|\\d{8,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2\\d|3[2-9]|4[2-5]|5[2-6]|7[3-7])\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"21234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:14|6[1-4]|[89]\\d)\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"812345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1800\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1900\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1900123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6[08]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"601234567"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1\\d{3}" withPossibleNumberPattern:@"\\d{4}" withExample:@"1100"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1\\d{3}" withPossibleNumberPattern:@"\\d{4}" withExample:@"1100"]; self.codeID = @"TH"; self.countryCode = [NSNumber numberWithInteger:66]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"2"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(2)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"14|[3-9]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([13-9]\\d)(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"1"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(1[89]00)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataSM - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[05-7]\\d{7,9}" withPossibleNumberPattern:@"\\d{6,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"0549(?:8[0157-9]|9\\d)\\d{4}" withPossibleNumberPattern:@"\\d{6,10}" withExample:@"0549886377"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6[16]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"66661212"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7[178]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"71123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5[158]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"58001110"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"SM"; self.countryCode = [NSNumber numberWithInteger:378]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"(?:0549)?([89]\\d{5})"; self.nationalPrefixTransformRule = @"0549$1"; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[5-7]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"0"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(0549)(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[89]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{6})" withFormat:@"0549 $1" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *intlNumberFormats0_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats0_patternArray addObject:@"[5-7]"]; NBNumberFormat *intlNumberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:intlNumberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats0]; NSMutableArray *intlNumberFormats1_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats1_patternArray addObject:@"0"]; NBNumberFormat *intlNumberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(0549)(\\d{6})" withFormat:@"($1) $2" withLeadingDigitsPatterns:intlNumberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats1]; NSMutableArray *intlNumberFormats2_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats2_patternArray addObject:@"[89]"]; NBNumberFormat *intlNumberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{6})" withFormat:@"(0549) $1" withLeadingDigitsPatterns:intlNumberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats2]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataSN - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[3789]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3(?:0(?:1[0-2]|80)|282|3(?:8[1-9]|9[3-9])|611|90[1-5])\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"301012345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7(?:[067]\\d|21|8[0-46]|90)\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"701234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"88[4689]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"884123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"81[02468]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"810123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3392\\d{5}|93330\\d{4}" withPossibleNumberPattern:@"\\d{9}" withExample:@"933301234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"SN"; self.countryCode = [NSNumber numberWithInteger:221]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[379]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"8"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataRS - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[126-9]\\d{4,11}|3(?:[0-79]\\d{3,10}|8[2-9]\\d{2,9})" withPossibleNumberPattern:@"\\d{5,12}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1(?:[02-9][2-9]|1[1-9])\\d|2(?:[0-24-7][2-9]\\d|[389](?:0[2-9]|[2-9]\\d))|3(?:[0-8][2-9]\\d|9(?:[2-9]\\d|0[2-9])))\\d{3,8}" withPossibleNumberPattern:@"\\d{5,12}" withExample:@"10234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6(?:[0-689]|7\\d)\\d{6,7}" withPossibleNumberPattern:@"\\d{8,10}" withExample:@"601234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{3,9}" withPossibleNumberPattern:@"\\d{6,12}" withExample:@"80012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:90[0169]|78\\d)\\d{3,7}" withPossibleNumberPattern:@"\\d{6,12}" withExample:@"90012345"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7[06]\\d{4,10}" withPossibleNumberPattern:@"\\d{6,12}" withExample:@"700123456"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"RS"; self.countryCode = [NSNumber numberWithInteger:381]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"(?:2[389]|39)0"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([23]\\d{2})(\\d{4,9})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"1|2(?:[0-24-7]|[389][1-9])|3(?:[0-8]|9[1-9])"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([1-3]\\d)(\\d{5,10})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"6"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(6\\d)(\\d{6,8})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"[89]"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"([89]\\d{2})(\\d{3,9})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"7[26]"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(7[26])(\\d{4,9})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"7[08]"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(7[08]\\d)(\\d{4,9})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataTJ - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[3-589]\\d{8}" withPossibleNumberPattern:@"\\d{3,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:3(?:1[3-5]|2[245]|3[12]|4[24-7]|5[25]|72)|4(?:46|74|87))\\d{6}" withPossibleNumberPattern:@"\\d{3,9}" withExample:@"372123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:41[18]|50[125]|88\\d|9[0-35-9]\\d)\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"917123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"TJ"; self.countryCode = [NSNumber numberWithInteger:992]; self.internationalPrefix = @"810"; self.preferredInternationalPrefix = @"8~10"; self.nationalPrefix = @"8"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"8"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[34]7|91[78]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([349]\\d{2})(\\d{2})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"(8) $1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"4[148]|[58]|9(?:1[59]|[0235-9])"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([4589]\\d)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"(8) $1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"331"]; [numberFormats2_patternArray addObject:@"3317"]; [numberFormats2_patternArray addObject:@"33170"]; [numberFormats2_patternArray addObject:@"331700"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(331700)(\\d)(\\d{2})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"(8) $1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"3[1-5]"]; [numberFormats3_patternArray addObject:@"3(?:[1245]|3(?:[02-9]|1[0-589]))"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d)(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"(8) $1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataVA - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:0(?:878\\d{5}|6698\\d{5})|[1589]\\d{5,10}|3(?:[12457-9]\\d{8}|[36]\\d{7,9}))" withPossibleNumberPattern:@"\\d{6,11}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"06698\\d{5}" withPossibleNumberPattern:@"\\d{10}" withExample:@"0669812345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3(?:[12457-9]\\d{8}|6\\d{7,8}|3\\d{7,9})" withPossibleNumberPattern:@"\\d{9,11}" withExample:@"3123456789"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80(?:0\\d{6}|3\\d{3})" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"0878\\d{5}|1(?:44|6[346])\\d{6}|89(?:2\\d{3}|4(?:[0-4]\\d{2}|[5-9]\\d{4})|5(?:[0-4]\\d{2}|[5-9]\\d{6})|9\\d{6})" withPossibleNumberPattern:@"\\d{6,10}" withExample:@"899123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"84(?:[08]\\d{6}|[17]\\d{3})" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"848123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:78\\d|99)\\d{6}" withPossibleNumberPattern:@"\\d{9,10}" withExample:@"1781234567"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"55\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5512345678"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"848\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"848123456"]; self.codeID = @"VA"; self.countryCode = [NSNumber numberWithInteger:39]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataSO - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-79]\\d{6,8}" withPossibleNumberPattern:@"\\d{7,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1\\d|2[0-79]|3[0-46-8]|4[0-7]|59)\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"4012345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:15\\d|2(?:4\\d|8)|6[1-35-9]?\\d{2}|7(?:[1-8]\\d|99?\\d)|9(?:0[67]|[2-9])\\d)\\d{5}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"71123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"SO"; self.countryCode = [NSNumber numberWithInteger:252]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"2[0-79]|[13-5]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"24|[67]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"15|28|6[1-35-9]|799|9[2-9]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{5,7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"90"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(90\\d)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataTK - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-47]\\d{3,6}" withPossibleNumberPattern:@"\\d{4,7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2[2-4]|[34]\\d)\\d{2,5}" withPossibleNumberPattern:@"\\d{4,7}" withExample:@"3101"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7[2-4]\\d{2,5}" withPossibleNumberPattern:@"\\d{4,7}" withExample:@"7290"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"TK"; self.countryCode = [NSNumber numberWithInteger:690]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataUG - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"\\d{9}" withPossibleNumberPattern:@"\\d{5,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"20(?:[0147]\\d{2}|2(?:40|[5-9]\\d)|3[23]\\d|5[0-4]\\d|6[03]\\d|8[0-2]\\d)\\d{4}|[34]\\d{8}" withPossibleNumberPattern:@"\\d{5,9}" withExample:@"312345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2030\\d{5}|7(?:0[0-7]|[15789]\\d|2[03]|30|[46][0-4])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"712345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800[123]\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90[123]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"901123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"UG"; self.countryCode = [NSNumber numberWithInteger:256]; self.internationalPrefix = @"00[057]"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[7-9]|20(?:[013-8]|2[5-9])|4(?:6[45]|[7-9])"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"3|4(?:[1-5]|6[0-36-9])"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"2024"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(2024)(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataRU - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[3489]\\d{9}" withPossibleNumberPattern:@"\\d{10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:3(?:0[12]|4[1-35-79]|5[1-3]|65|8[1-58]|9[0145])|4(?:01|1[1356]|2[13467]|7[1-5]|8[1-7]|9[1-689])|8(?:1[1-8]|2[01]|3[13-6]|4[0-8]|5[15]|6[1-35-79]|7[1-37-9]))\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"3011234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9\\d{9}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9123456789"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[04]\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[39]\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8091234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"RU"; self.countryCode = [NSNumber numberWithInteger:7]; self.internationalPrefix = @"810"; self.preferredInternationalPrefix = @"8~10"; self.nationalPrefix = @"8"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"8"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[1-79]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[34689]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([3489]\\d{2})(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1 $2-$3-$4" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"8 ($1)" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"7"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(7\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"8 ($1)" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *intlNumberFormats0_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats0_patternArray addObject:@"[34689]"]; NBNumberFormat *intlNumberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([3489]\\d{2})(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1 $2-$3-$4" withLeadingDigitsPatterns:intlNumberFormats0_patternArray withNationalPrefixFormattingRule:@"8 ($1)" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats0]; NSMutableArray *intlNumberFormats1_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats1_patternArray addObject:@"7"]; NBNumberFormat *intlNumberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(7\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats1_patternArray withNationalPrefixFormattingRule:@"8 ($1)" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats1]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = YES; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataTL - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-489]\\d{6}|7\\d{6,7}" withPossibleNumberPattern:@"\\d{7,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2[1-5]|3[1-9]|4[1-4])\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"2112345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7[3-8]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"77212345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"8012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"9012345"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"70\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"7012345"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"TL"; self.countryCode = [NSNumber numberWithInteger:670]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2-489]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"7"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataVC - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[5789]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"784(?:266|3(?:6[6-9]|7\\d|8[0-24-6])|4(?:38|5[0-36-8]|8[0-8])|5(?:55|7[0-2]|93)|638|784)\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"7842661234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"784(?:4(?:3[0-4]|5[45]|89|9[0-58])|5(?:2[6-9]|3[0-4]))\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7844301234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002345678"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002345678"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"VC"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"784"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadata870 - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[35-7]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:@"301234567"]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:@"301234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[356]\\d|7[6-8])\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"301234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"001"; self.countryCode = [NSNumber numberWithInteger:870]; self.internationalPrefix = nil; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataTM - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-6]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1(?:2\\d|3[1-9])|2(?:22|4[0-35-8])|3(?:22|4[03-9])|4(?:22|3[128]|4\\d|6[15])|5(?:22|5[7-9]|6[014-689]))\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"12345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6[1-9]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"66123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"TM"; self.countryCode = [NSNumber numberWithInteger:993]; self.internationalPrefix = @"810"; self.preferredInternationalPrefix = @"8~10"; self.nationalPrefix = @"8"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"8"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"12"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2-$3-$4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"(8 $1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"6"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"8 $1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"13|[2-5]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d)(\\d{2})(\\d{2})" withFormat:@"$1 $2-$3-$4" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"(8 $1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataSR - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-8]\\d{5,6}" withPossibleNumberPattern:@"\\d{6,7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2[1-3]|3[0-7]|4\\d|5[2-58]|68\\d)\\d{4}" withPossibleNumberPattern:@"\\d{6,7}" withExample:@"211234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:7[124-7]|8[1-9])\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"7412345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:6\\d{4}|90[0-4]\\d{3})" withPossibleNumberPattern:@"\\d{6,7}" withExample:@"561234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"SR"; self.countryCode = [NSNumber numberWithInteger:597]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2-4]|5[2-58]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"56"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"59|[6-8]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataRW - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[027-9]\\d{7,8}" withPossibleNumberPattern:@"\\d{8,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2[258]\\d{7}|06\\d{6}" withPossibleNumberPattern:@"\\d{8,9}" withExample:@"250123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7[238]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"720123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"900123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"RW"; self.countryCode = [NSNumber numberWithInteger:250]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"2"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(2\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[7-9]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([7-9]\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"0"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(0\\d)(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataTN - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-57-9]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3(?:[012]\\d|6[0-4]|91)\\d{5}|7\\d{7}|81200\\d{3}" withPossibleNumberPattern:@"\\d{8}" withExample:@"71234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[259]\\d|4[0-6])\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"20123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8010\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80101234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"88\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"88123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8[12]10\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"81101234"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"TN"; self.countryCode = [NSNumber numberWithInteger:216]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataVE - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[24589]\\d{9}" withPossibleNumberPattern:@"\\d{7,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:12|3[457-9]|[58][1-9]|[467]\\d|9[1-6])|50[01])\\d{7}" withPossibleNumberPattern:@"\\d{7,10}" withExample:@"2121234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"4(?:1[24-8]|2[46])\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"4121234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9001234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"VE"; self.countryCode = [NSNumber numberWithInteger:58]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{7})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataSS - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[19]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"18\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"181234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:12|9[1257])\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"977123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"SS"; self.countryCode = [NSNumber numberWithInteger:211]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataTO - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[02-8]\\d{4,6}" withPossibleNumberPattern:@"\\d{5,7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2\\d|3[1-8]|4[1-4]|[56]0|7[0149]|8[05])\\d{3}" withPossibleNumberPattern:@"\\d{5}" withExample:@"20123"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:7[578]|8[47-9])\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"7715123"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"0800\\d{3}" withPossibleNumberPattern:@"\\d{7}" withExample:@"0800222"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"TO"; self.countryCode = [NSNumber numberWithInteger:676]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[1-6]|7[0-4]|8[05]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"7[5-9]|8[47-9]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"0"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{3})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataST - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[29]\\d{6}" withPossibleNumberPattern:@"\\d{7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"22\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"2221234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9(?:0(?:0[5-9]|[1-9]\\d)|[89]\\d{2})\\d{3}" withPossibleNumberPattern:@"\\d{7}" withExample:@"9812345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"ST"; self.countryCode = [NSNumber numberWithInteger:239]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataVG - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2589]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"284(?:(?:229|4(?:22|9[45])|774|8(?:52|6[459]))\\d{4}|496[0-5]\\d{3})" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"2842291234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"284(?:(?:3(?:0[0-3]|4[0-367]|94)|4(?:4[0-6]|68|99)|54[0-57])\\d{4}|496[6-9]\\d{3})" withPossibleNumberPattern:@"\\d{10}" withExample:@"2843001234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002345678"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002345678"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"VG"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"284"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataSV - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[267]\\d{7}|[89]\\d{6}(?:\\d{4})?" withPossibleNumberPattern:@"\\d{7,8}|\\d{11}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2[1-6]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"21234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[67]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:@"70123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{4}(?:\\d{4})?" withPossibleNumberPattern:@"\\d{7}(?:\\d{4})?" withExample:@"8001234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900\\d{4}(?:\\d{4})?" withPossibleNumberPattern:@"\\d{7}(?:\\d{4})?" withExample:@"9001234"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"SV"; self.countryCode = [NSNumber numberWithInteger:503]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[267]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[89]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[89]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataTR - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-589]\\d{9}|444\\d{4}" withPossibleNumberPattern:@"\\d{7,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:[13][26]|[28][2468]|[45][268]|[67][246])|3(?:[13][28]|[24-6][2468]|[78][02468]|92)|4(?:[16][246]|[23578][2468]|4[26]))\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"2123456789"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:0[1-7]|22|[34]\\d|5[1-59]|9[246])\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5012345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9001234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"512\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5123456789"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"444\\d{4}|850\\d{7}" withPossibleNumberPattern:@"\\d{7,10}" withExample:@"4441444"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"444\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"4441444"]; self.codeID = @"TR"; self.countryCode = [NSNumber numberWithInteger:90]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[23]|4(?:[0-35-9]|4[0-35-9])"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[589]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"444"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(444)(\\d{1})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataVI - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[3589]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"340(?:2(?:01|2[0678]|44|77)|3(?:32|44)|4(?:22|7[34])|5(?:1[34]|55)|6(?:26|4[23]|77|9[023])|7(?:1[2-589]|27|7\\d)|884|998)\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"3406421234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"340(?:2(?:01|2[0678]|44|77)|3(?:32|44)|4(?:22|7[34])|5(?:1[34]|55)|6(?:26|4[23]|77|9[023])|7(?:1[2-589]|27|7\\d)|884|998)\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"3406421234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002345678"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002345678"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"VI"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = YES; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"340"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataSX - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[5789]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7215(?:4[2-8]|8[239]|9[056])\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"7215425678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7215(?:1[02]|2\\d|5[034679]|8[014-8])\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7215205678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"SX"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"721"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataWF - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[4-8]\\d{5}" withPossibleNumberPattern:@"\\d{6}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:50|68|72)\\d{4}" withPossibleNumberPattern:@"\\d{6}" withExample:@"501234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:50|68|72|8[23])\\d{4}" withPossibleNumberPattern:@"\\d{6}" withExample:@"501234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[48]0\\d{4}" withPossibleNumberPattern:@"\\d{6}" withExample:@"401234"]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"WF"; self.countryCode = [NSNumber numberWithInteger:681]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataTT - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[589]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"868(?:2(?:01|2[1-6]|3[1-5])|6(?:0[79]|1[02-8]|2[1-9]|[3-69]\\d|7[0-79])|82[124])\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"8682211234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"868(?:2(?:[789]\\d)|3(?:0[1-9]|1[02-9]|[2-9]\\d)|4[6-9]\\d|6(?:20|78|8\\d)|7(?:0[1-9]|1[02-9]|[2-9]\\d))\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8682911234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002345678"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002345678"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"868619\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"TT"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"868"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataSY - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-59]\\d{7,8}" withPossibleNumberPattern:@"\\d{6,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1(?:1\\d?|4\\d|[2356])|2(?:1\\d?|[235])|3(?:[13]\\d|4)|4[13]|5[1-3])\\d{6}" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"112345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9(?:22|[35][0-8]|4\\d|6[024-9]|88|9[0-489])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"944567890"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"SY"; self.countryCode = [NSNumber numberWithInteger:963]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[1-5]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"9"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(9\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataSZ - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[027]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2[2-5]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"22171234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7[6-8]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"76123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"0800\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"08001234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"0800\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"08001234"]; self.codeID = @"SZ"; self.countryCode = [NSNumber numberWithInteger:268]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[027]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataTV - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[279]\\d{4,6}" withPossibleNumberPattern:@"\\d{5,7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2[02-9]\\d{3}" withPossibleNumberPattern:@"\\d{5}" withExample:@"20123"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:70\\d|90)\\d{4}" withPossibleNumberPattern:@"\\d{6,7}" withExample:@"901234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"TV"; self.countryCode = [NSNumber numberWithInteger:688]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataTW - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-689]\\d{7,8}|7\\d{7,9}" withPossibleNumberPattern:@"\\d{8,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-8]\\d{7,8}" withPossibleNumberPattern:@"\\d{8,9}" withExample:@"21234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:@"912345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"900123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"70\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7012345678"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"TW"; self.countryCode = [NSNumber numberWithInteger:886]; self.internationalPrefix = @"0(?:0[25679]|19)"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = @"#"; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2-6]|[78][1-9]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([2-8])(\\d{3,4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"80|9"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([89]\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"70"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(70)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataVN - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[17]\\d{6,9}|[2-69]\\d{7,9}|8\\d{6,8}" withPossibleNumberPattern:@"\\d{7,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:[025-79]|1[0189]|[348][01])|3(?:[0136-9]|[25][01])|4\\d|5(?:[01][01]|[2-9])|6(?:[0-46-8]|5[01])|7(?:[02-79]|[18][01]))\\d{7}|8(?:[1-57]\\d|[689][0-79])\\d{6}" withPossibleNumberPattern:@"\\d{9,10}" withExample:@"2101234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:9\\d|1(?:2\\d|6[2-9]|8[68]|99))\\d{7}|8[689]8\\d{6}" withPossibleNumberPattern:@"\\d{9,10}" withExample:@"912345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1800\\d{4,6}" withPossibleNumberPattern:@"\\d{8,10}" withExample:@"1800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1900\\d{4,6}" withPossibleNumberPattern:@"\\d{8,10}" withExample:@"1900123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[17]99\\d{4}|69\\d{5,6}|80\\d{5}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"1992000"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[17]99\\d{4}|69\\d{5,6}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"1992000"]; self.codeID = @"VN"; self.countryCode = [NSNumber numberWithInteger:84]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[17]99"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([17]99)(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"4|8(?:[1-57]|[689][0-79])"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([48])(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"2[025-79]|3[0136-9]|5[2-9]|6[0-46-8]|7[02-79]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"([235-7]\\d)(\\d{4})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"80"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(80)(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"69"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(69\\d)(\\d{4,5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"2[1348]|3[25]|5[01]|65|7[18]"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"([235-7]\\d{2})(\\d{4})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"8[689]8|9"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"([89]\\d)(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"1(?:[26]|8[68]|99)"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(1[2689]\\d)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats7]; NSMutableArray *numberFormats8_patternArray = [[NSMutableArray alloc] init]; [numberFormats8_patternArray addObject:@"1[89]0"]; NBNumberFormat *numberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(1[89]00)(\\d{4,6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats8_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats8]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataUS - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-9]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:0[1-35-9]|1[02-9]|2[04589]|3[149]|4[08]|5[1-46]|6[0279]|7[026]|8[13])|3(?:0[1-57-9]|1[02-9]|2[0135]|3[014679]|4[67]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|69|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-37]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|3[016]|4[16]|5[017]|6[0-279]|78|8[12])|7(?:0[1-46-8]|1[02-9]|2[0457]|3[1247]|4[037]|5[47]|6[02359]|7[02-59]|8[156])|8(?:0[1-68]|1[02-8]|28|3[0-25]|4[3578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[014678]|4[0179]|5[12469]|7[0-3589]|8[0459]))[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"2015550123"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:0[1-35-9]|1[02-9]|2[04589]|3[149]|4[08]|5[1-46]|6[0279]|7[026]|8[13])|3(?:0[1-57-9]|1[02-9]|2[0135]|3[014679]|4[67]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|69|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-37]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|3[016]|4[16]|5[017]|6[0-279]|78|8[12])|7(?:0[1-46-8]|1[02-9]|2[0457]|3[1247]|4[037]|5[47]|6[02359]|7[02-59]|8[156])|8(?:0[1-68]|1[02-8]|28|3[0-25]|4[3578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[014678]|4[0179]|5[12469]|7[0-3589]|8[0459]))[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"2015550123"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002345678"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002345678"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"US"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = YES; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"($1) $2-$3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *intlNumberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *intlNumberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:intlNumberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats0]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = YES; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataTZ - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"\\d{9}" withPossibleNumberPattern:@"\\d{7,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2[2-8]\\d{7}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"222345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:6[125-9]|7[1-9])\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"621234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[08]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"900123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:40|6[01])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"840123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"41\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"412345678"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"TZ"; self.countryCode = [NSNumber numberWithInteger:255]; self.internationalPrefix = @"00[056]"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[24]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([24]\\d)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[67]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([67]\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[89]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"([89]\\d{2})(\\d{2})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadata878 - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1\\d{11}" withPossibleNumberPattern:@"\\d{12}" withExample:@"101234567890"]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:@"101234567890"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:@"101234567890"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"10\\d{10}" withPossibleNumberPattern:@"\\d{12}" withExample:@"101234567890"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"001"; self.countryCode = [NSNumber numberWithInteger:878]; self.internationalPrefix = nil; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = YES; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{5})(\\d{5})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataYE - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-7]\\d{6,8}" withPossibleNumberPattern:@"\\d{6,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1(?:7\\d|[2-68])|2[2-68]|3[2358]|4[2-58]|5[2-6]|6[3-58]|7[24-68])\\d{5}" withPossibleNumberPattern:@"\\d{6,8}" withExample:@"1234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7[0137]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"712345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"YE"; self.countryCode = [NSNumber numberWithInteger:967]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[1-6]|7[24-68]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([1-7])(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"7[0137]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(7\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataZA - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-79]\\d{8}|8(?:[067]\\d{7}|[1-4]\\d{3,7})" withPossibleNumberPattern:@"\\d{5,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1[0-8]|2[0-378]|3[1-69]|4\\d|5[1346-8])\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"101234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:6[0-5]|7[0-46-9])\\d{7}|8[1-4]\\d{3,7}" withPossibleNumberPattern:@"\\d{5,9}" withExample:@"711234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"801234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"86[2-9]\\d{6}|90\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"862345678"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"860\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"860123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"87\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"871234567"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"861\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"861123456"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"ZA"; self.countryCode = [NSNumber numberWithInteger:27]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"860"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(860)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[1-79]|8(?:[0-47]|6[1-9])"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"8[1-4]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3,4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"8[1-4]"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{2,3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataUY - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2489]\\d{6,7}" withPossibleNumberPattern:@"\\d{7,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2\\d{7}|4[2-7]\\d{6}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"21231234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9[1-9]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"94231234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[05]\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"8001234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90[0-8]\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"9001234"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"UY"; self.countryCode = [NSNumber numberWithInteger:598]; self.internationalPrefix = @"0(?:1[3-9]\\d|0)"; self.preferredInternationalPrefix = @"00"; self.nationalPrefix = @"0"; self.preferredExtnPrefix = @" int. "; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[24]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"9[1-9]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[89]0"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataVU - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-57-9]\\d{4,6}" withPossibleNumberPattern:@"\\d{5,7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2[02-9]\\d|3(?:[5-7]\\d|8[0-8])|48[4-9]|88\\d)\\d{2}" withPossibleNumberPattern:@"\\d{5}" withExample:@"22123"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:5(?:7[2-5]|[0-689]\\d)|7[013-7]\\d)\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"5912345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3[03]\\d{3}|900\\d{4}" withPossibleNumberPattern:@"\\d{5,7}" withExample:@"30123"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"VU"; self.countryCode = [NSNumber numberWithInteger:678]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[579]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataUZ - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[679]\\d{8}" withPossibleNumberPattern:@"\\d{7,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:6(?:1(?:22|3[124]|4[1-4]|5[123578]|64)|2(?:22|3[0-57-9]|41)|5(?:22|3[3-7]|5[024-8])|6\\d{2}|7(?:[23]\\d|7[69])|9(?:22|4[1-8]|6[135]))|7(?:0(?:5[4-9]|6[0146]|7[12456]|9[135-8])|1[12]\\d|2(?:22|3[1345789]|4[123579]|5[14])|3(?:2\\d|3[1578]|4[1-35-7]|5[1-57]|61)|4(?:2\\d|3[1-579]|7[1-79])|5(?:22|5[1-9]|6[1457])|6(?:22|3[12457]|4[13-8])|9(?:22|5[1-9])))\\d{5}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"662345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6(?:1(?:2(?:98|2[01])|35[0-4]|50\\d|61[23]|7(?:[01][017]|4\\d|55|9[5-9]))|2(?:11\\d|2(?:[12]1|9[01379])|5(?:[126]\\d|3[0-4])|7\\d{2})|5(?:19[01]|2(?:27|9[26])|30\\d|59\\d|7\\d{2})|6(?:2(?:1[5-9]|2[0367]|38|41|52|60)|3[79]\\d|4(?:56|83)|7(?:[07]\\d|1[017]|3[07]|4[047]|5[057]|67|8[0178]|9[79])|9[0-3]\\d)|7(?:2(?:24|3[237]|4[5-9]|7[15-8])|5(?:7[12]|8[0589])|7(?:0\\d|[39][07])|9(?:0\\d|7[079]))|9(?:2(?:1[1267]|5\\d|3[01]|7[0-4])|5[67]\\d|6(?:2[0-26]|8\\d)|7\\d{2}))\\d{4}|7(?:0\\d{3}|1(?:13[01]|6(?:0[47]|1[67]|66)|71[3-69]|98\\d)|2(?:2(?:2[79]|95)|3(?:2[5-9]|6[0-6])|57\\d|7(?:0\\d|1[17]|2[27]|3[37]|44|5[057]|66|88))|3(?:2(?:1[0-6]|21|3[469]|7[159])|33\\d|5(?:0[0-4]|5[579]|9\\d)|7(?:[0-3579]\\d|4[0467]|6[67]|8[078])|9[4-6]\\d)|4(?:2(?:29|5[0257]|6[0-7]|7[1-57])|5(?:1[0-4]|8\\d|9[5-9])|7(?:0\\d|1[024589]|2[0127]|3[0137]|[46][07]|5[01]|7[5-9]|9[079])|9(?:7[015-9]|[89]\\d))|5(?:112|2(?:0\\d|2[29]|[49]4)|3[1568]\\d|52[6-9]|7(?:0[01578]|1[017]|[23]7|4[047]|[5-7]\\d|8[78]|9[079]))|6(?:2(?:2[1245]|4[2-4])|39\\d|41[179]|5(?:[349]\\d|5[0-2])|7(?:0[017]|[13]\\d|22|44|55|67|88))|9(?:22[128]|3(?:2[0-4]|7\\d)|57[05629]|7(?:2[05-9]|3[37]|4\\d|60|7[2579]|87|9[07])))\\d{4}|9[0-57-9]\\d{7}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"912345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"UZ"; self.countryCode = [NSNumber numberWithInteger:998]; self.internationalPrefix = @"810"; self.preferredInternationalPrefix = @"8~10"; self.nationalPrefix = @"8"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"8"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([679]\\d)(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"8 $1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataWS - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-8]\\d{4,6}" withPossibleNumberPattern:@"\\d{5,7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[2-5]\\d|6[1-9]|84\\d{2})\\d{3}" withPossibleNumberPattern:@"\\d{5,7}" withExample:@"22123"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:60|7[25-7]\\d)\\d{4}" withPossibleNumberPattern:@"\\d{6,7}" withExample:@"601234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{3}" withPossibleNumberPattern:@"\\d{6}" withExample:@"800123"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"WS"; self.countryCode = [NSNumber numberWithInteger:685]; self.internationalPrefix = @"0"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"8"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(8\\d{2})(\\d{3,4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"7"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(7\\d)(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[2-6]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{5})" withFormat:@"$1" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadata979 - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"\\d{9}" withPossibleNumberPattern:@"\\d{9}" withExample:@"123456789"]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:@"123456789"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:@"123456789"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"\\d{9}" withPossibleNumberPattern:@"\\d{9}" withExample:@"123456789"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"001"; self.countryCode = [NSNumber numberWithInteger:979]; self.internationalPrefix = nil; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = YES; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataZM - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[289]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"21[1-8]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"211234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9(?:5[05]|6\\d|7[1-9])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"955123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"ZM"; self.countryCode = [NSNumber numberWithInteger:260]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[29]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([29]\\d)(\\d{7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"8"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(800)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataAC - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[46]\\d{4}|[01589]\\d{5}" withPossibleNumberPattern:@"\\d{5,6}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6[2-467]\\d{3}" withPossibleNumberPattern:@"\\d{5}" withExample:@"62889"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"4\\d{4}" withPossibleNumberPattern:@"\\d{5}" withExample:@"40123"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[01589]\\d{5}" withPossibleNumberPattern:@"\\d{6}" withExample:@"542011"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"AC"; self.countryCode = [NSNumber numberWithInteger:247]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataAD - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[346-9]|180)\\d{5}" withPossibleNumberPattern:@"\\d{6,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[78]\\d{5}" withPossibleNumberPattern:@"\\d{6}" withExample:@"712345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[346]\\d{5}" withPossibleNumberPattern:@"\\d{6}" withExample:@"312345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"180[02]\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"18001234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9\\d{5}" withPossibleNumberPattern:@"\\d{6}" withExample:@"912345"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"AD"; self.countryCode = [NSNumber numberWithInteger:376]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[346-9]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"1"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(180[02])(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataYT - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[268]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"269(?:6[0-4]|50)\\d{4}" withPossibleNumberPattern:@"\\d{9}" withExample:@"269601234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"639\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"639123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"801234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"YT"; self.countryCode = [NSNumber numberWithInteger:262]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"269|63"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataAE - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-79]\\d{7,8}|800\\d{2,9}" withPossibleNumberPattern:@"\\d{5,12}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-4679][2-8]\\d{6}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"22345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5[024-6]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"501234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"400\\d{6}|800\\d{2,9}" withPossibleNumberPattern:@"\\d{5,12}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[02]\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"900234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"700[05]\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"700012345"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"600[25]\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"600212345"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"AE"; self.countryCode = [NSNumber numberWithInteger:971]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2-4679][2-8]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([2-4679])(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"5"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(5\\d)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[479]0"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"([479]00)(\\d)(\\d{5})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"60|8"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"([68]00)(\\d{2,9})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataBA - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[3-9]\\d{7,8}" withPossibleNumberPattern:@"\\d{6,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[35]\\d|49)\\d{6}" withPossibleNumberPattern:@"\\d{6,8}" withExample:@"30123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6(?:03|44|71|[1-356])\\d{6}" withPossibleNumberPattern:@"\\d{8,9}" withExample:@"61123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8[08]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9[0246]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"90123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8[12]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"82123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"70[23]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"70223456"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"BA"; self.countryCode = [NSNumber numberWithInteger:387]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[3-5]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2-$3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"6[1-356]|[7-9]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"6[047]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{3})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataAF - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-7]\\d{8}" withPossibleNumberPattern:@"\\d{7,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[25][0-8]|[34][0-4]|6[0-5])[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"234567890"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7(?:[014-9]\\d{7}|2[89]\\d{6})" withPossibleNumberPattern:@"\\d{9}" withExample:@"701234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"AF"; self.countryCode = [NSNumber numberWithInteger:93]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2-7]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([2-7]\\d)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataBB - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2589]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"246(?:2(?:2[78]|7[0-4])|4(?:1[024-6]|2\\d|3[2-9])|5(?:20|[34]\\d|54|7[1-3])|6(?:2\\d|38)|7(?:37|57)|9(?:1[89]|63))\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"2464123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"246(?:2(?:[356]\\d|4[0-57-9]|8[0-79])|45\\d|8(?:[2-5]\\d|83))\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"2462501234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900\\d{7}|246976\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"24631\\d{5}" withPossibleNumberPattern:@"\\d{10}" withExample:@"2463101234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"246(?:292|41[7-9]|43[01])\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"2464301234"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"BB"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"246"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataAG - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2589]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"268(?:4(?:6[0-38]|84)|56[0-2])\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"2684601234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"268(?:464|7(?:2[0-9]|64|7[0-689]|8[02-68]))\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"2684641234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"26848[01]\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"2684801234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"26840[69]\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"2684061234"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"AG"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"268"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataBD - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-79]\\d{5,9}|1\\d{9}|8[0-7]\\d{4,8}" withPossibleNumberPattern:@"\\d{6,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:550\\d|7(?:1[0-267]|2[0-289]|3[0-29]|[46][01]|5[1-3]|7[017]|91)|8(?:0[125]|[139][1-6]|2[0157-9]|6[1-35]|7[1-5]|8[1-8]|90)|9(?:0[0-2]|1[0-4]|2[568]|3[3-6]|5[5-7]|6[0167]|7[15]|8[0146-8]))\\d{4}|3(?:12?[5-7]\\d{2}|0(?:2(?:[025-79]\\d|[348]\\d{1,2})|3(?:[2-4]\\d|[56]\\d?))|2(?:1\\d{2}|2(?:[12]\\d|[35]\\d{1,2}|4\\d?))|3(?:1\\d{2}|2(?:[2356]\\d|4\\d{1,2}))|4(?:1\\d{2}|2(?:2\\d{1,2}|[47]|5\\d{2}))|5(?:1\\d{2}|29)|[67]1\\d{2}|8(?:1\\d{2}|2(?:2\\d{2}|3|4\\d)))\\d{3}|4(?:0(?:2(?:[09]\\d|7)|33\\d{2})|1\\d{3}|2(?:1\\d{2}|2(?:[25]\\d?|[348]\\d|[67]\\d{1,2}))|3(?:1\\d{2}(?:\\d{2})?|2(?:[045]\\d|[236-9]\\d{1,2})|32\\d{2})|4(?:[18]\\d{2}|2(?:[2-46]\\d{2}|3)|5[25]\\d{2})|5(?:1\\d{2}|2(?:3\\d|5))|6(?:[18]\\d{2}|2(?:3(?:\\d{2})?|[46]\\d{1,2}|5\\d{2}|7\\d)|5(?:3\\d?|4\\d|[57]\\d{1,2}|6\\d{2}|8))|71\\d{2}|8(?:[18]\\d{2}|23\\d{2}|54\\d{2})|9(?:[18]\\d{2}|2[2-5]\\d{2}|53\\d{1,2}))\\d{3}|5(?:02[03489]\\d{2}|1\\d{2}|2(?:1\\d{2}|2(?:2(?:\\d{2})?|[457]\\d{2}))|3(?:1\\d{2}|2(?:[37](?:\\d{2})?|[569]\\d{2}))|4(?:1\\d{2}|2[46]\\d{2})|5(?:1\\d{2}|26\\d{1,2})|6(?:[18]\\d{2}|2|53\\d{2})|7(?:1|24)\\d{2}|8(?:1|26)\\d{2}|91\\d{2})\\d{3}|6(?:0(?:1\\d{2}|2(?:3\\d{2}|4\\d{1,2}))|2(?:2[2-5]\\d{2}|5(?:[3-5]\\d{2}|7)|8\\d{2})|3(?:1|2[3478])\\d{2}|4(?:1|2[34])\\d{2}|5(?:1|2[47])\\d{2}|6(?:[18]\\d{2}|6(?:2(?:2\\d|[34]\\d{2})|5(?:[24]\\d{2}|3\\d|5\\d{1,2})))|72[2-5]\\d{2}|8(?:1\\d{2}|2[2-5]\\d{2})|9(?:1\\d{2}|2[2-6]\\d{2}))\\d{3}|7(?:(?:02|[3-589]1|6[12]|72[24])\\d{2}|21\\d{3}|32)\\d{3}|8(?:(?:4[12]|[5-7]2|1\\d?)|(?:0|3[12]|[5-7]1|217)\\d)\\d{4}|9(?:[35]1|(?:[024]2|81)\\d|(?:1|[24]1)\\d{2})\\d{3}" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"27111234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1[13-9]\\d|(?:3[78]|44)[02-9]|6(?:44|6[02-9]))\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1812345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[03]\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"96(?:0[49]|1[0-4]|6[69])\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9604123456"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"BD"; self.countryCode = [NSNumber numberWithInteger:880]; self.internationalPrefix = @"00[12]?"; self.preferredInternationalPrefix = @"00"; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"2"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(2)(\\d{7,8})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[3-79]1"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{4,6})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"1|3(?:0|[2-58]2)|4(?:0|[25]2|3[23]|[4689][25])|5(?:[02-578]2|6[25])|6(?:[0347-9]2|[26][25])|7[02-9]2|8(?:[023][23]|[4-7]2)|9(?:[02][23]|[458]2|6[016])"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{3,6})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"[3-79][2-9]|8"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3,7})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataAI - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2589]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2644(?:6[12]|9[78])\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"2644612345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"264(?:235|476|5(?:3[6-9]|8[1-4])|7(?:29|72))\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"2642351234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"AI"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"264"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataBE - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-9]\\d{7,8}" withPossibleNumberPattern:@"\\d{8,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1[0-69]|[23][2-8]|4[23]|5\\d|6[013-57-9]|71|8[1-79]|9[2-4])\\d{6}|80[2-8]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"12345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"4(?:6[0135-8]|[79]\\d|8[3-9])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"470123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:70[2-467]|90[0-79])\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"90123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"78\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"78123456"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"BE"; self.countryCode = [NSNumber numberWithInteger:32]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"4[6-9]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[23]|4[23]|9[2-4]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[156]|7[018]|8(?:0[1-9]|[1-79])"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"(?:80|9)0"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataCA - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-9]\\d{9}|3\\d{6}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:04|[23]6|[48]9|50)|3(?:06|43|65)|4(?:03|1[68]|3[178]|50)|5(?:06|1[49]|48|79|8[17])|6(?:0[04]|13|22|39|47)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[2-9]\\d{6}|310\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"2042345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:04|[23]6|[48]9|50)|3(?:06|43|65)|4(?:03|1[68]|3[178]|50)|5(?:06|1[49]|48|79|8[17])|6(?:0[04]|13|22|39|47)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"2042345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}|310\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"8002123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"CA"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataBF - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[267]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:0(?:49|5[23]|9[016-9])|4(?:4[569]|5[4-6]|7[0179])|5(?:[34]\\d|50))\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"20491234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6(?:[0-689]\\d|7[0-5])\\d{5}|7\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:@"70123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"BF"; self.countryCode = [NSNumber numberWithInteger:226]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataBG - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[23567]\\d{5,7}|[489]\\d{6,8}" withPossibleNumberPattern:@"\\d{5,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:[0-8]\\d{5,6}|9\\d{4,6})|(?:[36]\\d|5[1-9]|8[1-6]|9[1-7])\\d{5,6}|(?:4(?:[124-7]\\d|3[1-6])|7(?:0[1-9]|[1-9]\\d))\\d{4,5}" withPossibleNumberPattern:@"\\d{5,8}" withExample:@"2123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:8[7-9]\\d|9(?:8\\d|99))\\d{6}|4(?:3[0789]|8\\d)\\d{5}" withPossibleNumberPattern:@"\\d{8,9}" withExample:@"48123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"90123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"700\\d{5}" withPossibleNumberPattern:@"\\d{5,9}" withExample:@"70012345"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"BG"; self.countryCode = [NSNumber numberWithInteger:359]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"29"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(2)(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"2"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(2)(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"43[124-7]|70[1-9]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"43[124-7]|70[1-9]"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{2})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"[78]00"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"999"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"[356]|4[124-7]|7[1-9]|8[1-6]|9[1-7]"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{2,3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"48|8[7-9]|9[08]"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats7]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataZW - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:[012457-9]\\d{3,8}|6(?:[14]\\d{7}|\\d{4}))|[13-79]\\d{4,9}|8[06]\\d{8}" withPossibleNumberPattern:@"\\d{3,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:0(?:4\\d|5\\d{2})|2[278]\\d|48\\d|7(?:[1-7]\\d|[089]\\d{2})|8(?:[2-57-9]|[146]\\d{2})|98)|3(?:08|17|3[78]|7(?:[19]|[56]\\d)|8[37]|98)|5[15][78]|6(?:28\\d{2}|[36]7|75\\d|[69]8|8(?:7\\d|8)))\\d{3}|(?:2(?:1[39]|2[0157]|6[14]|7[35]|84)|329)\\d{7}|(?:1(?:3\\d{2}|9\\d|[4-8])|2(?:0\\d{2}|[569]\\d)|3(?:[26]|[013459]\\d)|5(?:0|5\\d{2}|[689]\\d)|6(?:[39]|[01246]\\d|[78]\\d{2}))\\d{3}|(?:29\\d|39|54)\\d{6}|(?:(?:25|54)83|2582\\d)\\d{3}|(?:4\\d{6,7}|9[2-9]\\d{4,5})" withPossibleNumberPattern:@"\\d{3,10}" withExample:@"1312345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7[1378]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"711234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"86(?:1[12]|30|44|55|77|8[367]|99)\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8686123456"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"ZW"; self.countryCode = [NSNumber numberWithInteger:263]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"4|9[2-9]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([49])(\\d{3})(\\d{2,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"7"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(7\\d)(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"86[24]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(86\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"2(?:0[45]|2[278]|[49]8|[78])|3(?:08|17|3[78]|7[1569]|8[37]|98)|5[15][78]|6(?:[29]8|[38]7|6[78]|75|[89]8)"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"([2356]\\d{2})(\\d{3,5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"2(?:1[39]|2[0157]|6[14]|7[35]|84)|329"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"1[3-9]|2[0569]|3[0-69]|5[05689]|6[0-46-9]"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"([1-356]\\d)(\\d{3,5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"[23]9|54"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"([235]\\d)(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"(?:25|54)8"]; [numberFormats7_patternArray addObject:@"258[23]|5483"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"([25]\\d{3})(\\d{3,5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats7]; NSMutableArray *numberFormats8_patternArray = [[NSMutableArray alloc] init]; [numberFormats8_patternArray addObject:@"86"]; NBNumberFormat *numberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(8\\d{3})(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats8_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats8]; NSMutableArray *numberFormats9_patternArray = [[NSMutableArray alloc] init]; [numberFormats9_patternArray addObject:@"80"]; NBNumberFormat *numberFormats9 = [[NBNumberFormat alloc] initWithPattern:@"(80\\d)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats9_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats9]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataAL - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-57]\\d{7}|6\\d{8}|8\\d{5,7}|9\\d{5}" withPossibleNumberPattern:@"\\d{5,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:[168][1-9]|[247]\\d|9[1-7])|3(?:1[1-3]|[2-6]\\d|[79][1-8]|8[1-9])|4\\d{2}|5(?:1[1-4]|[2-578]\\d|6[1-5]|9[1-7])|8(?:[19][1-5]|[2-6]\\d|[78][1-7]))\\d{5}" withPossibleNumberPattern:@"\\d{5,8}" withExample:@"22345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6[6-9]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"661234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"8001234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900\\d{3}" withPossibleNumberPattern:@"\\d{6}" withExample:@"900123"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"808\\d{3}" withPossibleNumberPattern:@"\\d{6}" withExample:@"808123"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"700\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"70012345"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"AL"; self.countryCode = [NSNumber numberWithInteger:355]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"4[0-6]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(4)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"6"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(6[6-9])(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[2358][2-5]|4[7-9]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"[235][16-9]|8[016-9]|[79]"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3,5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataCC - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1458]\\d{5,9}" withPossibleNumberPattern:@"\\d{6,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"89162\\d{4}" withPossibleNumberPattern:@"\\d{8,9}" withExample:@"891621234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"14(?:5\\d|71)\\d{5}|4(?:[0-2]\\d|3[0-57-9]|4[47-9]|5[0-25-9]|6[6-9]|7[02-9]|8[147-9]|9[017-9])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"412345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"180(?:0\\d{3}|2)\\d{3}" withPossibleNumberPattern:@"\\d{7,10}" withExample:@"1800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"190[0126]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1900123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"13(?:00\\d{2})?\\d{4}" withPossibleNumberPattern:@"\\d{6,10}" withExample:@"1300123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"500\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"500123456"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"550\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"550123456"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"CC"; self.countryCode = [NSNumber numberWithInteger:61]; self.internationalPrefix = @"(?:14(?:1[14]|34|4[17]|[56]6|7[47]|88))?001[14-689]"; self.preferredInternationalPrefix = @"0011"; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataBH - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[136-9]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1(?:3[1356]|6[0156]|7\\d)\\d|6(?:1[16]\\d|500|6(?:0\\d|3[12]|44|7[7-9])|9[69][69])|7(?:1(?:11|78)|7\\d{2}))\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"17001234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:3(?:[1-4679]\\d|5[013-69]|8[0-47-9])\\d|6(?:3(?:00|33|6[16])|6(?:[69]\\d|3[03-9]|7[0-6])))\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"36001234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:87|9[014578])\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"90123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"84\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"84123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"BH"; self.countryCode = [NSNumber numberWithInteger:973]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataAM - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-9]\\d{7}" withPossibleNumberPattern:@"\\d{5,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1[01]\\d|2(?:2[2-46]|3[1-8]|4[2-69]|5[2-7]|6[1-9]|8[1-7])|3[12]2|47\\d)\\d{5}" withPossibleNumberPattern:@"\\d{5,8}" withExample:@"10123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:4[139]|55|77|9[1-9])\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"77123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90[016]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"90012345"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[1-4]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80112345"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"60[2-6]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"60271234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"AM"; self.countryCode = [NSNumber numberWithInteger:374]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"1|47"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"4[139]|[5-7]|9[1-9]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[23]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"8|90"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0 $1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataCD - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-6]\\d{6}|[18]\\d{6,8}|9\\d{8}" withPossibleNumberPattern:@"\\d{7,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:2\\d{7}|\\d{6})|[2-6]\\d{6}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"1234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:[0-2459]\\d{2}|8)\\d{5}|9[7-9]\\d{7}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"991234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"CD"; self.countryCode = [NSNumber numberWithInteger:243]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"12"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"8[0-2459]|9"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([89]\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"88"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"[1-6]"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataBI - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[267]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"22\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"22201234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:29|6[189]|7[124-9])\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"79561234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"BI"; self.countryCode = [NSNumber numberWithInteger:257]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataBJ - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2689]\\d{7}|7\\d{3}" withPossibleNumberPattern:@"\\d{4,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:02|1[037]|2[45]|3[68])\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"20211234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:6[1-8]|9[03-9])\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"90011234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7[3-5]\\d{2}" withPossibleNumberPattern:@"\\d{4}" withExample:@"7312"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"857[58]\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"85751234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"81\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"81123456"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"BJ"; self.countryCode = [NSNumber numberWithInteger:229]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataAO - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[29]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2\\d(?:[26-9]\\d|\\d[26-9])\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"222123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9[1-49]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"923123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"AO"; self.countryCode = [NSNumber numberWithInteger:244]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataCF - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[278]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2[12]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"21612345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7[0257]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"70012345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8776\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"87761234"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"CF"; self.countryCode = [NSNumber numberWithInteger:236]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataCG - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[028]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"222[1-589]\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"222123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"0[14-6]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"061234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"800123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"CG"; self.countryCode = [NSNumber numberWithInteger:242]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[02]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"8"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataBL - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[56]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"590(?:2[7-9]|5[12]|87)\\d{4}" withPossibleNumberPattern:@"\\d{9}" withExample:@"590271234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"690(?:0[0-7]|[1-9]\\d)\\d{4}" withPossibleNumberPattern:@"\\d{9}" withExample:@"690301234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"BL"; self.countryCode = [NSNumber numberWithInteger:590]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadata800 - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"\\d{8}" withPossibleNumberPattern:@"\\d{8}" withExample:@"12345678"]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:@"12345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:@"12345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"\\d{8}" withPossibleNumberPattern:@"\\d{8}" withExample:@"12345678"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"001"; self.countryCode = [NSNumber numberWithInteger:800]; self.internationalPrefix = nil; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = YES; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataCH - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-9]\\d{8}|860\\d{9}" withPossibleNumberPattern:@"\\d{9}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2[12467]|3[1-4]|4[134]|5[256]|6[12]|[7-9]1)\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"212345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7[5-9]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"781234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90[016]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"900123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"84[0248]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"840123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"878\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"878123456"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"74[0248]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"740123456"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5[18]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"581234567"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"860\\d{9}" withPossibleNumberPattern:@"\\d{12}" withExample:@"860123456789"]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"CH"; self.countryCode = [NSNumber numberWithInteger:41]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2-7]|[89]1"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([2-9]\\d)(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"8[047]|90"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([89]\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"860"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4 $5" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataBM - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[4589]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"441(?:2(?:02|23|61|[3479]\\d)|[46]\\d{2}|5(?:4\\d|60|89)|824)\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"4412345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"441(?:[37]\\d|5[0-39])\\d{5}" withPossibleNumberPattern:@"\\d{10}" withExample:@"4413701234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"BM"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"441"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataAR - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"11\\d{8}|[2368]\\d{9}|9\\d{10}" withPossibleNumberPattern:@"\\d{6,11}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"11\\d{8}|(?:2(?:2(?:[013]\\d|2[13-79]|4[1-6]|5[2457]|6[124-8]|7[1-4]|8[13-6]|9[1267])|3(?:1[467]|2[03-6]|3[13-8]|[49][2-6]|5[2-8]|[067]\\d)|4(?:7[3-8]|9\\d)|6(?:[01346]\\d|2[24-6]|5[15-8])|80\\d|9(?:[0124789]\\d|3[1-6]|5[234]|6[2-46]))|3(?:3(?:2[79]|6\\d|8[2578])|4(?:[78]\\d|0[0124-9]|[1-35]\\d|4[24-7]|6[02-9]|9[123678])|5(?:[138]\\d|2[1245]|4[1-9]|6[2-4]|7[1-6])|6[24]\\d|7(?:[0469]\\d|1[1568]|2[013-9]|3[145]|5[14-8]|7[2-57]|8[0-24-9])|8(?:[013578]\\d|2[15-7]|4[13-6]|6[1-357-9]|9[124]))|670\\d)\\d{6}" withPossibleNumberPattern:@"\\d{6,10}" withExample:@"1123456789"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"675\\d{7}|9(?:11[2-9]\\d{7}|(?:2(?:2[013]|3[067]|49|6[01346]|80|9[147-9])|3(?:36|4[12358]|5[138]|6[24]|7[069]|8[013578]))[2-9]\\d{6}|\\d{4}[2-9]\\d{5})" withPossibleNumberPattern:@"\\d{6,11}" withExample:@"91123456789"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"60[04579]\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"6001234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"810\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8101234567"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"810\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8101234567"]; self.codeID = @"AR"; self.countryCode = [NSNumber numberWithInteger:54]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0?(?:(11|2(?:2(?:02?|[13]|2[13-79]|4[1-6]|5[2457]|6[124-8]|7[1-4]|8[13-6]|9[1267])|3(?:02?|1[467]|2[03-6]|3[13-8]|[49][2-6]|5[2-8]|[67])|4(?:7[3-578]|9)|6(?:[0136]|2[24-6]|4[6-8]?|5[15-8])|80|9(?:0[1-3]|[19]|2\\d|3[1-6]|4[02568]?|5[2-4]|6[2-46]|72?|8[23]?))|3(?:3(?:2[79]|6|8[2578])|4(?:0[0-24-9]|[12]|3[5-8]?|4[24-7]|5[4-68]?|6[02-9]|7[126]|8[2379]?|9[1-36-8])|5(?:1|2[1245]|3[237]?|4[1-46-9]|6[2-4]|7[1-6]|8[2-5]?)|6[24]|7(?:[069]|1[1568]|2[15]|3[145]|4[13]|5[14-8]|7[2-57]|8[126])|8(?:[01]|2[15-7]|3[2578]?|4[13-6]|5[4-8]?|6[1-357-9]|7[36-8]?|8[5-8]?|9[124])))?15)?"; self.nationalPrefixTransformRule = @"9$1"; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[68]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([68]\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[2-9]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[2-9]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"[2-9]"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"911"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(9)(11)(\\d{4})(\\d{4})" withFormat:@"$2 15-$3-$4" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"9(?:2[234689]|3[3-8])"]; [numberFormats5_patternArray addObject:@"9(?:2(?:2[013]|3[067]|49|6[01346]|80|9[147-9])|3(?:36|4[1-358]|5[138]|6[24]|7[069]|8[013578]))"]; [numberFormats5_patternArray addObject:@"9(?:2(?:2(?:0[013-9]|[13])|3(?:0[013-9]|[67])|49|6(?:[0136]|4[0-59])|8|9(?:[19]|44|7[013-9]|8[14]))|3(?:36|4(?:[12]|3[456]|[58]4)|5(?:1|3[0-24-689]|8[46])|6|7[069]|8(?:[01]|34|[578][45])))"]; [numberFormats5_patternArray addObject:@"9(?:2(?:2(?:0[013-9]|[13])|3(?:0[013-9]|[67])|49|6(?:[0136]|4[0-59])|8|9(?:[19]|44|7[013-9]|8[14]))|3(?:36|4(?:[12]|3(?:4|5[014]|6[1239])|[58]4)|5(?:1|3[0-24-689]|8[46])|6|7[069]|8(?:[01]|34|[578][45])))"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(9)(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$2 15-$3-$4" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"9[23]"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(9)(\\d{4})(\\d{2})(\\d{4})" withFormat:@"$2 15-$3-$4" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"1"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(11)(\\d{4})(\\d{4})" withFormat:@"$1 $2-$3" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats7]; NSMutableArray *numberFormats8_patternArray = [[NSMutableArray alloc] init]; [numberFormats8_patternArray addObject:@"2(?:2[013]|3[067]|49|6[01346]|80|9[147-9])|3(?:36|4[1-358]|5[138]|6[24]|7[069]|8[013578])"]; [numberFormats8_patternArray addObject:@"2(?:2(?:0[013-9]|[13])|3(?:0[013-9]|[67])|49|6(?:[0136]|4[0-59])|8|9(?:[19]|44|7[013-9]|8[14]))|3(?:36|4(?:[12]|3[456]|[58]4)|5(?:1|3[0-24-689]|8[46])|6|7[069]|8(?:[01]|34|[578][45]))"]; [numberFormats8_patternArray addObject:@"2(?:2(?:0[013-9]|[13])|3(?:0[013-9]|[67])|49|6(?:[0136]|4[0-59])|8|9(?:[19]|44|7[013-9]|8[14]))|3(?:36|4(?:[12]|3(?:4|5[014]|6[1239])|[58]4)|5(?:1|3[0-24-689]|8[46])|6|7[069]|8(?:[01]|34|[578][45]))"]; NBNumberFormat *numberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2-$3" withLeadingDigitsPatterns:numberFormats8_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats8]; NSMutableArray *numberFormats9_patternArray = [[NSMutableArray alloc] init]; [numberFormats9_patternArray addObject:@"[23]"]; NBNumberFormat *numberFormats9 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{2})(\\d{4})" withFormat:@"$1 $2-$3" withLeadingDigitsPatterns:numberFormats9_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats9]; NSMutableArray *numberFormats10_patternArray = [[NSMutableArray alloc] init]; [numberFormats10_patternArray addObject:@"1[012]|911"]; NBNumberFormat *numberFormats10 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})" withFormat:@"$1" withLeadingDigitsPatterns:numberFormats10_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats10]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *intlNumberFormats0_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats0_patternArray addObject:@"[68]"]; NBNumberFormat *intlNumberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([68]\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:intlNumberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats0]; NSMutableArray *intlNumberFormats1_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats1_patternArray addObject:@"911"]; NBNumberFormat *intlNumberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(9)(11)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3-$4" withLeadingDigitsPatterns:intlNumberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats1]; NSMutableArray *intlNumberFormats2_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats2_patternArray addObject:@"9(?:2[234689]|3[3-8])"]; [intlNumberFormats2_patternArray addObject:@"9(?:2(?:2[013]|3[067]|49|6[01346]|80|9[147-9])|3(?:36|4[1-358]|5[138]|6[24]|7[069]|8[013578]))"]; [intlNumberFormats2_patternArray addObject:@"9(?:2(?:2(?:0[013-9]|[13])|3(?:0[013-9]|[67])|49|6(?:[0136]|4[0-59])|8|9(?:[19]|44|7[013-9]|8[14]))|3(?:36|4(?:[12]|3[456]|[58]4)|5(?:1|3[0-24-689]|8[46])|6|7[069]|8(?:[01]|34|[578][45])))"]; [intlNumberFormats2_patternArray addObject:@"9(?:2(?:2(?:0[013-9]|[13])|3(?:0[013-9]|[67])|49|6(?:[0136]|4[0-59])|8|9(?:[19]|44|7[013-9]|8[14]))|3(?:36|4(?:[12]|3(?:4|5[014]|6[1239])|[58]4)|5(?:1|3[0-24-689]|8[46])|6|7[069]|8(?:[01]|34|[578][45])))"]; NBNumberFormat *intlNumberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(9)(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3-$4" withLeadingDigitsPatterns:intlNumberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats2]; NSMutableArray *intlNumberFormats3_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats3_patternArray addObject:@"9[23]"]; NBNumberFormat *intlNumberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(9)(\\d{4})(\\d{2})(\\d{4})" withFormat:@"$1 $2 $3-$4" withLeadingDigitsPatterns:intlNumberFormats3_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats3]; NSMutableArray *intlNumberFormats4_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats4_patternArray addObject:@"1"]; NBNumberFormat *intlNumberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(11)(\\d{4})(\\d{4})" withFormat:@"$1 $2-$3" withLeadingDigitsPatterns:intlNumberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats4]; NSMutableArray *intlNumberFormats5_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats5_patternArray addObject:@"2(?:2[013]|3[067]|49|6[01346]|80|9[147-9])|3(?:36|4[1-358]|5[138]|6[24]|7[069]|8[013578])"]; [intlNumberFormats5_patternArray addObject:@"2(?:2(?:0[013-9]|[13])|3(?:0[013-9]|[67])|49|6(?:[0136]|4[0-59])|8|9(?:[19]|44|7[013-9]|8[14]))|3(?:36|4(?:[12]|3[456]|[58]4)|5(?:1|3[0-24-689]|8[46])|6|7[069]|8(?:[01]|34|[578][45]))"]; [intlNumberFormats5_patternArray addObject:@"2(?:2(?:0[013-9]|[13])|3(?:0[013-9]|[67])|49|6(?:[0136]|4[0-59])|8|9(?:[19]|44|7[013-9]|8[14]))|3(?:36|4(?:[12]|3(?:4|5[014]|6[1239])|[58]4)|5(?:1|3[0-24-689]|8[46])|6|7[069]|8(?:[01]|34|[578][45]))"]; NBNumberFormat *intlNumberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2-$3" withLeadingDigitsPatterns:intlNumberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats5]; NSMutableArray *intlNumberFormats6_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats6_patternArray addObject:@"[23]"]; NBNumberFormat *intlNumberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{2})(\\d{4})" withFormat:@"$1 $2-$3" withLeadingDigitsPatterns:intlNumberFormats6_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats6]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataCI - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[02-8]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:0[023]|1[02357]|[23][045]|4[03-5])|3(?:0[06]|1[069]|[2-4][07]|5[09]|6[08]))\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"21234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:0[1-9]|4\\d|5[14-9]|6[015-79]|7[578]|87)\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"01234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"CI"; self.countryCode = [NSNumber numberWithInteger:225]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataBN - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-578]\\d{6}" withPossibleNumberPattern:@"\\d{7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:[013-9]\\d|2[0-7])\\d{4}|[3-5]\\d{6}" withPossibleNumberPattern:@"\\d{7}" withExample:@"2345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"22[89]\\d{4}|[78]\\d{6}" withPossibleNumberPattern:@"\\d{7}" withExample:@"7123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"BN"; self.countryCode = [NSNumber numberWithInteger:673]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([2-578]\\d{2})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataDE - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-35-9]\\d{3,14}|4(?:[0-8]\\d{4,12}|9(?:[0-37]\\d|4(?:[1-35-8]|4\\d?)|5\\d{1,2}|6[1-8]\\d?)\\d{2,8})" withPossibleNumberPattern:@"\\d{2,15}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[246]\\d{5,13}|3(?:0\\d{3,13}|2\\d{9}|[3-9]\\d{4,13})|5(?:0[2-8]|[1256]\\d|[38][0-8]|4\\d{0,2}|[79][0-7])\\d{3,11}|7(?:0[2-8]|[1-9]\\d)\\d{3,10}|8(?:0[2-9]|[1-9]\\d)\\d{3,10}|9(?:0[6-9]\\d{3,10}|1\\d{4,12}|[2-9]\\d{4,11})" withPossibleNumberPattern:@"\\d{2,15}" withExample:@"30123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:5[0-25-9]\\d{8}|6[023]\\d{7,8}|7(?:[0-57-9]\\d?|6\\d)\\d{7})" withPossibleNumberPattern:@"\\d{10,11}" withExample:@"15123456789"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{7,12}" withPossibleNumberPattern:@"\\d{10,15}" withExample:@"8001234567890"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"137[7-9]\\d{6}|900(?:[135]\\d{6}|9\\d{7})" withPossibleNumberPattern:@"\\d{10,11}" withExample:@"9001234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:3(?:7[1-6]\\d{6}|8\\d{4})|80\\d{5,11})" withPossibleNumberPattern:@"\\d{7,14}" withExample:@"18012345"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"700\\d{8}" withPossibleNumberPattern:@"\\d{11}" withExample:@"70012345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"16(?:4\\d{1,10}|[89]\\d{1,11})" withPossibleNumberPattern:@"\\d{4,14}" withExample:@"16412345"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"18(?:1\\d{5,11}|[2-9]\\d{8})" withPossibleNumberPattern:@"\\d{8,14}" withExample:@"18500123456"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:5(?:(?:2\\d55|7\\d99|9\\d33)\\d{7}|(?:[034568]00|113)\\d{8})|6(?:013|255|399)\\d{7,8}|7(?:[015]13|[234]55|[69]33|[78]99)\\d{7,8})" withPossibleNumberPattern:@"\\d{12,13}" withExample:@"177991234567"]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"DE"; self.countryCode = [NSNumber numberWithInteger:49]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"1[67]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(1\\d{2})(\\d{7,8})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"15[0568]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(15\\d{3})(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"15"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(1\\d{3})(\\d{7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"3[02]|40|[68]9"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3,11})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"2(?:\\d1|0[2389]|1[24]|28|34)|3(?:[3-9][15]|40)|[4-8][1-9]1|9(?:06|[1-9]1)"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3,11})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"[24-6]|[7-9](?:\\d[1-9]|[1-9]\\d)|3(?:[3569][02-46-9]|4[2-4679]|7[2-467]|8[2-46-8])"]; [numberFormats5_patternArray addObject:@"[24-6]|[7-9](?:\\d[1-9]|[1-9]\\d)|3(?:3(?:0[1-467]|2[127-9]|3[124578]|[46][1246]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|3[1357]|4[13578]|6[1246]|7[1356]|9[1346])|5(?:0[14]|2[1-3589]|3[1357]|4[1246]|6[1-4]|7[1346]|8[13568]|9[1246])|6(?:0[356]|2[1-489]|3[124-6]|4[1347]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|3[1357]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|4[1347]|6[0135-9]|7[1467]|8[136])|9(?:0[12479]|2[1358]|3[1357]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{2,11})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"3"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(3\\d{4})(\\d{1,10})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"800"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(800)(\\d{7,12})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats7]; NSMutableArray *numberFormats8_patternArray = [[NSMutableArray alloc] init]; [numberFormats8_patternArray addObject:@"(?:18|90)0|137"]; [numberFormats8_patternArray addObject:@"1(?:37|80)|900[1359]"]; NBNumberFormat *numberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d)(\\d{4,10})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats8_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats8]; NSMutableArray *numberFormats9_patternArray = [[NSMutableArray alloc] init]; [numberFormats9_patternArray addObject:@"181"]; NBNumberFormat *numberFormats9 = [[NBNumberFormat alloc] initWithPattern:@"(1\\d{2})(\\d{5,11})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats9_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats9]; NSMutableArray *numberFormats10_patternArray = [[NSMutableArray alloc] init]; [numberFormats10_patternArray addObject:@"185"]; [numberFormats10_patternArray addObject:@"1850"]; [numberFormats10_patternArray addObject:@"18500"]; NBNumberFormat *numberFormats10 = [[NBNumberFormat alloc] initWithPattern:@"(18\\d{3})(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats10_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats10]; NSMutableArray *numberFormats11_patternArray = [[NSMutableArray alloc] init]; [numberFormats11_patternArray addObject:@"18[68]"]; NBNumberFormat *numberFormats11 = [[NBNumberFormat alloc] initWithPattern:@"(18\\d{2})(\\d{7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats11_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats11]; NSMutableArray *numberFormats12_patternArray = [[NSMutableArray alloc] init]; [numberFormats12_patternArray addObject:@"18[2-579]"]; NBNumberFormat *numberFormats12 = [[NBNumberFormat alloc] initWithPattern:@"(18\\d)(\\d{8})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats12_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats12]; NSMutableArray *numberFormats13_patternArray = [[NSMutableArray alloc] init]; [numberFormats13_patternArray addObject:@"700"]; NBNumberFormat *numberFormats13 = [[NBNumberFormat alloc] initWithPattern:@"(700)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats13_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats13]; NSMutableArray *numberFormats14_patternArray = [[NSMutableArray alloc] init]; [numberFormats14_patternArray addObject:@"138"]; NBNumberFormat *numberFormats14 = [[NBNumberFormat alloc] initWithPattern:@"(138)(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats14_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats14]; NSMutableArray *numberFormats15_patternArray = [[NSMutableArray alloc] init]; [numberFormats15_patternArray addObject:@"15[013-68]"]; NBNumberFormat *numberFormats15 = [[NBNumberFormat alloc] initWithPattern:@"(15[013-68])(\\d{2})(\\d{8})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats15_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats15]; NSMutableArray *numberFormats16_patternArray = [[NSMutableArray alloc] init]; [numberFormats16_patternArray addObject:@"15[279]"]; NBNumberFormat *numberFormats16 = [[NBNumberFormat alloc] initWithPattern:@"(15[279]\\d)(\\d{2})(\\d{7})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats16_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats16]; NSMutableArray *numberFormats17_patternArray = [[NSMutableArray alloc] init]; [numberFormats17_patternArray addObject:@"1(?:6[023]|7)"]; NBNumberFormat *numberFormats17 = [[NBNumberFormat alloc] initWithPattern:@"(1[67]\\d)(\\d{2})(\\d{7,8})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats17_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats17]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataAS - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[5689]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6846(?:22|33|44|55|77|88|9[19])\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"6846221234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"684(?:2(?:5[2468]|72)|7(?:3[13]|70))\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"6847331234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"AS"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"684"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataBO - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[23467]\\d{7}" withPossibleNumberPattern:@"\\d{7,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:2\\d{2}|5(?:11|[258]\\d|9[67])|6(?:12|2\\d|9[34])|8(?:2[34]|39|62))|3(?:3\\d{2}|4(?:6\\d|8[24])|8(?:25|42|5[257]|86|9[25])|9(?:2\\d|3[234]|4[248]|5[24]|6[2-6]|7\\d))|4(?:4\\d{2}|6(?:11|[24689]\\d|72)))\\d{4}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"22123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[67]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:@"71234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"BO"; self.countryCode = [NSNumber numberWithInteger:591]; self.internationalPrefix = @"00(1\\d)?"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0(1\\d)?"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[234]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([234])(\\d{7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC $1"]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[67]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([67]\\d{7})" withFormat:@"$1" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC $1"]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataAT - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-9]\\d{3,12}" withPossibleNumberPattern:@"\\d{3,13}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1\\d{3,12}|(?:2(?:1[467]|2[13-8]|5[2357]|6[1-46-8]|7[1-8]|8[124-7]|9[1458])|3(?:1[1-8]|3[23568]|4[5-7]|5[1378]|6[1-38]|8[3-68])|4(?:2[1-8]|35|63|7[1368]|8[2457])|5(?:12|2[1-8]|3[357]|4[147]|5[12578]|6[37])|6(?:13|2[1-47]|4[1-35-8]|5[468]|62)|7(?:2[1-8]|3[25]|4[13478]|5[68]|6[16-8]|7[1-6]|9[45]))\\d{3,10}" withPossibleNumberPattern:@"\\d{3,13}" withExample:@"1234567890"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6(?:5[0-3579]|6[013-9]|[7-9]\\d)\\d{4,10}" withPossibleNumberPattern:@"\\d{7,13}" withExample:@"664123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{6,10}" withPossibleNumberPattern:@"\\d{9,13}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:9(?:0[01]|3[019]))\\d{6,10}" withPossibleNumberPattern:@"\\d{9,13}" withExample:@"900123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:10\\d|2(?:[01]\\d|8\\d?))\\d{5,9}" withPossibleNumberPattern:@"\\d{8,13}" withExample:@"810123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"780\\d{6,10}" withPossibleNumberPattern:@"\\d{9,13}" withExample:@"780123456"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:(?:0[1-9]|17)\\d{2,10}|[79]\\d{3,11})|720\\d{6,10}" withPossibleNumberPattern:@"\\d{5,13}" withExample:@"50123"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"AT"; self.countryCode = [NSNumber numberWithInteger:43]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"116"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(116\\d{3})" withFormat:@"$1" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"1"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(1)(\\d{3,12})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"5[079]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(5\\d)(\\d{3,5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"5[079]"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(5\\d)(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"5[079]"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(5\\d)(\\d{4})(\\d{4,7})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"316|46|51|732|6(?:5[0-3579]|[6-9])|7(?:[28]0)|[89]"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3,10})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"2|3(?:1[1-578]|[3-8])|4[2378]|5[2-6]|6(?:[12]|4[1-9]|5[468])|7(?:2[1-8]|35|4[1-8]|[5-79])"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{3,9})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataCK - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-8]\\d{4}" withPossibleNumberPattern:@"\\d{5}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2\\d|3[13-7]|4[1-5])\\d{3}" withPossibleNumberPattern:@"\\d{5}" withExample:@"21234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[5-8]\\d{4}" withPossibleNumberPattern:@"\\d{5}" withExample:@"71234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"CK"; self.countryCode = [NSNumber numberWithInteger:682]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataAU - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-578]\\d{5,9}" withPossibleNumberPattern:@"\\d{6,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[237]\\d{8}|8(?:[6-8]\\d{3}|9(?:[02-9]\\d{2}|1(?:[0-57-9]\\d|6[0135-9])))\\d{4}" withPossibleNumberPattern:@"\\d{8,9}" withExample:@"212345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"14(?:5\\d|71)\\d{5}|4(?:[0-3]\\d|4[47-9]|5[0-25-9]|6[6-9]|7[02-9]|8[147-9]|9[017-9])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"412345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"180(?:0\\d{3}|2)\\d{3}" withPossibleNumberPattern:@"\\d{7,10}" withExample:@"1800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"19(?:0[0126]\\d|[679])\\d{5}" withPossibleNumberPattern:@"\\d{8,10}" withExample:@"1900123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"13(?:00\\d{3}|45[0-4]|\\d)\\d{3}" withPossibleNumberPattern:@"\\d{6,10}" withExample:@"1300123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"500\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"500123456"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"550\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"550123456"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"16\\d{3,7}" withPossibleNumberPattern:@"\\d{5,9}" withExample:@"1612345"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:3(?:00\\d{3}|45[0-4]|\\d)\\d{3}|80(?:0\\d{6}|2\\d{3}))" withPossibleNumberPattern:@"\\d{6,10}" withExample:@"1300123456"]; self.codeID = @"AU"; self.countryCode = [NSNumber numberWithInteger:61]; self.internationalPrefix = @"(?:14(?:1[14]|34|4[17]|[56]6|7[47]|88))?001[14-689]"; self.preferredInternationalPrefix = @"0011"; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2378]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([2378])(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[45]|14"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"16"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(16)(\\d{3})(\\d{2,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"1(?:[38]0|90)"]; [numberFormats3_patternArray addObject:@"1(?:[38]00|90)"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(1[389]\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"180"]; [numberFormats4_patternArray addObject:@"1802"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(180)(2\\d{3})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"19[13]"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(19\\d)(\\d{3})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"19[679]"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(19\\d{2})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"13[1-9]"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(13)(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats7]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = YES; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataCL - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[2-9]|600|123)\\d{7,8}" withPossibleNumberPattern:@"\\d{7,11}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:1962\\d{4}|2\\d{7}|32[0-2]\\d{5})|(?:3[2-5]|[47][1-35]|5[1-3578]|6[13-57])\\d{7}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"221234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9[4-9]\\d{7}" withPossibleNumberPattern:@"\\d{8,9}" withExample:@"961234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{6}|1230\\d{7}" withPossibleNumberPattern:@"\\d{9,11}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"600\\d{7,8}" withPossibleNumberPattern:@"\\d{10,11}" withExample:@"6001234567"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"44\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"441234567"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"600\\d{7,8}" withPossibleNumberPattern:@"\\d{10,11}" withExample:@"6001234567"]; self.codeID = @"CL"; self.countryCode = [NSNumber numberWithInteger:56]; self.internationalPrefix = @"(?:0|1(?:1[0-69]|2[0-57]|5[13-58]|69|7[0167]|8[018]))0"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0|(1(?:1[0-69]|2[0-57]|5[13-58]|69|7[0167]|8[018]))"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"2[23]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"($1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC ($1)"]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[357]|4[1-35]|6[13-57]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"($1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC ($1)"]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"9"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(9)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"44"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(44)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"60|8"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"([68]00)(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"60"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(600)(\\d{3})(\\d{2})(\\d{3})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"1"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(1230)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"219"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{5})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:@"($1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC ($1)"]; [numberFormats_FormatArray addObject:numberFormats7]; NSMutableArray *numberFormats8_patternArray = [[NSMutableArray alloc] init]; [numberFormats8_patternArray addObject:@"[1-9]"]; NBNumberFormat *numberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4,5})" withFormat:@"$1" withLeadingDigitsPatterns:numberFormats8_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats8]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *intlNumberFormats0_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats0_patternArray addObject:@"2[23]"]; NBNumberFormat *intlNumberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats0_patternArray withNationalPrefixFormattingRule:@"($1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC ($1)"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats0]; NSMutableArray *intlNumberFormats1_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats1_patternArray addObject:@"[357]|4[1-35]|6[13-57]"]; NBNumberFormat *intlNumberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats1_patternArray withNationalPrefixFormattingRule:@"($1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC ($1)"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats1]; NSMutableArray *intlNumberFormats2_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats2_patternArray addObject:@"9"]; NBNumberFormat *intlNumberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(9)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats2]; NSMutableArray *intlNumberFormats3_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats3_patternArray addObject:@"44"]; NBNumberFormat *intlNumberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(44)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats3]; NSMutableArray *intlNumberFormats4_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats4_patternArray addObject:@"60|8"]; NBNumberFormat *intlNumberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"([68]00)(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats4_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats4]; NSMutableArray *intlNumberFormats5_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats5_patternArray addObject:@"60"]; NBNumberFormat *intlNumberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(600)(\\d{3})(\\d{2})(\\d{3})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:intlNumberFormats5_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats5]; NSMutableArray *intlNumberFormats6_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats6_patternArray addObject:@"1"]; NBNumberFormat *intlNumberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(1230)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats6_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats6]; NSMutableArray *intlNumberFormats7_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats7_patternArray addObject:@"219"]; NBNumberFormat *intlNumberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{5})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:intlNumberFormats7_patternArray withNationalPrefixFormattingRule:@"($1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC ($1)"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats7]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataEC - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1\\d{9,10}|[2-8]\\d{7}|9\\d{8}" withPossibleNumberPattern:@"\\d{7,11}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-7][2-7]\\d{6}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"22123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9(?:39|[45][89]|[67][7-9]|[89]\\d)\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"991234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1800\\d{6,7}" withPossibleNumberPattern:@"\\d{10,11}" withExample:@"18001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-7]890\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"28901234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"EC"; self.countryCode = [NSNumber numberWithInteger:593]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[247]|[356][2-8]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{3})(\\d{4})" withFormat:@"$1 $2-$3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"9"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"1"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(1800)(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *intlNumberFormats0_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats0_patternArray addObject:@"[247]|[356][2-8]"]; NBNumberFormat *intlNumberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{3})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:intlNumberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats0]; NSMutableArray *intlNumberFormats1_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats1_patternArray addObject:@"9"]; NBNumberFormat *intlNumberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats1]; NSMutableArray *intlNumberFormats2_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats2_patternArray addObject:@"1"]; NBNumberFormat *intlNumberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(1800)(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats2_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats2]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataBQ - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[347]\\d{6}" withPossibleNumberPattern:@"\\d{7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:318[023]|416[023]|7(?:1[578]|50)\\d)\\d{3}" withPossibleNumberPattern:@"\\d{7}" withExample:@"7151234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:318[14-68]|416[15-9]|7(?:0[01]|7[07]|[89]\\d)\\d)\\d{3}" withPossibleNumberPattern:@"\\d{7}" withExample:@"3181234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"BQ"; self.countryCode = [NSNumber numberWithInteger:599]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataCM - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2368]\\d{7,8}" withPossibleNumberPattern:@"\\d{8,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:22|33|4[23])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"222123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6[5-9]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"671234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"88\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"88012345"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"CM"; self.countryCode = [NSNumber numberWithInteger:237]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[26]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([26])(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4 $5" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[23]|88"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"80"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(800)(\\d{2})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataBR - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-46-9]\\d{7,10}|5\\d{8,9}" withPossibleNumberPattern:@"\\d{8,11}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[14689][1-9]|2[12478]|3[1-578]|5[1-5]|7[13-579])[2-5]\\d{7}" withPossibleNumberPattern:@"\\d{8,11}" withExample:@"1123456789"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1[1-9](?:7|9\\d)\\d{7}|(?:2[12478]|3[1-578]|[689][1-9]|7[13-579])(?:[6-8]|9\\d?)\\d{7}|(?:4[1-9]|5[1-5])[6-9]\\d{7}" withPossibleNumberPattern:@"\\d{10,11}" withExample:@"11961234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{6,7}" withPossibleNumberPattern:@"\\d{8,11}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:300|[59]00\\d?)\\d{6}" withPossibleNumberPattern:@"\\d{8,11}" withExample:@"300123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:300\\d(?:\\d{2})?|40(?:0\\d|20))\\d{4}" withPossibleNumberPattern:@"\\d{8,10}" withExample:@"40041234"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:300\\d|40(?:0\\d|20))\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"40041234"]; self.codeID = @"BR"; self.countryCode = [NSNumber numberWithInteger:55]; self.internationalPrefix = @"00(?:1[245]|2[1-35]|31|4[13]|[56]5|99)"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0(?:(1[245]|2[1-35]|31|4[13]|[56]5|99)(\\d{10,11}))?"; self.nationalPrefixTransformRule = @"$2"; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2-9](?:[1-9]|0[1-9])"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"9(?:[1-9]|0[1-9])"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{5})(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"1[125689]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3,5})" withFormat:@"$1" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"(?:[1689][1-9]|2[12478]|3[1-578]|7[13-579])9"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{5})(\\d{4})" withFormat:@"$1 $2-$3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"($1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0 $CC ($1)"]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"[1-9][1-9]"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{4})(\\d{4})" withFormat:@"$1 $2-$3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"($1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0 $CC ($1)"]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"(?:300|40(?:0|20))"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"[3589]00"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"([3589]00)(\\d{2,3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *intlNumberFormats0_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats0_patternArray addObject:@"(?:[1689][1-9]|2[12478]|3[1-578]|7[13-579])9"]; NBNumberFormat *intlNumberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{5})(\\d{4})" withFormat:@"$1 $2-$3" withLeadingDigitsPatterns:intlNumberFormats0_patternArray withNationalPrefixFormattingRule:@"($1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0 $CC ($1)"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats0]; NSMutableArray *intlNumberFormats1_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats1_patternArray addObject:@"[1-9][1-9]"]; NBNumberFormat *intlNumberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{4})(\\d{4})" withFormat:@"$1 $2-$3" withLeadingDigitsPatterns:intlNumberFormats1_patternArray withNationalPrefixFormattingRule:@"($1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0 $CC ($1)"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats1]; NSMutableArray *intlNumberFormats2_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats2_patternArray addObject:@"(?:300|40(?:0|20))"]; NBNumberFormat *intlNumberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:intlNumberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats2]; NSMutableArray *intlNumberFormats3_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats3_patternArray addObject:@"[3589]00"]; NBNumberFormat *intlNumberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"([3589]00)(\\d{2,3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats3]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataAW - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[25-9]\\d{6}" withPossibleNumberPattern:@"\\d{7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:2\\d|8[1-9])\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"5212345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:5(?:6\\d|9[2-478])|6(?:[039]0|22|4[01]|6[0-2])|7[34]\\d|9(?:6[45]|9[4-8]))\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"5601234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"8001234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"9001234"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"28\\d{5}|501\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"5011234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"AW"; self.countryCode = [NSNumber numberWithInteger:297]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataCN - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-7]\\d{6,11}|8[0-357-9]\\d{6,9}|9\\d{7,10}" withPossibleNumberPattern:@"\\d{4,12}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"21(?:100\\d{2}|95\\d{3,4}|\\d{8,10})|(?:10|2[02-57-9]|3(?:11|7[179])|4(?:[15]1|3[1-35])|5(?:1\\d|2[37]|3[12]|51|7[13-79]|9[15])|7(?:31|5[457]|6[09]|91)|8(?:[57]1|98))(?:100\\d{2}|95\\d{3,4}|\\d{8})|(?:3(?:1[02-9]|35|49|5\\d|7[02-68]|9[1-68])|4(?:1[02-9]|2[179]|3[3-9]|5[2-9]|6[4789]|7\\d|8[23])|5(?:3[03-9]|4[36]|5[02-9]|6[1-46]|7[028]|80|9[2-46-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[17]\\d|2[248]|3[04-9]|4[3-6]|5[0-4689]|6[2368]|9[02-9])|8(?:078|1[236-8]|2[5-7]|3\\d|5[1-9]|7[02-9]|8[3678]|9[1-7])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))(?:100\\d{2}|95\\d{3,4}|\\d{7})|80(?:29|6[03578]|7[018]|81)\\d{4}" withPossibleNumberPattern:@"\\d{4,12}" withExample:@"1012345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:[38]\\d|4[57]|5[0-35-9]|7[0136-8])\\d{8}" withPossibleNumberPattern:@"\\d{11}" withExample:@"13123456789"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:10)?800\\d{7}" withPossibleNumberPattern:@"\\d{10,12}" withExample:@"8001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"16[08]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"16812345"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"400\\d{7}|950\\d{7,8}|(?:10|2[0-57-9]|3(?:[157]\\d|35|49|9[1-68])|4(?:[17]\\d|2[179]|[35][1-9]|6[4789]|8[23])|5(?:[1357]\\d|2[37]|4[36]|6[1-46]|80|9[1-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]\\d|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]\\d|5[14-9]|8[3678]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\d|4[13]|5[1-5]))96\\d{3,4}" withPossibleNumberPattern:@"\\d{7,11}" withExample:@"4001234567"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:4|(?:10)?8)00\\d{7}|950\\d{7,8}" withPossibleNumberPattern:@"\\d{10,12}" withExample:@"4001234567"]; self.codeID = @"CN"; self.countryCode = [NSNumber numberWithInteger:86]; self.internationalPrefix = @"(1(?:[129]\\d{3}|79\\d{2}))?00"; self.preferredInternationalPrefix = @"00"; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"(1(?:[129]\\d{3}|79\\d{2}))|0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"80[2678]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(80\\d{2})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[48]00"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([48]00)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"100|95"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{5,6})" withFormat:@"$1" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"(?:10|2\\d)[19]"]; [numberFormats3_patternArray addObject:@"(?:10|2\\d)(?:10|9[56])"]; [numberFormats3_patternArray addObject:@"(?:10|2\\d)(?:100|9[56])"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{5,6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"[3-9]"]; [numberFormats4_patternArray addObject:@"[3-9]\\d{2}[19]"]; [numberFormats4_patternArray addObject:@"[3-9]\\d{2}(?:10|9[56])"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{5,6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"[2-9]"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3,4})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"21"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(21)(\\d{4})(\\d{4,6})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"10[1-9]|2[02-9]"]; [numberFormats7_patternArray addObject:@"10[1-9]|2[02-9]"]; [numberFormats7_patternArray addObject:@"10(?:[1-79]|8(?:[1-9]|0[1-9]))|2[02-9]"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"([12]\\d)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats7]; NSMutableArray *numberFormats8_patternArray = [[NSMutableArray alloc] init]; [numberFormats8_patternArray addObject:@"3(?:1[02-9]|35|49|5|7[02-68]|9[1-68])|4(?:1[02-9]|2[179]|[35][2-9]|6[4789]|7\\d|8[23])|5(?:3[03-9]|4[36]|5[02-9]|6[1-46]|7[028]|80|9[2-46-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]|2[248]|3[04-9]|4[3-6]|6[2368])|8(?:1[236-8]|2[5-7]|3|5[1-9]|7[02-9]|8[3678]|9[1-7])|9(?:0[1-3689]|1[1-79]|[379]|4[13]|5[1-5])"]; NBNumberFormat *numberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats8_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats8]; NSMutableArray *numberFormats9_patternArray = [[NSMutableArray alloc] init]; [numberFormats9_patternArray addObject:@"3(?:11|7[179])|4(?:[15]1|3[1-35])|5(?:1|2[37]|3[12]|51|7[13-79]|9[15])|7(?:31|5[457]|6[09]|91)|8(?:[57]1|98)"]; NBNumberFormat *numberFormats9 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats9_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats9]; NSMutableArray *numberFormats10_patternArray = [[NSMutableArray alloc] init]; [numberFormats10_patternArray addObject:@"807"]; [numberFormats10_patternArray addObject:@"8078"]; NBNumberFormat *numberFormats10 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats10_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats10]; NSMutableArray *numberFormats11_patternArray = [[NSMutableArray alloc] init]; [numberFormats11_patternArray addObject:@"1[3-578]"]; NBNumberFormat *numberFormats11 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats11_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats11]; NSMutableArray *numberFormats12_patternArray = [[NSMutableArray alloc] init]; [numberFormats12_patternArray addObject:@"108"]; [numberFormats12_patternArray addObject:@"1080"]; [numberFormats12_patternArray addObject:@"10800"]; NBNumberFormat *numberFormats12 = [[NBNumberFormat alloc] initWithPattern:@"(10800)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats12_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats12]; NSMutableArray *numberFormats13_patternArray = [[NSMutableArray alloc] init]; [numberFormats13_patternArray addObject:@"950"]; NBNumberFormat *numberFormats13 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{7,8})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats13_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats13]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *intlNumberFormats0_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats0_patternArray addObject:@"80[2678]"]; NBNumberFormat *intlNumberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(80\\d{2})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:intlNumberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats0]; NSMutableArray *intlNumberFormats1_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats1_patternArray addObject:@"[48]00"]; NBNumberFormat *intlNumberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([48]00)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats1]; NSMutableArray *intlNumberFormats2_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats2_patternArray addObject:@"(?:10|2\\d)[19]"]; [intlNumberFormats2_patternArray addObject:@"(?:10|2\\d)(?:10|9[56])"]; [intlNumberFormats2_patternArray addObject:@"(?:10|2\\d)(?:100|9[56])"]; NBNumberFormat *intlNumberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{5,6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:intlNumberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats2]; NSMutableArray *intlNumberFormats3_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats3_patternArray addObject:@"[3-9]"]; [intlNumberFormats3_patternArray addObject:@"[3-9]\\d{2}[19]"]; [intlNumberFormats3_patternArray addObject:@"[3-9]\\d{2}(?:10|9[56])"]; NBNumberFormat *intlNumberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{5,6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:intlNumberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats3]; NSMutableArray *intlNumberFormats4_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats4_patternArray addObject:@"21"]; NBNumberFormat *intlNumberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(21)(\\d{4})(\\d{4,6})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats4]; NSMutableArray *intlNumberFormats5_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats5_patternArray addObject:@"10[1-9]|2[02-9]"]; [intlNumberFormats5_patternArray addObject:@"10[1-9]|2[02-9]"]; [intlNumberFormats5_patternArray addObject:@"10(?:[1-79]|8(?:[1-9]|0[1-9]))|2[02-9]"]; NBNumberFormat *intlNumberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"([12]\\d)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats5]; NSMutableArray *intlNumberFormats6_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats6_patternArray addObject:@"3(?:1[02-9]|35|49|5|7[02-68]|9[1-68])|4(?:1[02-9]|2[179]|[35][2-9]|6[4789]|7\\d|8[23])|5(?:3[03-9]|4[36]|5[02-9]|6[1-46]|7[028]|80|9[2-46-9])|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]|2[248]|3[04-9]|4[3-6]|6[2368])|8(?:1[236-8]|2[5-7]|3|5[1-9]|7[02-9]|8[3678]|9[1-7])|9(?:0[1-3689]|1[1-79]|[379]|4[13]|5[1-5])"]; NBNumberFormat *intlNumberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats6_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats6]; NSMutableArray *intlNumberFormats7_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats7_patternArray addObject:@"3(?:11|7[179])|4(?:[15]1|3[1-35])|5(?:1|2[37]|3[12]|51|7[13-79]|9[15])|7(?:31|5[457]|6[09]|91)|8(?:[57]1|98)"]; NBNumberFormat *intlNumberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats7_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats7]; NSMutableArray *intlNumberFormats8_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats8_patternArray addObject:@"807"]; [intlNumberFormats8_patternArray addObject:@"8078"]; NBNumberFormat *intlNumberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats8_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:YES withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats8]; NSMutableArray *intlNumberFormats9_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats9_patternArray addObject:@"1[3-578]"]; NBNumberFormat *intlNumberFormats9 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats9_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats9]; NSMutableArray *intlNumberFormats10_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats10_patternArray addObject:@"108"]; [intlNumberFormats10_patternArray addObject:@"1080"]; [intlNumberFormats10_patternArray addObject:@"10800"]; NBNumberFormat *intlNumberFormats10 = [[NBNumberFormat alloc] initWithPattern:@"(10800)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats10_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats10]; NSMutableArray *intlNumberFormats11_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats11_patternArray addObject:@"950"]; NBNumberFormat *intlNumberFormats11 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{7,8})" withFormat:@"$1 $2" withLeadingDigitsPatterns:intlNumberFormats11_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats11]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataEE - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1\\d{3,4}|[3-9]\\d{6,7}|800\\d{6,7}" withPossibleNumberPattern:@"\\d{4,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:3[23589]|4[3-8]|6\\d|7[1-9]|88)\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"3212345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:5\\d|8[1-5])\\d{6}|5(?:[02]\\d{2}|1(?:[0-8]\\d|95)|5[0-478]\\d|64[0-4]|65[1-589])\\d{3}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"51234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800(?:0\\d{3}|1\\d|[2-9])\\d{3}" withPossibleNumberPattern:@"\\d{7,10}" withExample:@"80012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:40\\d{2}|900)\\d{4}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"9001234"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"70[0-2]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"70012345"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:2[01245]|3[0-6]|4[1-489]|5[0-59]|6[1-46-9]|7[0-27-9]|8[189]|9[012])\\d{1,2}" withPossibleNumberPattern:@"\\d{4,5}" withExample:@"12123"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1\\d{3,4}|800[2-9]\\d{3}" withPossibleNumberPattern:@"\\d{4,7}" withExample:@"8002123"]; self.codeID = @"EE"; self.countryCode = [NSNumber numberWithInteger:372]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[369]|4[3-8]|5(?:[0-2]|5[0-478]|6[45])|7[1-9]"]; [numberFormats0_patternArray addObject:@"[369]|4[3-8]|5(?:[02]|1(?:[0-8]|95)|5[0-478]|6(?:4[0-4]|5[1-589]))|7[1-9]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([3-79]\\d{2})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"70"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(70)(\\d{2})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"800"]; [numberFormats2_patternArray addObject:@"8000"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(8000)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"40|5|8(?:00|[1-5])"]; [numberFormats3_patternArray addObject:@"40|5|8(?:00[1-9]|[1-5])"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"([458]\\d{3})(\\d{3,4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataBS - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2589]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"242(?:3(?:02|[236][1-9]|4[0-24-9]|5[0-68]|7[3467]|8[0-4]|9[2-467])|461|502|6(?:0[1-3]|12|7[67]|8[78]|9[89])|7(?:02|88))\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"2423456789"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"242(?:3(?:5[79]|[79]5)|4(?:[2-4][1-9]|5[1-8]|6[2-8]|7\\d|81)|5(?:2[45]|3[35]|44|5[1-9]|65|77)|6[34]6|727)\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"2423591234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"242300\\d{4}|8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"BS"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"242"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataDJ - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[27]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:1[2-5]|7[45])\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"21360003"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"77[0-26-8]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"77831001"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"DJ"; self.countryCode = [NSNumber numberWithInteger:253]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataAX - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[135]\\d{5,9}|[27]\\d{4,9}|4\\d{5,10}|6\\d{7,8}|8\\d{6,9}" withPossibleNumberPattern:@"\\d{5,12}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"18[1-8]\\d{3,9}" withPossibleNumberPattern:@"\\d{6,12}" withExample:@"1812345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"4\\d{5,10}|50\\d{4,8}" withPossibleNumberPattern:@"\\d{6,11}" withExample:@"412345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{4,7}" withPossibleNumberPattern:@"\\d{7,10}" withExample:@"8001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[67]00\\d{5,6}" withPossibleNumberPattern:@"\\d{8,9}" withExample:@"600123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[13]0\\d{4,8}|2(?:0(?:[016-8]\\d{3,7}|[2-59]\\d{2,7})|9\\d{4,8})|60(?:[12]\\d{5,6}|6\\d{7})|7(?:1\\d{7}|3\\d{8}|5[03-9]\\d{2,7})" withPossibleNumberPattern:@"\\d{5,10}" withExample:@"10112345"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[13]00\\d{3,7}|2(?:0(?:0\\d{3,7}|2[023]\\d{1,6}|9[89]\\d{1,6}))|60(?:[12]\\d{5,6}|6\\d{7})|7(?:1\\d{7}|3\\d{8}|5[03-9]\\d{2,7})" withPossibleNumberPattern:@"\\d{5,10}" withExample:@"100123"]; self.codeID = @"AX"; self.countryCode = [NSNumber numberWithInteger:358]; self.internationalPrefix = @"00|99[049]"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataCO - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[13]\\d{0,3}|[24-8])\\d{7}" withPossibleNumberPattern:@"\\d{7,11}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[124-8][2-9]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"12345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3(?:0[0-5]|1\\d|2[0-2]|5[01])\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"3211234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1800\\d{7}" withPossibleNumberPattern:@"\\d{11}" withExample:@"18001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"19(?:0[01]|4[78])\\d{7}" withPossibleNumberPattern:@"\\d{11}" withExample:@"19001234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"CO"; self.countryCode = [NSNumber numberWithInteger:57]; self.internationalPrefix = @"00(?:4(?:[14]4|56)|[579])"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0([3579]|4(?:44|56))?"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"1(?:8[2-9]|9[0-3]|[2-7])|[24-8]"]; [numberFormats0_patternArray addObject:@"1(?:8[2-9]|9(?:09|[1-3])|[2-7])|[24-8]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"($1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC $1"]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"3"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC $1"]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"1(?:80|9[04])"]; [numberFormats2_patternArray addObject:@"1(?:800|9(?:0[01]|4[78]))"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(1)(\\d{3})(\\d{7})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *intlNumberFormats0_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats0_patternArray addObject:@"1(?:8[2-9]|9[0-3]|[2-7])|[24-8]"]; [intlNumberFormats0_patternArray addObject:@"1(?:8[2-9]|9(?:09|[1-3])|[2-7])|[24-8]"]; NBNumberFormat *intlNumberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:intlNumberFormats0_patternArray withNationalPrefixFormattingRule:@"($1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC $1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats0]; NSMutableArray *intlNumberFormats1_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats1_patternArray addObject:@"3"]; NBNumberFormat *intlNumberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:intlNumberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"0$CC $1"]; [intlNumberFormats_FormatArray addObject:intlNumberFormats1]; NSMutableArray *intlNumberFormats2_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats2_patternArray addObject:@"1(?:80|9[04])"]; [intlNumberFormats2_patternArray addObject:@"1(?:800|9(?:0[01]|4[78]))"]; NBNumberFormat *intlNumberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(1)(\\d{3})(\\d{7})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:intlNumberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats2]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataBT - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-8]\\d{6,7}" withPossibleNumberPattern:@"\\d{6,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2[3-6]|[34][5-7]|5[236]|6[2-46]|7[246]|8[2-4])\\d{5}" withPossibleNumberPattern:@"\\d{6,7}" withExample:@"2345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1[67]|77)\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"17123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"BT"; self.countryCode = [NSNumber numberWithInteger:975]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"1|77"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[2-68]|7[246]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([2-8])(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataDK - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-9]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[2-7]\\d|8[126-9]|9[1-36-9])\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"32123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[2-7]\\d|8[126-9]|9[1-36-9])\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"20123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"90123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"DK"; self.countryCode = [NSNumber numberWithInteger:45]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = YES; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataEG - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1\\d{4,9}|[2456]\\d{8}|3\\d{7}|[89]\\d{8,9}" withPossibleNumberPattern:@"\\d{5,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1(?:3[23]\\d|5(?:[23]|9\\d))|2[2-4]\\d{2}|3\\d{2}|4(?:0[2-5]|[578][23]|64)\\d|5(?:0[2-7]|[57][23])\\d|6[24-689]3\\d|8(?:2[2-57]|4[26]|6[237]|8[2-4])\\d|9(?:2[27]|3[24]|52|6[2356]|7[2-4])\\d)\\d{5}|1[69]\\d{3}" withPossibleNumberPattern:@"\\d{5,9}" withExample:@"234567890"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:0[0-269]|1[0-245]|2[0-278])\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1001234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9001234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"EG"; self.countryCode = [NSNumber numberWithInteger:20]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[23]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{7,8})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"1[012]|[89]00"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"1[35]|[4-6]|[89][2-9]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{6,7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataAZ - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-9]\\d{8}" withPossibleNumberPattern:@"\\d{7,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1[28]\\d{3}|2(?:02|1[24]|2[2-4]|33|[45]2|6[23])\\d{2}|365(?:[0-46-9]\\d|5[0-35-9]))\\d{4}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"123123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:36554|(?:4[04]|5[015]|60|7[07])\\d{3})\\d{4}" withPossibleNumberPattern:@"\\d{9}" withExample:@"401234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"88\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"881234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900200\\d{3}" withPossibleNumberPattern:@"\\d{9}" withExample:@"900200123"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"AZ"; self.countryCode = [NSNumber numberWithInteger:994]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"(?:1[28]|2(?:[45]2|[0-36])|365)"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[4-8]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"9"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataEH - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[5689]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"528[89]\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"528812345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6(?:0[0-8]|[12-79]\\d|8[017])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"650123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"801234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"89\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"891234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"EH"; self.countryCode = [NSNumber numberWithInteger:212]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"528[89]"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataDM - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[57-9]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"767(?:2(?:55|66)|4(?:2[01]|4[0-25-9])|50[0-4]|70[1-3])\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"7674201234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"767(?:2(?:[234689]5|7[5-7])|31[5-7]|61[2-7])\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7672251234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"DM"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"767"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataCR - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[24-9]\\d{7,9}" withPossibleNumberPattern:@"\\d{8,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2[0-24-7]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"22123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:0[01]|7[0-3])\\d{5}|(?:[67][0-3]|8[3-9])\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"83123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90[059]\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9001234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"210[0-6]\\d{4}|4\\d{7}|5100\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"40001234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"CR"; self.countryCode = [NSNumber numberWithInteger:506]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"(19(?:0[012468]|1[09]|20|66|77|99))"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[24-7]|8[3-9]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[89]0"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataBW - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-79]\\d{6,7}" withPossibleNumberPattern:@"\\d{7,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:4[0-48]|6[0-24]|9[0578])|3(?:1[0235-9]|55|[69]\\d|7[01])|4(?:6[03]|7[1267]|9[0-5])|5(?:3[0389]|4[0489]|7[1-47]|88|9[0-49])|6(?:2[1-35]|5[149]|8[067]))\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"2401234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7(?:[1-6]\\d|7[014-8])\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"71123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"9012345"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"79[12][01]\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"79101234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"BW"; self.countryCode = [NSNumber numberWithInteger:267]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2-6]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"7"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(7\\d)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"9"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(90)(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataGA - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"0?\\d{7}" withPossibleNumberPattern:@"\\d{7,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"01\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"01441234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"0?[2-7]\\d{6}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"06031234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"GA"; self.countryCode = [NSNumber numberWithInteger:241]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2-7]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"0"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataDO - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[589]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:[04]9[2-9]\\d{6}|29(?:2(?:[0-59]\\d|6[04-9]|7[0-27]|8[0237-9])|3(?:[0-35-9]\\d|4[7-9])|[45]\\d{2}|6(?:[0-27-9]\\d|[3-5][1-9]|6[0135-8])|7(?:0[013-9]|[1-37]\\d|4[1-35689]|5[1-4689]|6[1-57-9]|8[1-79]|9[1-8])|8(?:0[146-9]|1[0-48]|[248]\\d|3[1-79]|5[01589]|6[013-68]|7[124-8]|9[0-8])|9(?:[0-24]\\d|3[02-46-9]|5[0-79]|60|7[0169]|8[57-9]|9[02-9]))\\d{4})" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"8092345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8[024]9[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"8092345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"DO"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"8[024]9"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataBY - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-4]\\d{8}|800\\d{3,7}|[89]\\d{9,10}" withPossibleNumberPattern:@"\\d{6,11}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1(?:5(?:1[1-5]|[24]\\d|6[2-4]|9[1-7])|6(?:[235]\\d|4[1-7])|7\\d{2})|2(?:1(?:[246]\\d|3[0-35-9]|5[1-9])|2(?:[235]\\d|4[0-8])|3(?:[26]\\d|3[02-79]|4[024-7]|5[03-7])))\\d{5}" withPossibleNumberPattern:@"\\d{6,11}" withExample:@"152450911"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:5[5679]|9[1-9])|33\\d|44\\d)\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"294911911"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:0[13]|20\\d)\\d{7}|800\\d{3,7}" withPossibleNumberPattern:@"\\d{6,11}" withExample:@"8011234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:810|902)\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9021234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"249\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"249123456"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:[013]|[12]0)\\d{8}|800\\d{3,7}|902\\d{7}" withPossibleNumberPattern:@"\\d{6,11}" withExample:@"82012345678"]; self.codeID = @"BY"; self.countryCode = [NSNumber numberWithInteger:375]; self.internationalPrefix = @"810"; self.preferredInternationalPrefix = @"8~10"; self.nationalPrefix = @"8"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"8?0?"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"17[0-3589]|2[4-9]|[34]"]; [numberFormats0_patternArray addObject:@"17(?:[02358]|1[0-2]|9[0189])|2[4-9]|[34]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1 $2-$3-$4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"8 0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"1(?:5[24]|6[235]|7[467])|2(?:1[246]|2[25]|3[26])"]; [numberFormats1_patternArray addObject:@"1(?:5[24]|6(?:2|3[04-9]|5[0346-9])|7(?:[46]|7[37-9]))|2(?:1[246]|2[25]|3[26])"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2-$3-$4" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"8 0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"1(?:5[169]|6[3-5]|7[179])|2(?:1[35]|2[34]|3[3-5])"]; [numberFormats2_patternArray addObject:@"1(?:5[169]|6(?:3[1-3]|4|5[125])|7(?:1[3-9]|7[0-24-6]|9[2-7]))|2(?:1[35]|2[34]|3[3-5])"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{2})(\\d{3})" withFormat:@"$1 $2-$3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"8 0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"8[01]|9"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"([89]\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"8 $1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"82"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(82\\d)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"8 $1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"800"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(800)(\\d{3})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"8 $1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"800"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(800)(\\d{2})(\\d{2,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"8 $1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataGB - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"\\d{7,10}" withPossibleNumberPattern:@"\\d{4,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:0[01378]|3[0189]|4[017]|8[0-46-9]|9[012])\\d{7}|1(?:(?:1(?:3[0-48]|[46][0-4]|5[012789]|7[0-49]|8[01349])|21[0-7]|31[0-8]|[459]1\\d|61[0-46-9]))\\d{6}|1(?:2(?:0[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-4789]|7[013-9]|9\\d)|3(?:0\\d|[25][02-9]|3[02-579]|[468][0-46-9]|7[1235679]|9[24578])|4(?:0[03-9]|[28][02-5789]|[37]\\d|4[02-69]|5[0-8]|[69][0-79])|5(?:0[1235-9]|2[024-9]|3[015689]|4[02-9]|5[03-9]|6\\d|7[0-35-9]|8[0-468]|9[0-5789])|6(?:0[034689]|2[0-35689]|[38][013-9]|4[1-467]|5[0-69]|6[13-9]|7[0-8]|9[0124578])|7(?:0[0246-9]|2\\d|3[023678]|4[03-9]|5[0-46-9]|6[013-9]|7[0-35-9]|8[024-9]|9[02-9])|8(?:0[35-9]|2[1-5789]|3[02-578]|4[0-578]|5[124-9]|6[2-69]|7\\d|8[02-9]|9[02569])|9(?:0[02-589]|2[02-689]|3[1-5789]|4[2-9]|5[0-579]|6[234789]|7[0124578]|8\\d|9[2-57]))\\d{6}|1(?:2(?:0(?:46[1-4]|87[2-9])|545[1-79]|76(?:2\\d|3[1-8]|6[1-6])|9(?:7(?:2[0-4]|3[2-5])|8(?:2[2-8]|7[0-4789]|8[345])))|3(?:638[2-5]|647[23]|8(?:47[04-9]|64[015789]))|4(?:044[1-7]|20(?:2[23]|8\\d)|6(?:0(?:30|5[2-57]|6[1-8]|7[2-8])|140)|8(?:052|87[123]))|5(?:24(?:3[2-79]|6\\d)|276\\d|6(?:26[06-9]|686))|6(?:06(?:4\\d|7[4-79])|295[567]|35[34]\\d|47(?:24|61)|59(?:5[08]|6[67]|74)|955[0-4])|7(?:26(?:6[13-9]|7[0-7])|442\\d|50(?:2[0-3]|[3-68]2|76))|8(?:27[56]\\d|37(?:5[2-5]|8[239])|84(?:3[2-58]))|9(?:0(?:0(?:6[1-8]|85)|52\\d)|3583|4(?:66[1-8]|9(?:2[01]|81))|63(?:23|3[1-4])|9561))\\d{3}|176888[234678]\\d{2}|16977[23]\\d{3}" withPossibleNumberPattern:@"\\d{4,10}" withExample:@"1212345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7(?:[1-4]\\d\\d|5(?:0[0-8]|[13-9]\\d|2[0-35-9])|7(?:0[1-9]|[1-7]\\d|8[02-9]|9[0-689])|8(?:[014-9]\\d|[23][0-8])|9(?:[04-9]\\d|1[02-9]|2[0-35-9]|3[0-689]))\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7400123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80(?:0(?:1111|\\d{6,7})|8\\d{7})|500\\d{6}" withPossibleNumberPattern:@"\\d{7}(?:\\d{2,3})?" withExample:@"8001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:87[123]|9(?:[01]\\d|8[2349]))\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9012345678"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:4(?:5464\\d|[2-5]\\d{7})|70\\d{7})" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"8431234567"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"70\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7012345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"56\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5612345678"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"76(?:0[012]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7640123456"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:3[0347]|55)\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5512345678"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"GB"; self.countryCode = [NSNumber numberWithInteger:44]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = @" x"; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"2|5[56]|7(?:0|6[013-9])"]; [numberFormats0_patternArray addObject:@"2|5[56]|7(?:0|6(?:[013-9]|2[0-35-9]))"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"1(?:1|\\d1)|3|9[018]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"1(?:38|5[23]|69|76|94)"]; [numberFormats2_patternArray addObject:@"1(?:387|5(?:24|39)|697|768|946)"]; [numberFormats2_patternArray addObject:@"1(?:3873|5(?:242|39[456])|697[347]|768[347]|9467)"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{5})(\\d{4,5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"1"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(1\\d{3})(\\d{5,6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"7(?:[1-5789]|62)"]; [numberFormats4_patternArray addObject:@"7(?:[1-5789]|624)"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(7\\d{3})(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"800"]; [numberFormats5_patternArray addObject:@"8001"]; [numberFormats5_patternArray addObject:@"80011"]; [numberFormats5_patternArray addObject:@"800111"]; [numberFormats5_patternArray addObject:@"8001111"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(800)(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"845"]; [numberFormats6_patternArray addObject:@"8454"]; [numberFormats6_patternArray addObject:@"84546"]; [numberFormats6_patternArray addObject:@"845464"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(845)(46)(4\\d)" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"8(?:4[2-5]|7[0-3])"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(8\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats7]; NSMutableArray *numberFormats8_patternArray = [[NSMutableArray alloc] init]; [numberFormats8_patternArray addObject:@"80"]; NBNumberFormat *numberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(80\\d)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats8_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats8]; NSMutableArray *numberFormats9_patternArray = [[NSMutableArray alloc] init]; [numberFormats9_patternArray addObject:@"[58]00"]; NBNumberFormat *numberFormats9 = [[NBNumberFormat alloc] initWithPattern:@"([58]00)(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats9_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats9]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = YES; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataCU - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-57]\\d{5,7}" withPossibleNumberPattern:@"\\d{4,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2[1-4]\\d{5,6}|3(?:1\\d{6}|[23]\\d{4,6})|4(?:[125]\\d{5,6}|[36]\\d{6}|[78]\\d{4,6})|7\\d{6,7}" withPossibleNumberPattern:@"\\d{4,8}" withExample:@"71234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:@"51234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"CU"; self.countryCode = [NSNumber numberWithInteger:53]; self.internationalPrefix = @"119"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"7"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{6,7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[2-4]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{4,6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"5"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataBZ - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-8]\\d{6}|0\\d{10}" withPossibleNumberPattern:@"\\d{7}(?:\\d{4})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[23458][02]\\d|7(?:[02]\\d|32))\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"2221234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6[0-35-7]\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"6221234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"0800\\d{7}" withPossibleNumberPattern:@"\\d{11}" withExample:@"08001234123"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"BZ"; self.countryCode = [NSNumber numberWithInteger:501]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2-8]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"0"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(0)(800)(\\d{4})(\\d{3})" withFormat:@"$1-$2-$3-$4" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataCV - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[259]\\d{6}" withPossibleNumberPattern:@"\\d{7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:2[1-7]|3[0-8]|4[12]|5[1256]|6\\d|7[1-3]|8[1-5])\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"2211234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:9\\d|59)\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"9911234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"CV"; self.countryCode = [NSNumber numberWithInteger:238]; self.internationalPrefix = @"0"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadata808 - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"\\d{8}" withPossibleNumberPattern:@"\\d{8}" withExample:@"12345678"]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:@"12345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:@"12345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"\\d{8}" withPossibleNumberPattern:@"\\d{8}" withExample:@"12345678"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"001"; self.countryCode = [NSNumber numberWithInteger:808]; self.internationalPrefix = nil; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = YES; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataGD - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[4589]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"473(?:2(?:3[0-2]|69)|3(?:2[89]|86)|4(?:[06]8|3[5-9]|4[0-49]|5[5-79]|68|73|90)|63[68]|7(?:58|84)|800|938)\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"4732691234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"473(?:4(?:0[2-79]|1[04-9]|20|58)|5(?:2[01]|3[3-8])|901)\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"4734031234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"GD"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"473"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataFI - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1\\d{4,11}|[2-9]\\d{4,10}" withPossibleNumberPattern:@"\\d{5,12}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:[3569][1-8]\\d{3,9}|[47]\\d{5,10})|2[1-8]\\d{3,9}|3(?:[1-8]\\d{3,9}|9\\d{4,8})|[5689][1-8]\\d{3,9}" withPossibleNumberPattern:@"\\d{5,12}" withExample:@"1312345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"4\\d{5,10}|50\\d{4,8}" withPossibleNumberPattern:@"\\d{6,11}" withExample:@"412345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{4,7}" withPossibleNumberPattern:@"\\d{7,10}" withExample:@"8001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[67]00\\d{5,6}" withPossibleNumberPattern:@"\\d{8,9}" withExample:@"600123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[13]0\\d{4,8}|2(?:0(?:[016-8]\\d{3,7}|[2-59]\\d{2,7})|9\\d{4,8})|60(?:[12]\\d{5,6}|6\\d{7})|7(?:1\\d{7}|3\\d{8}|5[03-9]\\d{2,7})" withPossibleNumberPattern:@"\\d{5,10}" withExample:@"10112345"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[13]00\\d{3,7}|2(?:0(?:0\\d{3,7}|2[023]\\d{1,6}|9[89]\\d{1,6}))|60(?:[12]\\d{5,6}|6\\d{7})|7(?:1\\d{7}|3\\d{8}|5[03-9]\\d{2,7})" withPossibleNumberPattern:@"\\d{5,10}" withExample:@"100123"]; self.codeID = @"FI"; self.countryCode = [NSNumber numberWithInteger:358]; self.internationalPrefix = @"00|99[049]"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"(?:[1-3]00|[6-8]0)"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3,7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"116"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(116\\d{3})" withFormat:@"$1" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"[14]|2[09]|50|7[135]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{4,10})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"[25689][1-8]|3"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{4,11})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = YES; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataCW - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[169]\\d{6,7}" withPossibleNumberPattern:@"\\d{7,8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9(?:[48]\\d{2}|50\\d|7(?:2[0-24]|[34]\\d|6[35-7]|77|8[7-9]))\\d{4}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"94151234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9(?:5(?:[12467]\\d|3[01])|6(?:[15-9]\\d|3[01]))\\d{4}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"95181234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"60[0-2]\\d{4}" withPossibleNumberPattern:@"\\d{7}" withExample:@"6001234"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"955\\d{5}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"95581234"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"CW"; self.countryCode = [NSNumber numberWithInteger:599]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[13-7]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"9"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(9)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = YES; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataGE - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[34578]\\d{8}" withPossibleNumberPattern:@"\\d{6,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:3(?:[256]\\d|4[124-9]|7[0-4])|4(?:1\\d|2[2-7]|3[1-79]|4[2-8]|7[239]|9[1-7]))\\d{6}" withPossibleNumberPattern:@"\\d{6,9}" withExample:@"322123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:14|5[01578]|68|7[0147-9]|9[0-35-9])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"555123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"706\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"706123456"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"706\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"706123456"]; self.codeID = @"GE"; self.countryCode = [NSNumber numberWithInteger:995]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[348]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"7"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"5"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataFJ - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[36-9]\\d{6}|0\\d{10}" withPossibleNumberPattern:@"\\d{7}(?:\\d{4})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:3[0-5]|6[25-7]|8[58])\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"3212345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:7[0-8]|8[034679]|9\\d)\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"7012345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"0800\\d{7}" withPossibleNumberPattern:@"\\d{11}" withExample:@"08001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"FJ"; self.countryCode = [NSNumber numberWithInteger:679]; self.internationalPrefix = @"0(?:0|52)"; self.preferredInternationalPrefix = @"00"; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[36-9]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"0"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = YES; } return self; } @end @implementation NBPhoneMetadataCX - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1458]\\d{5,9}" withPossibleNumberPattern:@"\\d{6,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"89164\\d{4}" withPossibleNumberPattern:@"\\d{8,9}" withExample:@"891641234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"14(?:5\\d|71)\\d{5}|4(?:[0-2]\\d|3[0-57-9]|4[47-9]|5[0-25-9]|6[6-9]|7[02-9]|8[147-9]|9[017-9])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"412345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"180(?:0\\d{3}|2)\\d{3}" withPossibleNumberPattern:@"\\d{7,10}" withExample:@"1800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"190[0126]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1900123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"13(?:00\\d{2})?\\d{4}" withPossibleNumberPattern:@"\\d{6,10}" withExample:@"1300123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"500\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"500123456"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"550\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"550123456"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"CX"; self.countryCode = [NSNumber numberWithInteger:61]; self.internationalPrefix = @"(?:14(?:1[14]|34|4[17]|[56]6|7[47]|88))?001[14-689]"; self.preferredInternationalPrefix = @"0011"; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataGF - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[56]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"594(?:10|2[012457-9]|3[0-57-9]|4[3-9]|5[7-9]|6[0-3]|9[014])\\d{4}" withPossibleNumberPattern:@"\\d{9}" withExample:@"594101234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"694(?:[04][0-7]|1[0-5]|3[018]|[29]\\d)\\d{4}" withPossibleNumberPattern:@"\\d{9}" withExample:@"694201234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"GF"; self.countryCode = [NSNumber numberWithInteger:594]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataFK - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-7]\\d{4}" withPossibleNumberPattern:@"\\d{5}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-47]\\d{4}" withPossibleNumberPattern:@"\\d{5}" withExample:@"31234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[56]\\d{4}" withPossibleNumberPattern:@"\\d{5}" withExample:@"51234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"FK"; self.countryCode = [NSNumber numberWithInteger:500]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataCY - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[257-9]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2[2-6]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"22345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9[4-79]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"96123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80001234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90[09]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"90012345"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[1-9]\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80112345"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"700\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"70012345"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:50|77)\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"77123456"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"CY"; self.countryCode = [NSNumber numberWithInteger:357]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataGG - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[135789]\\d{6,9}" withPossibleNumberPattern:@"\\d{6,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1481\\d{6}" withPossibleNumberPattern:@"\\d{6,10}" withExample:@"1481456789"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7(?:781|839|911)\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7781123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80(?:0(?:1111|\\d{6,7})|8\\d{7})|500\\d{6}" withPossibleNumberPattern:@"\\d{7}(?:\\d{2,3})?" withExample:@"8001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:87[123]|9(?:[01]\\d|8[0-3]))\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9012345678"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:4(?:5464\\d|[2-5]\\d{7})|70\\d{7})" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"8431234567"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"70\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7012345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"56\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5612345678"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"76(?:0[012]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7640123456"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:3[0347]|55)\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5512345678"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"GG"; self.countryCode = [NSNumber numberWithInteger:44]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = @" x"; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataCZ - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-8]\\d{8}|9\\d{8,11}" withPossibleNumberPattern:@"\\d{9,12}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2\\d{8}|(?:3[1257-9]|4[16-9]|5[13-9])\\d{7}" withPossibleNumberPattern:@"\\d{9,12}" withExample:@"212345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:60[1-8]|7(?:0[2-5]|[2379]\\d))\\d{6}" withPossibleNumberPattern:@"\\d{9,12}" withExample:@"601123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{6}" withPossibleNumberPattern:@"\\d{9,12}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9(?:0[05689]|76)\\d{6}" withPossibleNumberPattern:@"\\d{9,12}" withExample:@"900123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8[134]\\d{7}" withPossibleNumberPattern:@"\\d{9,12}" withExample:@"811234567"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"70[01]\\d{6}" withPossibleNumberPattern:@"\\d{9,12}" withExample:@"700123456"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9[17]0\\d{6}" withPossibleNumberPattern:@"\\d{9,12}" withExample:@"910123456"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9(?:5\\d|7[234])\\d{6}" withPossibleNumberPattern:@"\\d{9,12}" withExample:@"972123456"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9(?:3\\d{9}|6\\d{7,10})" withPossibleNumberPattern:@"\\d{9,12}" withExample:@"93123456789"]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"CZ"; self.countryCode = [NSNumber numberWithInteger:420]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2-8]|9[015-7]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([2-9]\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"96"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(96\\d)(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"9[36]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(9\\d)(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataGH - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[235]\\d{8}|8\\d{7}" withPossibleNumberPattern:@"\\d{7,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3(?:0[237]\\d|[167](?:2[0-6]|7\\d)|2(?:2[0-5]|7\\d)|3(?:2[0-3]|7\\d)|4(?:2[013-9]|3[01]|7\\d)|5(?:2[0-7]|7\\d)|8(?:2[0-2]|7\\d)|9(?:20|7\\d))\\d{5}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"302345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2[034678]\\d|5(?:[047]\\d|5[3-6]|6[01]))\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"231234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80012345"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80012345"]; self.codeID = @"GH"; self.countryCode = [NSNumber numberWithInteger:233]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[235]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"8"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataFM - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[39]\\d{6}" withPossibleNumberPattern:@"\\d{7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3[2357]0[1-9]\\d{3}|9[2-6]\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"3201234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3[2357]0[1-9]\\d{3}|9[2-7]\\d{5}" withPossibleNumberPattern:@"\\d{7}" withExample:@"3501234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"FM"; self.countryCode = [NSNumber numberWithInteger:691]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataER - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[178]\\d{6}" withPossibleNumberPattern:@"\\d{6,7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:1[12568]|20|40|55|6[146])\\d{4}|8\\d{6}" withPossibleNumberPattern:@"\\d{6,7}" withExample:@"8370362"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"17[1-3]\\d{4}|7\\d{6}" withPossibleNumberPattern:@"\\d{7}" withExample:@"7123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"ER"; self.countryCode = [NSNumber numberWithInteger:291]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataGI - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2568]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:00\\d|1(?:6[24-7]|9\\d)|2(?:00|2[2457]))\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"20012345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:5[46-8]|62)\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"57123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"80123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8[1-689]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"88123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"87\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"87123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"GI"; self.countryCode = [NSNumber numberWithInteger:350]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"2"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataES - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[5-9]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:[13]0|[28][0-8]|[47][1-9]|5[01346-9]|6[0457-9])\\d{6}|9(?:[1238][0-8]\\d{6}|4[1-9]\\d{6}|5\\d{7}|6(?:[0-8]\\d{6}|9(?:0(?:[0-57-9]\\d{4}|6(?:0[0-8]|1[1-9]|[2-9]\\d)\\d{2})|[1-9]\\d{5}))|7(?:[124-9]\\d{2}|3(?:[0-8]\\d|9[1-9]))\\d{4})" withPossibleNumberPattern:@"\\d{9}" withExample:@"810123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:6\\d{6}|7[1-4]\\d{5}|9(?:6906(?:09|10)|7390\\d{2}))\\d{2}" withPossibleNumberPattern:@"\\d{9}" withExample:@"612345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[89]00\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[367]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"803123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90[12]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"901123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"70\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"701234567"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"51\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"511234567"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"ES"; self.countryCode = [NSNumber numberWithInteger:34]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[89]00"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([89]00)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[568]|[79][0-8]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([5-9]\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataFO - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-9]\\d{5}" withPossibleNumberPattern:@"\\d{6}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:20|[3-4]\\d|8[19])\\d{4}" withPossibleNumberPattern:@"\\d{6}" withExample:@"201234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[27][1-9]|5\\d)\\d{4}" withPossibleNumberPattern:@"\\d{6}" withExample:@"211234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[257-9]\\d{3}" withPossibleNumberPattern:@"\\d{6}" withExample:@"802123"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90(?:[1345][15-7]|2[125-7]|99)\\d{2}" withPossibleNumberPattern:@"\\d{6}" withExample:@"901123"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:6[0-36]|88)\\d{4}" withPossibleNumberPattern:@"\\d{6}" withExample:@"601234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"FO"; self.countryCode = [NSNumber numberWithInteger:298]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"(10(?:01|[12]0|88))"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{6})" withFormat:@"$1" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:@"$CC $1"]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataET - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-59]\\d{8}" withPossibleNumberPattern:@"\\d{7,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:11(?:1(?:1[124]|2[2-57]|3[1-5]|5[5-8]|8[6-8])|2(?:13|3[6-8]|5[89]|7[05-9]|8[2-6])|3(?:2[01]|3[0-289]|4[1289]|7[1-4]|87)|4(?:1[69]|3[2-49]|4[0-3]|6[5-8])|5(?:1[578]|44|5[0-4])|6(?:18|2[69]|4[5-7]|5[1-5]|6[0-59]|8[015-8]))|2(?:2(?:11[1-9]|22[0-7]|33\\d|44[1467]|66[1-68])|5(?:11[124-6]|33[2-8]|44[1467]|55[14]|66[1-3679]|77[124-79]|880))|3(?:3(?:11[0-46-8]|22[0-6]|33[0134689]|44[04]|55[0-6]|66[01467])|4(?:44[0-8]|55[0-69]|66[0-3]|77[1-5]))|4(?:6(?:22[0-24-7]|33[1-5]|44[13-69]|55[14-689]|660|88[1-4])|7(?:11[1-9]|22[1-9]|33[13-7]|44[13-6]|55[1-689]))|5(?:7(?:227|55[05]|(?:66|77)[14-8])|8(?:11[149]|22[013-79]|33[0-68]|44[013-8]|550|66[1-5]|77\\d)))\\d{4}" withPossibleNumberPattern:@"\\d{7,9}" withExample:@"111112345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9(?:[1-46]\\d|5[89])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"911234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"ET"; self.countryCode = [NSNumber numberWithInteger:251]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([1-59]\\d)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataGL - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-689]\\d{5}" withPossibleNumberPattern:@"\\d{6}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:19|3[1-6]|6[14689]|8[14-79]|9\\d)\\d{4}" withPossibleNumberPattern:@"\\d{6}" withExample:@"321000"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[245][2-9]\\d{4}" withPossibleNumberPattern:@"\\d{6}" withExample:@"221234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80\\d{4}" withPossibleNumberPattern:@"\\d{6}" withExample:@"801234"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3[89]\\d{4}" withPossibleNumberPattern:@"\\d{6}" withExample:@"381234"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"GL"; self.countryCode = [NSNumber numberWithInteger:299]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataDZ - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[1-4]|[5-9]\\d)\\d{7}" withPossibleNumberPattern:@"\\d{8,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:1\\d|2[013-79]|3[0-8]|4[0135689])\\d{6}|9619\\d{5}" withPossibleNumberPattern:@"\\d{8,9}" withExample:@"12345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:5[4-6]|7[7-9])\\d{7}|6(?:[569]\\d|7[0-6])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"551234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[3-689]1\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"808123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[12]1\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"801123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"98[23]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"983123456"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"DZ"; self.countryCode = [NSNumber numberWithInteger:213]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[1-4]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([1-4]\\d)(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[5-8]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([5-8]\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"9"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(9\\d)(\\d{3})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataGM - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{7}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:4(?:[23]\\d{2}|4(?:1[024679]|[6-9]\\d))|5(?:54[0-7]|6(?:[67]\\d)|7(?:1[04]|2[035]|3[58]|48))|8\\d{3})\\d{3}" withPossibleNumberPattern:@"\\d{7}" withExample:@"5661234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[23679]\\d{6}" withPossibleNumberPattern:@"\\d{7}" withExample:@"3012345"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"GM"; self.countryCode = [NSNumber numberWithInteger:220]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataID - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[1-79]\\d{6,10}|8\\d{7,11})" withPossibleNumberPattern:@"\\d{5,12}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:1(?:14\\d{3}|[0-8]\\d{6,7}|500\\d{3}|9\\d{6})|2\\d{6,8}|4\\d{7,8})|(?:2(?:[35][1-4]|6[0-8]|7[1-6]|8\\d|9[1-8])|3(?:1|[25][1-8]|3[1-68]|4[1-3]|6[1-3568]|7[0-469]|8\\d)|4(?:0[1-589]|1[01347-9]|2[0-36-8]|3[0-24-68]|43|5[1-378]|6[1-5]|7[134]|8[1245])|5(?:1[1-35-9]|2[25-8]|3[124-9]|4[1-3589]|5[1-46]|6[1-8])|6(?:19?|[25]\\d|3[1-69]|4[1-6])|7(?:02|[125][1-9]|[36]\\d|4[1-8]|7[0-36-9])|9(?:0[12]|1[013-8]|2[0-479]|5[125-8]|6[23679]|7[159]|8[01346]))\\d{5,8}" withPossibleNumberPattern:@"\\d{5,11}" withExample:@"612345678"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:2(?:1(?:3[145]|4[01]|5[1-469]|60|8[0359]|9\\d)|2(?:88|9[1256])|3[1-4]9|4(?:36|91)|5(?:1[349]|[2-4]9)|6[0-7]9|7(?:[1-36]9|4[39])|8[1-5]9|9[1-48]9)|3(?:19[1-3]|2[12]9|3[13]9|4(?:1[69]|39)|5[14]9|6(?:1[69]|2[89])|709)|4[13]19|5(?:1(?:19|8[39])|4[129]9|6[12]9)|6(?:19[12]|2(?:[23]9|77))|7(?:1[13]9|2[15]9|419|5(?:1[89]|29)|6[15]9|7[178]9))\\d{5,6}|8[1-35-9]\\d{7,10}" withPossibleNumberPattern:@"\\d{9,12}" withExample:@"812345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"177\\d{6,8}|800\\d{5,7}" withPossibleNumberPattern:@"\\d{8,11}" withExample:@"8001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"809\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8091234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"804\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8041234567"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1500\\d{3}|8071\\d{6}" withPossibleNumberPattern:@"\\d{7,10}" withExample:@"8071123456"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8071\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8071123456"]; self.codeID = @"ID"; self.countryCode = [NSNumber numberWithInteger:62]; self.internationalPrefix = @"0(?:0[1789]|10(?:00|1[67]))"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"2[124]|[36]1"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{5,8})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[4579]|2[035-9]|[36][02-9]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{5,8})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"8[1-35-9]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(8\\d{2})(\\d{3,4})(\\d{3,5})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"15"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(1)(500)(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"17"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(177)(\\d{6,8})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"800"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(800)(\\d{5,7})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"804"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(804)(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"80[79]"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(80\\d)(\\d)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats7]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataFR - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-9]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[1-5]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:@"123456789"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6\\d{8}|7(?:00\\d{6}|[3-9]\\d{7})" withPossibleNumberPattern:@"\\d{9}" withExample:@"612345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[0-5]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"801234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"89[1-37-9]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"891123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:1[019]|2[0156]|84|90)\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"810123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"9\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:@"912345678"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80[6-9]\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"806123456"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"FR"; self.countryCode = [NSNumber numberWithInteger:33]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[1-79]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([1-79])(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4 $5" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"11"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(1\\d{2})(\\d{3})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"8"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(8\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"0 $1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *intlNumberFormats0_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats0_patternArray addObject:@"[1-79]"]; NBNumberFormat *intlNumberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([1-79])(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4 $5" withLeadingDigitsPatterns:intlNumberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats0]; NSMutableArray *intlNumberFormats1_patternArray = [[NSMutableArray alloc] init]; [intlNumberFormats1_patternArray addObject:@"8"]; NBNumberFormat *intlNumberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(8\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:intlNumberFormats1_patternArray withNationalPrefixFormattingRule:@"0 $1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [intlNumberFormats_FormatArray addObject:intlNumberFormats1]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataGN - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[367]\\d{7,8}" withPossibleNumberPattern:@"\\d{8,9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"30(?:24|3[12]|4[1-35-7]|5[13]|6[189]|[78]1|9[1478])\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"30241234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"6[02356]\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"601123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"722\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"722123456"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"GN"; self.countryCode = [NSNumber numberWithInteger:224]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"3"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[67]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{2})(\\d{2})(\\d{2})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataIE - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[124-9]\\d{6,9}" withPossibleNumberPattern:@"\\d{5,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1\\d{7,8}|2(?:1\\d{6,7}|3\\d{7}|[24-9]\\d{5})|4(?:0[24]\\d{5}|[1-469]\\d{7}|5\\d{6}|7\\d{5}|8[0-46-9]\\d{7})|5(?:0[45]\\d{5}|1\\d{6}|[23679]\\d{7}|8\\d{5})|6(?:1\\d{6}|[237-9]\\d{5}|[4-6]\\d{7})|7[14]\\d{7}|9(?:1\\d{6}|[04]\\d{7}|[35-9]\\d{5})" withPossibleNumberPattern:@"\\d{5,10}" withExample:@"2212345"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:22\\d{6}|[35-9]\\d{7})" withPossibleNumberPattern:@"\\d{9}" withExample:@"850123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1800\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"15(?:1[2-8]|[2-8]0|9[089])\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1520123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"18[59]0\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1850123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"700\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"700123456"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"76\\d{7}" withPossibleNumberPattern:@"\\d{9}" withExample:@"761234567"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"818\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"818123456"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8[35-9]\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8501234567"]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"18[59]0\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1850123456"]; self.codeID = @"IE"; self.countryCode = [NSNumber numberWithInteger:353]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"1"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(1)(\\d{3,4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"2[24-9]|47|58|6[237-9]|9[35-9]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"40[24]|50[45]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"48"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(48)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"81"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(818)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"[24-69]|7[14]"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{2})(\\d{3})(\\d{3,4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"(0$1)" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"76|8[35-9]"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"([78]\\d)(\\d{3,4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"70"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(700)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats7]; NSMutableArray *numberFormats8_patternArray = [[NSMutableArray alloc] init]; [numberFormats8_patternArray addObject:@"1(?:8[059]|5)"]; [numberFormats8_patternArray addObject:@"1(?:8[059]0|5)"]; NBNumberFormat *numberFormats8 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats8_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats8]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataHK - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[235-7]\\d{7}|8\\d{7,8}|9\\d{4,10}" withPossibleNumberPattern:@"\\d{5,11}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:[23]\\d|58)\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"21234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:5[1-79]\\d|6\\d{2}|8[4-79]\\d|9(?:0[1-9]|[1-8]\\d))\\d{5}" withPossibleNumberPattern:@"\\d{8}" withExample:@"51234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900(?:[0-24-9]\\d{7}|3\\d{1,4})" withPossibleNumberPattern:@"\\d{5,11}" withExample:@"90012345678"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8[1-3]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"81123456"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:@"71234567"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"HK"; self.countryCode = [NSNumber numberWithInteger:852]; self.internationalPrefix = @"00(?:[126-9]|30|5[09])?"; self.preferredInternationalPrefix = @"00"; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[235-7]|[89](?:0[1-9]|[1-9])"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"800"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(800)(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"900"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(900)(\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3 $4" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"900"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(900)(\\d{2,5})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataGP - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[56]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"590(?:0[13468]|1[012]|2[0-68]|3[28]|4[0-8]|5[579]|6[0189]|70|8[0-689]|9\\d)\\d{4}" withPossibleNumberPattern:@"\\d{9}" withExample:@"590201234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"690(?:0[0-7]|[1-9]\\d)\\d{4}" withPossibleNumberPattern:@"\\d{9}" withExample:@"690301234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"GP"; self.countryCode = [NSNumber numberWithInteger:590]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([56]90)(\\d{2})(\\d{4})" withFormat:@"$1 $2-$3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = YES; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataGQ - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[23589]\\d{8}" withPossibleNumberPattern:@"\\d{9}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3(?:3(?:3\\d[7-9]|[0-24-9]\\d[46])|5\\d{2}[7-9])\\d{4}" withPossibleNumberPattern:@"\\d{9}" withExample:@"333091234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:222|55[15])\\d{6}" withPossibleNumberPattern:@"\\d{9}" withExample:@"222123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80\\d[1-9]\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90\\d[1-9]\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"900123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"GQ"; self.countryCode = [NSNumber numberWithInteger:240]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[235]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{3})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[89]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataGR - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[26-9]\\d{9}" withPossibleNumberPattern:@"\\d{10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:1\\d{2}|2(?:2[1-46-9]|3[1-8]|4[1-7]|5[1-4]|6[1-8]|7[1-5]|[89][1-9])|3(?:1\\d|2[1-57]|[35][1-3]|4[13]|7[1-7]|8[124-6]|9[1-79])|4(?:1\\d|2[1-8]|3[1-4]|4[13-5]|6[1-578]|9[1-5])|5(?:1\\d|[29][1-4]|3[1-5]|4[124]|5[1-6])|6(?:1\\d|3[1245]|4[1-7]|5[13-9]|[269][1-6]|7[14]|8[1-5])|7(?:1\\d|2[1-5]|3[1-6]|4[1-7]|5[1-57]|6[135]|9[125-7])|8(?:1\\d|2[1-5]|[34][1-4]|9[1-57]))\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"2123456789"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"69\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"6912345678"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"800\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8001234567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"90[19]\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9091234567"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:0[16]|12|25)\\d{7}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8011234567"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"70\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7012345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"GR"; self.countryCode = [NSNumber numberWithInteger:30]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"21|7"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([27]\\d)(\\d{4})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"2[2-9]1|[689]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{3})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"2[2-9][02-9]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(2\\d{3})(\\d{6})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataHN - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[237-9]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"2(?:2(?:0[019]|1[1-36]|[23]\\d|4[056]|5[57]|7[01389]|8[0146-9]|9[012])|4(?:07|2[3-59]|3[13-689]|4[0-68]|5[1-35])|5(?:16|4[3-5]|5\\d|6[4-6]|74)|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-35789]|9[1-57-9]))\\d{4}" withPossibleNumberPattern:@"\\d{8}" withExample:@"22123456"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[37-9]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:@"91234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"HN"; self.countryCode = [NSNumber numberWithInteger:504]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataJE - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[135789]\\d{6,9}" withPossibleNumberPattern:@"\\d{6,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1534\\d{6}" withPossibleNumberPattern:@"\\d{6,10}" withExample:@"1534456789"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7(?:509|7(?:00|97)|829|937)\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7797123456"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"80(?:07(?:35|81)|8901)\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8007354567"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"(?:871206|90(?:066[59]|1810|71(?:07|55)))\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9018105678"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|70002)\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8447034567"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"701511\\d{4}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7015115678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"56\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5612345678"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"76(?:0[012]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"7640123456"]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"3(?:0(?:07(?:35|81)|8901)|3\\d{4}|4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))\\d{4}|55\\d{8}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5512345678"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"JE"; self.countryCode = [NSNumber numberWithInteger:44]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = @" x"; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataGT - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-7]\\d{7}|1[89]\\d{9}" withPossibleNumberPattern:@"\\d{8}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[267][2-9]\\d{6}" withPossibleNumberPattern:@"\\d{8}" withExample:@"22456789"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[345]\\d{7}" withPossibleNumberPattern:@"\\d{8}" withExample:@"51234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"18[01]\\d{8}" withPossibleNumberPattern:@"\\d{11}" withExample:@"18001112222"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"19\\d{9}" withPossibleNumberPattern:@"\\d{11}" withExample:@"19001112222"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"GT"; self.countryCode = [NSNumber numberWithInteger:502]; self.internationalPrefix = @"00"; self.preferredInternationalPrefix = nil; self.nationalPrefix = nil; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = nil; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2-7]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{4})" withFormat:@"$1 $2" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"1"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})(\\d{3})(\\d{4})" withFormat:@"$1 $2 $3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:nil whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataGU - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[5689]\\d{9}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"671(?:3(?:00|3[39]|4[349]|55|6[26])|4(?:56|7[1-9]|8[236-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[5-9])|7(?:[079]7|2[0167]|3[45]|47|8[789])|8(?:[2-5789]8|6[48])|9(?:2[29]|6[79]|7[179]|8[789]|9[78]))\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"6713001234"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"671(?:3(?:00|3[39]|4[349]|55|6[26])|4(?:56|7[1-9]|8[236-9])|5(?:55|6[2-5]|88)|6(?:3[2-578]|4[24-9]|5[34]|78|8[5-9])|7(?:[079]7|2[0167]|3[45]|47|8[789])|8(?:[2-5789]8|6[48])|9(?:2[29]|6[79]|7[179]|8[789]|9[78]))\\d{4}" withPossibleNumberPattern:@"\\d{7}(?:\\d{3})?" withExample:@"6713001234"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"8(?:00|44|55|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"8002123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"900[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"9002123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:00|33|44|66|77|88)[2-9]\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"5002345678"]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.codeID = @"GU"; self.countryCode = [NSNumber numberWithInteger:1]; self.internationalPrefix = @"011"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"1"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"1"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = YES; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = @"671"; self.leadingZeroPossible = NO; } return self; } @end @implementation NBPhoneMetadataIL - (id)init { self = [super init]; if (self) { self.generalDesc = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[17]\\d{6,9}|[2-589]\\d{3}(?:\\d{3,6})?|6\\d{3}" withPossibleNumberPattern:@"\\d{4,10}" withExample:nil]; self.fixedLine = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-489]\\d{7}" withPossibleNumberPattern:@"\\d{7,8}" withExample:@"21234567"]; self.mobile = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"5(?:[02-47-9]\\d{2}|5(?:01|2[23]|3[2-4]|4[45]|5[5689]|6[67]|7[0178]|8[6-9]|9[4-9])|6[2-9]\\d)\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"501234567"]; self.tollFree = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:80[019]\\d{3}|255)\\d{3}" withPossibleNumberPattern:@"\\d{7,10}" withExample:@"1800123456"]; self.premiumRate = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1(?:212|(?:9(?:0[01]|19)|200)\\d{2})\\d{4}" withPossibleNumberPattern:@"\\d{8,10}" withExample:@"1919123456"]; self.sharedCost = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1700\\d{6}" withPossibleNumberPattern:@"\\d{10}" withExample:@"1700123456"]; self.personalNumber = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.voip = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"7(?:18\\d|2[23]\\d|3[237]\\d|47\\d|6(?:5\\d|8[0168])|7\\d{2}|8(?:2\\d|33|55|77|81)|9[29]\\d)\\d{5}" withPossibleNumberPattern:@"\\d{9}" withExample:@"771234567"]; self.pager = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.uan = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"[2-689]\\d{3}|1599\\d{6}" withPossibleNumberPattern:@"\\d{4}(?:\\d{6})?" withExample:@"1599123456"]; self.emergency = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:nil withPossibleNumberPattern:nil withExample:nil]; self.voicemail = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"NA" withPossibleNumberPattern:@"NA" withExample:nil]; self.noInternationalDialling = [[NBPhoneNumberDesc alloc] initWithNationalNumberPattern:@"1700\\d{6}|[2-689]\\d{3}" withPossibleNumberPattern:@"\\d{4,10}" withExample:@"1700123456"]; self.codeID = @"IL"; self.countryCode = [NSNumber numberWithInteger:972]; self.internationalPrefix = @"0(?:0|1[2-9])"; self.preferredInternationalPrefix = nil; self.nationalPrefix = @"0"; self.preferredExtnPrefix = nil; self.nationalPrefixForParsing = @"0"; self.nationalPrefixTransformRule = nil; self.sameMobileAndFixedLinePattern = NO; NSMutableArray *numberFormats_FormatArray = [[NSMutableArray alloc] init]; NSMutableArray *numberFormats0_patternArray = [[NSMutableArray alloc] init]; [numberFormats0_patternArray addObject:@"[2-489]"]; NBNumberFormat *numberFormats0 = [[NBNumberFormat alloc] initWithPattern:@"([2-489])(\\d{3})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats0_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats0]; NSMutableArray *numberFormats1_patternArray = [[NSMutableArray alloc] init]; [numberFormats1_patternArray addObject:@"[57]"]; NBNumberFormat *numberFormats1 = [[NBNumberFormat alloc] initWithPattern:@"([57]\\d)(\\d{3})(\\d{4})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats1_patternArray withNationalPrefixFormattingRule:@"0$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats1]; NSMutableArray *numberFormats2_patternArray = [[NSMutableArray alloc] init]; [numberFormats2_patternArray addObject:@"1[7-9]"]; NBNumberFormat *numberFormats2 = [[NBNumberFormat alloc] initWithPattern:@"(1)([7-9]\\d{2})(\\d{3})(\\d{3})" withFormat:@"$1-$2-$3-$4" withLeadingDigitsPatterns:numberFormats2_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats2]; NSMutableArray *numberFormats3_patternArray = [[NSMutableArray alloc] init]; [numberFormats3_patternArray addObject:@"125"]; NBNumberFormat *numberFormats3 = [[NBNumberFormat alloc] initWithPattern:@"(1255)(\\d{3})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats3_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats3]; NSMutableArray *numberFormats4_patternArray = [[NSMutableArray alloc] init]; [numberFormats4_patternArray addObject:@"120"]; NBNumberFormat *numberFormats4 = [[NBNumberFormat alloc] initWithPattern:@"(1200)(\\d{3})(\\d{3})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats4_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats4]; NSMutableArray *numberFormats5_patternArray = [[NSMutableArray alloc] init]; [numberFormats5_patternArray addObject:@"121"]; NBNumberFormat *numberFormats5 = [[NBNumberFormat alloc] initWithPattern:@"(1212)(\\d{2})(\\d{2})" withFormat:@"$1-$2-$3" withLeadingDigitsPatterns:numberFormats5_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats5]; NSMutableArray *numberFormats6_patternArray = [[NSMutableArray alloc] init]; [numberFormats6_patternArray addObject:@"15"]; NBNumberFormat *numberFormats6 = [[NBNumberFormat alloc] initWithPattern:@"(1599)(\\d{6})" withFormat:@"$1-$2" withLeadingDigitsPatterns:numberFormats6_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats6]; NSMutableArray *numberFormats7_patternArray = [[NSMutableArray alloc] init]; [numberFormats7_patternArray addObject:@"[2-689]"]; NBNumberFormat *numberFormats7 = [[NBNumberFormat alloc] initWithPattern:@"(\\d{4})" withFormat:@"*$1" withLeadingDigitsPatterns:numberFormats7_patternArray withNationalPrefixFormattingRule:@"$1" whenFormatting:NO withDomesticCarrierCodeFormattingRule:nil]; [numberFormats_FormatArray addObject:numberFormats7]; self.numberFormats = numberFormats_FormatArray; NSMutableArray *intlNumberFormats_FormatArray = [[NSMutableArray alloc] init]; self.intlNumberFormats = intlNumberFormats_FormatArray; self.mainCountryForCode = NO; self.leadingDigits = nil; self.leadingZeroPossible = NO; } return self; } @end