{"version":3,"sources":["webpack://libphonenumber/webpack/universalModuleDefinition","webpack://libphonenumber/webpack/bootstrap","webpack://libphonenumber/./es6/metadata.js","webpack://libphonenumber/./es6/constants.js","webpack://libphonenumber/./es6/parse_.js","webpack://libphonenumber/./es6/parsePhoneNumber.js","webpack://libphonenumber/./es6/getNumberType_.js","webpack://libphonenumber/./es6/util.js","webpack://libphonenumber/./es6/findNumbers/util.js","webpack://libphonenumber/./es6/validate_.js","webpack://libphonenumber/./es6/PhoneNumber.js","webpack://libphonenumber/./es6/extension.js","webpack://libphonenumber/./es6/isViablePhoneNumber.js","webpack://libphonenumber/./es6/PhoneNumberMatcher.js","webpack://libphonenumber/./es6/getNumberType.js","webpack://libphonenumber/./es6/format_.js","webpack://libphonenumber/./es6/RFC3966.js","webpack://libphonenumber/./es6/isPossibleNumber_.js","webpack://libphonenumber/./es6/ParseError.js","webpack://libphonenumber/./es6/parseDigits.js","webpack://libphonenumber/./es6/parseIncompletePhoneNumber.js","webpack://libphonenumber/./es6/AsYouType.js","webpack://libphonenumber/./es6/findNumbers/utf-8.js","webpack://libphonenumber/./es6/findNumbers/isValidCandidate.js","webpack://libphonenumber/./es6/findNumbers/isValidPreCandidate.js","webpack://libphonenumber/./es6/findNumbers/parsePreCandidate.js","webpack://libphonenumber/./es6/findPhoneNumbers_.js","webpack://libphonenumber/./es6/parsePhoneNumber_.js","webpack://libphonenumber/./es6/isValidNumberForRegion_.js","webpack://libphonenumber/./es6/IDD.js","webpack://libphonenumber/./es6/getCountryCallingCode.js","webpack://libphonenumber/./es6/formatIncompletePhoneNumber.js","webpack://libphonenumber/./es6/getCountries.js","webpack://libphonenumber/./es6/searchNumbers.js","webpack://libphonenumber/./es6/findNumbers/Leniency.js","webpack://libphonenumber/./es6/findNumbers/LRUCache.js","webpack://libphonenumber/./es6/findNumbers/RegExpCache.js","webpack://libphonenumber/./es6/findNumbers_.js","webpack://libphonenumber/./es6/findNumbers.js","webpack://libphonenumber/./es6/isValidNumberForRegion.js","webpack://libphonenumber/./es6/isPossibleNumber.js","webpack://libphonenumber/./es6/getExampleNumber.js","webpack://libphonenumber/./es6/parsePhoneNumberFromString_.js","webpack://libphonenumber/./es6/parsePhoneNumberFromString.js","webpack://libphonenumber/./metadata.min.json.js","webpack://libphonenumber/./es6/findPhoneNumbers.js","webpack://libphonenumber/./es6/validate.js","webpack://libphonenumber/./es6/format.js","webpack://libphonenumber/./es6/parse.js","webpack://libphonenumber/./es6/tools/semver-compare.js","webpack://libphonenumber/./index.es6.js"],"names":["root","factory","exports","module","define","amd","window","installedModules","__webpack_require__","moduleId","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","configurable","enumerable","get","r","value","n","__esModule","object","property","prototype","hasOwnProperty","p","s","validateMetadata","getExtPrefix","country","metadata","Metadata","hasCountry","ext","DEFAULT_EXT_PREFIX","getCountryCallingCode","countryCallingCode","Error","isSupportedCountry","undefined","countries","_semverCompare","_typeof","Symbol","_typeof2","iterator","obj","constructor","_createClass","defineProperties","target","props","length","descriptor","writable","key","Constructor","protoProps","staticProps","_classCallCheck","instance","TypeError","V3","this","v1","version","v2","_semverCompare2","default","v3","keys","_country","country_metadata","countryCallingCodes","_this","formats","_getFormats","getDefaultCountryMetadataForRegion","map","_","Format","_getNationalPrefixFormattingRule","nationalPrefix","_getNationalPrefixIsOptionalWhenFormatting","types","_type","hasTypes","getType","Type","country_phone_code_to_countries","country_calling_codes","country_calling_code","format","_format","nationalPrefixFormattingRule","nationalPrefixIsOptionalWhenFormatting","usesNationalPrefix","test","replace","type","possibleLengths","is_object","join","type_of","MIN_LENGTH_FOR_NSN","MAX_LENGTH_FOR_NSN","MAX_LENGTH_COUNTRY_CODE","VALID_DIGITS","WHITESPACE","VALID_PUNCTUATION","PLUS_CHARS","text","options","arguments","_metadata2","defaultCountry","_ParseError2","_parse_input","indexOf","_RFC","parseRFC3966","number","extract_formatted_phone_number","_isViablePhoneNumber2","with_extension_stripped","_extension","extractExtension","parse_input","formatted_phone_number","_parse_phone_number","default_country","_extractCountryCallin","extractCountryCallingCode","chooseCountryByCountryCallingCode","_getCountryCallingCode2","_parse_national_numbe","national_number","_parseIncompletePhoneNumber2","carrier_code","_strip_national_prefi","strip_national_prefix_and_carrier_code","potential_national_number","carrierCode","_getNumberType_","checkNumberLengthForType","_util","matchesEntirely","nationalNumberPattern","parse_national_number","exactCountry","find_country_code","parse_phone_number","nationalNumber","selectedCountry","_constants","phoneNumber","_PhoneNumber2","valid","extended","result","phone","possible","_isPossibleNumber_","is_possible_number","_IDD","MAX_INPUT_STRING_LENGTH","PHONE_NUMBER_START_PATTERN","RegExp","AFTER_PHONE_NUMBER_END_PATTERN","starts_at","search","slice","nationalPrefixForParsing","national_prefix_pattern","national_prefix_matcher","exec","national_significant_number","captured_groups_count","nationalPrefixTransformRule","national_prefix","national_phone_number","possible_countries","_iterator","_isArray","Array","isArray","_i","_ref","next","done","leadingDigits","_getNumberType_2","_find_country_code","numberWithoutIDD","stripIDDPrefix","_normalizeArguments","normalizeArguments","_parsePhoneNumber_2","_parsePhoneNumber_","_extends","assign","source","_slicedToArray","arr","_arr","_n","_d","_e","_s","push","err","sliceIterator","args","_Array$prototype$slic","_Array$prototype$slic2","arg_1","arg_2","arg_3","arg_4","isObject","input","is_of_type","pattern","NON_FIXED_LINE_PHONE_TYPES","type_info","possible_lengths","mobile_type","mergeArrays","actual_length","minimum_length","_metadata","regular_expression","a","b","merged","element","sort","limit","lower","upper","trimAfterFirstMatch","regexp","string","index","startsWith","substring","endsWith","PhoneNumber","isCountryCode","_metadata3","_isPossibleNumber_2","_validate_2","_format_2","start","EXTN_PATTERN","number_without_extension","matches","match","RFC3966_EXTN_PREFIX","CAPTURING_EXTN_DIGITS","create_extension_pattern","purpose","single_extension_characters","EXTN_PATTERNS_FOR_PARSING","EXTN_PATTERNS_FOR_MATCHING","VALID_PHONE_NUMBER_PATTERN","MIN_LENGTH_PHONE_NUMBER_PATTERN","VALID_PHONE_NUMBER","_utf","_isValidCandidate","INNER_MATCHES","pZ","PZ","leadLimit","punctuationLimit","digitBlockLimit","blockLimit","punctuation","digitSequence","pNd","PATTERN","LEAD_CLASS","UNWANTED_END_CHAR_PATTERN","_pN","_pL","MAX_SAFE_INTEGER","Number","Math","pow","PhoneNumberMatcher","state","searchIndex","regExpCache","_RegExpCache2","leniency","maxTries","_Leniency2","candidate","offset","_parsePreCandidate2","_isValidPreCandidate2","parseAndVerify","extractInnerMatch","startsAt","endsAt","isFirstMatch","possibleInnerMatch","_group","_match","group","_isValidCandidate2","_parse_2","lastMatch","find","hasNext","defaultOptions","addExtension","format_national_number","formatExtension","formatRFC3966","fromCountry","IDDPrefix","getIDDPrefix","humanReadable","formattedForSameCountryCallingCode","formatIDDSameCountryCallingCodeNumber","format_national_number_using_format","choose_format_for_number","changeInternationalFormatStyle","formattedNumber","extension","FIRST_GROUP_PATTERN","useInternationalFormat","includeNationalPrefixForNationalFormat","internationalFormat","format_as","available_formats","leadingDigitsPatterns","last_leading_digits_pattern","local","trim","toCountryCallingCode","toCountryMetadata","fromCountryMetadata","split","part","_part$split","_part$split2","_ref2","_isViablePhoneNumber","is_international","ParseError","code","message","stack","create","parseDigit","character","digit","DIGITS","0","1","2","3","4","5","6","7","8","9","0","1","2","3","4","5","6","7","8","9","٠","١","٢","٣","٤","٥","٦","٧","٨","٩","۰","۱","۲","۳","۴","۵","۶","۷","۸","۹","parsePhoneNumberCharacter","_parseDigits","strip_dangling_braces","cut_stripping_dangling_braces","close_dangling_braces","template","cut_before","retained_template","opening_braces","count_occurences","closing_braces","dangling_braces","repeat","_parse_","_format_","LONGEST_DUMMY_PHONE_NUMBER","DIGIT_PLACEHOLDER","DIGIT_PLACEHOLDER_MATCHER","CREATE_CHARACTER_CLASS_PATTERN","CREATE_STANDALONE_DIGIT_PATTERN","ELIGIBLE_FORMAT_PATTERN","VALID_INCOMPLETE_PHONE_NUMBER","VALID_INCOMPLETE_PHONE_NUMBER_PATTERN","AsYouType","reset","extracted_number","processInput","currentOutput","parsedInput","resetCountriness","isInternational","determineTheCountry","initialize_phone_number_formats_for_this_country_calling_code","resetFormat","previous_national_prefix","extractNationalPrefix","matching_formats","format_as_non_formatted_number","match_formats_by_leading_digits","formatted_national_phone_number","formatNationalNumber","formatFullNumber","next_digits","national_number_formatted_with_previous_format","chosenFormat","formatNextNationalNumberDigits","formatted_number","attempt_to_format_complete_phone_number","chooseAnotherFormat","reformatNationalNumber","resetCountry","partially_populated_template","last_match_position","filter","leading_digits","index_of_leading_digits_pattern","had_enough_leading_digits","shouldFormat","leading_digits_patterns_count","leading_digits_pattern_index","min","leading_digits_pattern","isFormatApplicable","createFormattingTemplate","full_number","formattedNationalNumber","isPossibleNumber","_iterator2","_isArray2","_i2","nationalPrefixIsMandatoryWhenFormatting","getTemplateForNumberFormatPattern","number_pattern","dummy_phone_number_matching_format_pattern","number_format","getFormatFormat","strict_pattern","national_number_dummy_digits","digits","_iterator3","_isArray3","_i3","_ref3","pop","cleared_string","_iterator4","_isArray4","_i4","_ref4","cut_before_index","symbol","count","_iterator5","_isArray5","_i5","_ref5","times","isLatinLetter","letter","pL_regexp","pMn_regexp","latinLetterRegexp","isInvalidPunctuationSymbol","pSc_regexp","_pZ","MATCHING_BRACKETS_ENTIRE","PUB_PAGES","LEAD_CLASS_LEADING","previousChar","lastCharIndex","nextChar","BRACKET_PAIR_LIMIT","SLASH_SEPARATED_DATES","TIME_STAMPS","followingText","TIME_STAMPS_SUFFIX_LEADING","SECOND_NUMBER_START_PATTERN","PhoneNumberSearch","phones","searchPhoneNumbers","_defineProperty","WHITESPACE_IN_THE_BEGINNING_PATTERN","PUNCTUATION_IN_THE_END_PATTERN","parseCandidate","last_match","_validate_","countryMetadata","SINGLE_IDD_PREFIX","defaultIDDPrefix","IDDPrefixPattern","matchedGroups","CAPTURING_DIGIT_PATTERN","_AsYouType2","_AsYouType","getCountries","_parsePhoneNumber","matcher","_PhoneNumberMatcher2","_PhoneNumberMatcher","containsMoreThanOneSlashInNationalNumber","containsOnlyValidXChars","charAtIndex","charAt","charAtNextIndex","util","isNumberMatch","MatchType","NSN_MATCH","_parseDigits2","isNationalPrefixPresentIfRequired","getCountryCodeSource","phoneNumberRegion","getRegionCodeForCountryCode","getCountryCode","getMetadataForRegion","getNationalSignificantNumber","formatRule","chooseFormattingPatternForNumber","numberFormats","getNationalPrefixFormattingRule","getNationalPrefixOptionalWhenFormatting","PhoneNumberUtil","formattingRuleHasFirstGroupOnly","rawInputCopy","normalizeDigitsOnly","getRawInput","maybeStripNationalPrefixAndCarrierCode","firstSlashInBodyIndex","secondSlashInBodyIndex","CountryCodeSource","FROM_NUMBER_WITH_PLUS_SIGN","FROM_NUMBER_WITHOUT_PLUS_SIGN","String","checkNumberGroupingIsValid","checkGroups","normalizedCandidate","normalizeDigits","formattedNumberGroups","getNationalNumberGroups","alternateFormats","MetadataManager","getAlternateFormatsForCountry","nationalSignificantNumber","alternateFormat","getPatternForRegExp","formattingPattern","formatNsnUsingPattern","rfc3966Format","formatNumber","endIndex","startIndex","allNumberGroupsAreExactlyPresent","candidateGroups","NON_DIGITS_PATTERN","candidateNumberGroupIndex","hasExtension","contains","formattedNumberGroupIndex","allNumberGroupsRemainGrouped","fromIndex","FROM_DEFAULT_COUNTRY","countryCode","region","getNddPrefixForRegion","Character","isDigit","getExtension","POSSIBLE","VALID","toString","STRICT_GROUPING","candidateString","EXACT_GROUPING","Node","prev","LRUCache","size","head","tail","cache","ensureLimit","node","remove","put","console","log","_LRUCache","RegExpCache","_LRUCache2","regExp","results","_findNumbers_2","_findNumbers_","_isValidNumberForRegion_2","_getNumberType","examples","_PhoneNumber","error","_parsePhoneNumberFromString_2","_parsePhoneNumberFromString_","20","27","30","31","32","33","34","36","39","40","41","43","44","45","46","47","48","49","51","52","53","54","55","56","57","58","60","61","62","63","64","65","66","81","82","84","86","90","91","92","93","94","95","98","211","212","213","216","218","220","221","222","223","224","225","226","227","228","229","230","231","232","233","234","235","236","237","238","239","240","241","242","243","244","245","246","247","248","249","250","251","252","253","254","255","256","257","258","260","261","262","263","264","265","266","267","268","269","290","291","297","298","299","350","351","352","353","354","355","356","357","358","359","370","371","372","373","374","375","376","377","378","380","381","382","383","385","386","387","389","420","421","423","500","501","502","503","504","505","506","507","508","509","590","591","592","593","594","595","596","597","598","599","670","672","673","674","675","676","677","678","679","680","681","682","683","685","686","687","688","689","690","691","692","800","808","850","852","853","855","856","870","878","880","881","882","883","886","888","960","961","962","963","964","965","966","967","968","970","971","972","973","974","975","976","977","979","992","993","994","995","996","998","AC","AD","AE","AF","AG","AI","AL","AM","AO","AR","AS","AT","AU","AW","AX","AZ","BA","BB","BD","BE","BF","BG","BH","BI","BJ","BL","BM","BN","BO","BQ","BR","BS","BT","BW","BY","BZ","CA","CC","CD","CF","CG","CH","CI","CK","CL","CM","CN","CO","CR","CU","CV","CW","CX","CY","CZ","DE","DJ","DK","DM","DO","DZ","EC","EE","EG","EH","ER","ES","ET","FI","FJ","FK","FM","FO","FR","GA","GB","GD","GE","GF","GG","GH","GI","GL","GM","GN","GP","GQ","GR","GT","GU","GW","GY","HK","HN","HR","HT","HU","ID","IE","IL","IM","IN","IO","IQ","IR","IS","IT","JE","JM","JO","JP","KE","KG","KH","KI","KM","KN","KP","KR","KW","KY","KZ","LA","LB","LC","LI","LK","LR","LS","LT","LU","LV","LY","MA","MC","MD","ME","MF","MG","MH","MK","ML","MM","MN","MO","MP","MQ","MR","MS","MT","MU","MV","MW","MX","MY","MZ","NA","NC","NE","NF","NG","NI","NL","NO","NP","NR","NU","NZ","OM","PA","PE","PF","PG","PH","PK","PL","PM","PR","PS","PT","PW","PY","QA","RE","RO","RS","RU","RW","SA","SB","SC","SD","SE","SG","SH","SI","SJ","SK","SL","SM","SN","SO","SR","SS","ST","SV","SX","SY","SZ","TA","TC","TD","TG","TH","TJ","TK","TL","TM","TN","TO","TR","TT","TV","TW","TZ","UA","UG","US","UY","UZ","VA","VC","VE","VG","VI","VN","VU","WF","WS","XK","YE","YT","ZA","ZM","ZW","001","_findPhoneNumbers_2","_normalizeArguments2","_findPhoneNumbers_","arg_5","pa","pb","na","nb","isNaN","parsePhoneNumber","parameters","_metadataMinJson2","_parsePhoneNumber2","apply","parsePhoneNumberFromString","_parsePhoneNumberFromString2","parseNumber","_parse2","parse","_format2","getNumberType","_getNumberType2","getExampleNumber","_getExampleNumber2","_isPossibleNumber2","isValidNumber","_validate2","isValidNumberForRegion","_isValidNumberForRegion2","findPhoneNumbers","_findPhoneNumbers2","_findPhoneNumbers","findNumbers","_findNumbers2","searchNumbers","_searchNumbers2","formatIncompletePhoneNumber","_formatIncompletePhoneNumber2","_parse","_validate","_getCountryCallingCode","_getCountries2","getPhoneCode","getPhoneCodeCustom"],"mappings":"CAAA,SAAAA,EAAAC,GACA,iBAAAC,SAAA,iBAAAC,OACAA,OAAAD,QAAAD,IACA,mBAAAG,eAAAC,IACAD,OAAA,oBAAAH,GACA,iBAAAC,QACAA,QAAA,eAAAD,IAEAD,EAAA,eAAAC,IARA,CASCK,OAAA,WACD,mBCTA,IAAAC,KAGA,SAAAC,EAAAC,GAGA,GAAAF,EAAAE,GACA,OAAAF,EAAAE,GAAAP,QAGA,IAAAC,EAAAI,EAAAE,IACAC,EAAAD,EACAE,GAAA,EACAT,YAUA,OANAU,EAAAH,GAAAI,KAAAV,EAAAD,QAAAC,IAAAD,QAAAM,GAGAL,EAAAQ,GAAA,EAGAR,EAAAD,QA2CA,OAtCAM,EAAAM,EAAAF,EAGAJ,EAAAO,EAAAR,EAGAC,EAAAQ,EAAA,SAAAd,EAAAe,EAAAC,GACAV,EAAAW,EAAAjB,EAAAe,IACAG,OAAAC,eAAAnB,EAAAe,GACAK,cAAA,EACAC,YAAA,EACAC,IAAAN,KAMAV,EAAAiB,EAAA,SAAAvB,GACAkB,OAAAC,eAAAnB,EAAA,cAAiDwB,OAAA,KAIjDlB,EAAAmB,EAAA,SAAAxB,GACA,IAAAe,EAAAf,KAAAyB,WACA,WAA2B,OAAAzB,EAAA,SAC3B,WAAiC,OAAAA,GAEjC,OADAK,EAAAQ,EAAAE,EAAA,IAAAA,GACAA,GAIAV,EAAAW,EAAA,SAAAU,EAAAC,GAAsD,OAAAV,OAAAW,UAAAC,eAAAnB,KAAAgB,EAAAC,IAGtDtB,EAAAyB,EAAA,GAIAzB,IAAA0B,EAAA,sSC4RgBC,qBAmCAC,aAAT,SAAsBC,EAASC,GAErC,IADAA,EAAW,IAAIC,EAASD,IACXE,WAAWH,GACvB,OAAOC,EAASD,QAAQA,GAASI,MAElC,OAAOC,KAaQC,sBAAT,SAA+BN,EAASC,GAE9C,IADAA,EAAW,IAAIC,EAASD,IACXE,WAAWH,GACvB,OAAOC,EAASD,QAAQA,GAASO,qBAElC,MAAM,IAAIC,MAAM,oBAAsBR,MAGvBS,mBAAT,SAA4BT,EAASC,GAG3C,YAAuCS,IAAhCT,EAASU,UAAUX,IAzZ3B,MAAAY,EAAAzC,EAAA,wCANA,IAAI0C,EAA4B,mBAAXC,QAAoD,WAA3BC,EAAOD,OAAOE,UAAwB,SAAUC,GAAO,gBAAcA,EAAd,YAAAF,EAAcE,IAAS,SAAUA,GAAO,OAAOA,GAAyB,mBAAXH,QAAyBG,EAAIC,cAAgBJ,QAAUG,IAAQH,OAAOpB,UAAY,cAAhG,IAAkHuB,EAAlH,YAAAF,EAAkHE,IAElQE,EAAe,WAAc,SAASC,EAAiBC,EAAQC,GAAS,IAAK,IAAIjD,EAAI,EAAGA,EAAIiD,EAAMC,OAAQlD,IAAK,CAAE,IAAImD,EAAaF,EAAMjD,GAAImD,EAAWtC,WAAasC,EAAWtC,aAAc,EAAOsC,EAAWvC,cAAe,EAAU,UAAWuC,IAAYA,EAAWC,UAAW,GAAM1C,OAAOC,eAAeqC,EAAQG,EAAWE,IAAKF,IAAiB,OAAO,SAAUG,EAAaC,EAAYC,GAAiJ,OAA9HD,GAAYR,EAAiBO,EAAYjC,UAAWkC,GAAiBC,GAAaT,EAAiBO,EAAaE,GAAqBF,GAA7gB,GAEnB,SAASG,EAAgBC,EAAUJ,GAAe,KAAMI,aAAoBJ,GAAgB,MAAM,IAAIK,UAAU,qCAMhH,IAGIC,EAAK,QAEL5B,EAAqB,SAErBH,EAAW,WACd,SAASA,EAASD,GACjB6B,EAAgBI,KAAMhC,GAEtBJ,EAAiBG,GAEjBiC,KAAKjC,SAAWA,EAEhBiC,KAAKC,IAAMlC,EAASmC,QACpBF,KAAKG,QAA0B3B,IAArBT,EAASmC,UAA4D,KAAnC,EAAAE,EAAAC,SAAQtC,EAASmC,QAASH,GACtEC,KAAKM,QAA0B9B,IAArBT,EAASmC,QA4MpB,OAzMAjB,EAAajB,IACZwB,IAAK,eACLrC,MAAO,WACN,OAAON,OAAO0D,KAAKP,KAAKjC,SAASU,cAGlCe,IAAK,aACLrC,MAAO,SAAoBW,GAC1B,YAA4CU,IAArCwB,KAAKjC,SAASU,UAAUX,MAGhC0B,IAAK,UACLrC,MAAO,SAAiBqD,GACvB,IAAKA,EAGJ,OAFAR,KAAKQ,cAAWhC,EAChBwB,KAAKS,sBAAmBjC,EACjBwB,KAGR,IAAKA,KAAK/B,WAAWuC,GACpB,MAAM,IAAIlC,MAAM,oBAAsBkC,GAKvC,OAFAR,KAAKQ,SAAWA,EAChBR,KAAKS,iBAAmBT,KAAKjC,SAASU,UAAU+B,GACzCR,QAGRR,IAAK,qCACLrC,MAAO,WACN,OAAO6C,KAAKjC,SAASU,UAAUuB,KAAKU,sBAAsBV,KAAK3B,sBAAsB,OAGtFmB,IAAK,qBACLrC,MAAO,WACN,OAAO6C,KAAKS,iBAAiB,MAG9BjB,IAAK,YACLrC,MAAO,WACN,IAAI6C,KAAKC,KAAMD,KAAKG,GACpB,OAAOH,KAAKS,iBAAiB,MAG9BjB,IAAK,mBACLrC,MAAO,WACN,IAAI6C,KAAKC,KAAMD,KAAKG,GACpB,OAAOH,KAAKS,iBAAiB,OAG9BjB,IAAK,wBACLrC,MAAO,WACN,OAAI6C,KAAKC,IAAMD,KAAKG,GAAWH,KAAKS,iBAAiB,GAC9CT,KAAKS,iBAAiB,MAG9BjB,IAAK,kBACLrC,MAAO,WACN,IAAI6C,KAAKC,GACT,OAAOD,KAAKS,iBAAiBT,KAAKG,GAAK,EAAI,MAG5CX,IAAK,cACLrC,MAAO,SAAqBsD,GAC3B,OAAOA,EAAiBT,KAAKC,GAAK,EAAID,KAAKG,GAAK,EAAI,MAQrDX,IAAK,UACLrC,MAAO,WACN,IAAIwD,EAAQX,KAERY,EAAUZ,KAAKa,YAAYb,KAAKS,mBAAqBT,KAAKa,YAAYb,KAAKc,0CAC/E,OAAOF,EAAQG,IAAI,SAAUC,GAC5B,OAAO,IAAIC,EAAOD,EAAGL,QAIvBnB,IAAK,iBACLrC,MAAO,WACN,OAAO6C,KAAKS,iBAAiBT,KAAKC,GAAK,EAAID,KAAKG,GAAK,EAAI,MAG1DX,IAAK,mCACLrC,MAAO,SAA0CsD,GAChD,OAAOA,EAAiBT,KAAKC,GAAK,EAAID,KAAKG,GAAK,EAAI,MAQrDX,IAAK,+BACLrC,MAAO,WACN,OAAO6C,KAAKkB,iCAAiClB,KAAKS,mBAAqBT,KAAKkB,iCAAiClB,KAAKc,yCAGnHtB,IAAK,2BACLrC,MAAO,WAGN,OAAO6C,KAAKS,iBAAiBT,KAAKC,GAAK,EAAID,KAAKG,GAAK,EAAI,IAAMH,KAAKmB,oBAGrE3B,IAAK,8BACLrC,MAAO,WACN,OAAO6C,KAAKS,iBAAiBT,KAAKC,GAAK,EAAID,KAAKG,GAAK,EAAI,MAG1DX,IAAK,6CACLrC,MAAO,WACN,QAAS6C,KAAKS,iBAAiBT,KAAKC,GAAK,EAAID,KAAKG,GAAK,EAAI,MAS5DX,IAAK,yCACLrC,MAAO,WACN,OAAO6C,KAAKoB,2CAA2CpB,KAAKS,mBAAqBT,KAAKoB,2CAA2CpB,KAAKc,yCAGvItB,IAAK,gBACLrC,MAAO,WACN,OAAO6C,KAAKS,iBAAiBT,KAAKC,GAAK,EAAID,KAAKG,GAAK,EAAI,OAG1DX,IAAK,QACLrC,MAAO,WACN,OAAO6C,KAAKS,iBAAiBT,KAAKC,GAAK,EAAID,KAAKG,GAAK,GAAK,OAG3DX,IAAK,WACLrC,MAAO,WAGN,QAAI6C,KAAKqB,SAAmC,IAAxBrB,KAAKqB,QAAQhC,WAKxBW,KAAKqB,WAGf7B,IAAK,OACLrC,MAAO,SAAcmE,GACpB,GAAItB,KAAKuB,YAAcC,EAAQxB,KAAKqB,QAASC,GAC5C,OAAO,IAAIG,EAAKD,EAAQxB,KAAKqB,QAASC,GAAQtB,SAIhDR,IAAK,MACLrC,MAAO,WACN,OAAI6C,KAAKC,IAAMD,KAAKG,GAAWhC,EACxB6B,KAAKS,iBAAiB,KAAOtC,KAGrCqB,IAAK,sBACLrC,MAAO,WACN,OAAI6C,KAAKC,GAAWD,KAAKjC,SAAS2D,gCAC3B1B,KAAKjC,SAAS4D,yBAetBnC,IAAK,oCACLrC,MAAO,SAA2CyE,GACjD,IAAI9D,EAAUkC,KAAKU,sBAAsBkB,GAAsB,GAK3D5B,KAAK/B,WAAWH,IACnBkC,KAAKlC,QAAQA,MAIf0B,IAAK,kBACLrC,MAAO,WACN,OAAO6C,KAAKQ,aAIPxC,EAtNO,aAyNAA,EAEf,IAAIiD,EAAS,WACZ,SAASA,EAAOY,EAAQ9D,GACvB6B,EAAgBI,KAAMiB,GAEtBjB,KAAK8B,QAAUD,EACf7B,KAAKjC,SAAWA,EAyDjB,OAtDAkB,EAAagC,IACZzB,IAAK,UACLrC,MAAO,WACN,OAAO6C,KAAK8B,QAAQ,MAGrBtC,IAAK,SACLrC,MAAO,WACN,OAAO6C,KAAK8B,QAAQ,MAGrBtC,IAAK,wBACLrC,MAAO,WACN,OAAO6C,KAAK8B,QAAQ,UAGrBtC,IAAK,+BACLrC,MAAO,WACN,OAAO6C,KAAK8B,QAAQ,IAAM9B,KAAKjC,SAASgE,kCAGzCvC,IAAK,yCACLrC,MAAO,WACN,QAAS6C,KAAK8B,QAAQ,IAAM9B,KAAKjC,SAASiE,4CAG3CxC,IAAK,0CACLrC,MAAO,WAMN,OAAO6C,KAAKiC,uBAAyBjC,KAAKgC,4CAM3CxC,IAAK,qBACLrC,MAAO,WACN,OAAO6C,KAAK+B,gCAE4B,OAAxC/B,KAAK+B,gCAEL,KAAKG,KAAKlC,KAAK+B,+BAA+BI,QAAQ,KAAM,QAG7D3C,IAAK,sBACLrC,MAAO,WACN,OAAO6C,KAAK8B,QAAQ,IAAM9B,KAAK6B,aAI1BZ,EA9DK,GAiETQ,EAAO,WACV,SAASA,EAAKW,EAAMrE,GACnB6B,EAAgBI,KAAMyB,GAEtBzB,KAAKoC,KAAOA,EACZpC,KAAKjC,SAAWA,EAiBjB,OAdAkB,EAAawC,IACZjC,IAAK,UACLrC,MAAO,WACN,OAAI6C,KAAKjC,SAASkC,GAAWD,KAAKoC,KAC3BpC,KAAKoC,KAAK,MAGlB5C,IAAK,kBACLrC,MAAO,WACN,IAAI6C,KAAKjC,SAASkC,GAClB,OAAOD,KAAKoC,KAAK,IAAMpC,KAAKjC,SAASsE,sBAIhCZ,EAtBG,GAyBX,SAASD,EAAQH,EAAOe,GACvB,OAAQA,GACP,IAAK,aACJ,OAAOf,EAAM,GACd,IAAK,SACJ,OAAOA,EAAM,GACd,IAAK,YACJ,OAAOA,EAAM,GACd,IAAK,eACJ,OAAOA,EAAM,GACd,IAAK,kBACJ,OAAOA,EAAM,GACd,IAAK,YACJ,OAAOA,EAAM,GACd,IAAK,MACJ,OAAOA,EAAM,GACd,IAAK,QACJ,OAAOA,EAAM,GACd,IAAK,OACJ,OAAOA,EAAM,GACd,IAAK,cACJ,OAAOA,EAAM,IAIT,SAASzD,EAAiBG,GAChC,IAAKA,EACJ,MAAM,IAAIO,MAAM,6EAKjB,IAAKgE,EAAUvE,KAAcuE,EAAUvE,EAASU,aAAe6D,EAAUvE,EAAS4D,yBAA2BW,EAAUvE,EAAS2D,iCAC/H,MAAM,IAAIpD,MAAM,sLAAyLgE,EAAUvE,GAAY,yBAA2BlB,OAAO0D,KAAKxC,GAAUwE,KAAK,MAAQ,KAAO,KAAOC,EAAQzE,GAAY,KAAOA,GAAY,KAOpV,IAAIuE,EAAY,SAAmBtB,GAClC,MAAiE,iBAA5C,IAANA,EAAoB,YAAcrC,EAAQqC,KAMtDwB,EAAU,SAAiBxB,GAC9B,YAAoB,IAANA,EAAoB,YAAcrC,EAAQqC,mFCrX9CyB,qBAAqB,EAIrBC,qBAAqB,GAGrBC,0BAA0B,EAI1BC,eAAe,eAXnB,IAiBIC,eAAa,SASbC,oBAAoB,cAA+BD,EAR/C,mBAUJE,aAAa,8FC2BT,SAAeC,GAC7B,IAAIC,EAAUC,UAAU7D,OAAS,QAAsBb,IAAjB0E,UAAU,GAAmBA,UAAU,MACzEnF,EAAWmF,UAAU,GAKzB,GAHAnF,EAAW,IAAAoF,EAAA9C,QAAatC,GAGpBkF,EAAQG,iBAAmBrF,EAASE,WAAWgF,EAAQG,gBAAiB,CAC3E,GAAIH,EAAQ9C,GACX,MAAM,IAAAkD,EAAAhD,QAAe,mBAEtB,MAAM,IAAI/B,MAAM,oBAAsB2E,EAAQG,gBAK/C,IAAIE,EAqSL,SAAqBN,EAAM7C,GAE1B,GAAI6C,GAAiC,IAAzBA,EAAKO,QAAQ,QACxB,OAAO,EAAAC,EAAAC,cAAaT,GAGrB,IAAIU,EAASC,EAA+BX,EAAM7C,GAGlD,IAAKuD,KAAW,EAAAE,EAAAvD,SAAoBqD,GACnC,SAKD,IAAIG,GAA0B,EAAAC,EAAAC,kBAAiBL,GAC/C,GAAIG,EAAwB3F,IAC3B,OAAO2F,EAGR,OAASH,OAAQA,GAzTEM,CAAYhB,EAAMC,EAAQ9C,IACzC8D,EAAyBX,EAAaI,OACtCxF,EAAMoF,EAAapF,IAKvB,IAAK+F,EAAwB,CAC5B,GAAIhB,EAAQ9C,GACX,MAAM,IAAAkD,EAAAhD,QAAe,gBAEtB,SAGD,IAAI6D,EAkUL,SAA4BD,EAAwBE,EAAiBpG,GACpE,IAAIqG,EAAwBC,EAA0BJ,EAAwBE,EAAiBpG,EAASA,UACpGM,EAAqB+F,EAAsB/F,mBAC3CqF,EAASU,EAAsBV,OAEnC,IAAKA,EACJ,OAASrF,mBAAoBA,GAG9B,IAAIP,OAAU,EAEd,GAAIO,EACHN,EAASuG,kCAAkCjG,OACrC,KAAI8F,EAIJ,SAHNpG,EAASD,QAAQqG,GACjBrG,EAAUqG,EACV9F,GAAqB,EAAAkG,EAAAlE,SAAsB8D,EAAiBpG,EAASA,UAGtE,IAAIyG,EA8BL,SAA+Bd,EAAQ3F,GACtC,IAAI0G,GAAkB,EAAAC,EAAArE,SAA2BqD,GAC7CiB,OAAe,EAYfC,EAAwBC,EAAuCJ,EAAiB1G,GAChF+G,EAA4BF,EAAsBlB,OAClDqB,EAAcH,EAAsBG,YAKxC,GAAIhH,EAASsE,kBAKZ,QAAQ,EAAA2C,EAAAC,0BAAyBH,OAA2BtG,EAAWT,IACtE,IAAK,YAEL,IAAK,iBACJ,MACD,QACC0G,EAAkBK,EAClBH,EAAeI,OASb,EAAAG,EAAAC,iBAAgBV,EAAiB1G,EAASqH,4BAA6B,EAAAF,EAAAC,iBAAgBL,EAA2B/G,EAASqH,2BAG9HX,EAAkBK,EAClBH,EAAeI,GAIjB,OACCN,gBAAiBA,EACjBE,aAAcA,GAlFaU,CAAsB3B,EAAQ3F,GACtD0G,EAAkBD,EAAsBC,gBACxCE,EAAeH,EAAsBG,aAcrCW,EAAeC,EAAkBlH,EAAoBoG,EAAiB1G,GACtEuH,IACHxH,EAAUwH,EACVvH,EAASD,QAAQA,IAGlB,OACCA,QAASA,EACTO,mBAAoBA,EACpBoG,gBAAiBA,EACjBM,YAAaJ,GA/WYa,CAAmBvB,EAAwBhB,EAAQG,eAAgBrF,GACzFD,EAAUoG,EAAoBpG,QAC9B2H,EAAiBvB,EAAoBO,gBACrCpG,EAAqB6F,EAAoB7F,mBACzC0G,EAAcb,EAAoBa,YAEtC,IAAKhH,EAAS2H,kBAAmB,CAChC,GAAIzC,EAAQ9C,GACX,MAAM,IAAAkD,EAAAhD,QAAe,mBAEtB,SAID,GAAIoF,EAAepG,OAAfsG,EAAAlD,mBAA4C,CAG/C,GAAIQ,EAAQ9C,GACX,MAAM,IAAAkD,EAAAhD,QAAe,aAGtB,SAYD,GAAIoF,EAAepG,OAAfsG,EAAAjD,mBAA4C,CAC/C,GAAIO,EAAQ9C,GACX,MAAM,IAAAkD,EAAAhD,QAAe,YAGtB,SAGD,GAAI4C,EAAQ9C,GAAI,CACf,IAAIyF,EAAc,IAAAC,EAAAxF,QAAgBhC,EAAoBoH,EAAgB1H,EAASA,UAY/E,OAVID,IACH8H,EAAY9H,QAAUA,GAEnBiH,IACHa,EAAYb,YAAcA,GAEvB7G,IACH0H,EAAY1H,IAAMA,GAGZ0H,EAMR,IAAIE,KAAQhI,KAAW,EAAAoH,EAAAC,iBAAgBM,EAAgB1H,EAASqH,0BAEhE,IAAKnC,EAAQ8C,SACZ,OAAOD,EAkPT,SAAgBhI,EAAS2G,EAAiBvG,GACzC,IAAI8H,GACHlI,QAASA,EACTmI,MAAOxB,GAGJvG,IACH8H,EAAO9H,IAAMA,GAGd,OAAO8H,EA5PSA,CAAOlI,EAAS2H,EAAgBvH,MAGhD,OACCJ,QAASA,EACTO,mBAAoBA,EACpB0G,YAAaA,EACbe,MAAOA,EACPI,WAAUJ,IAAoC,IAArB7C,EAAQ8C,UAAqBhI,EAASsE,oBAAqB,EAAA8D,EAAAC,oBAAmBX,OAAuCjH,IAAvBH,EAAkCN,GACzJkI,MAAOR,EACPvH,IAAKA,MASSyF,mCA8BAkB,2CAoHAU,sBAoNAlB,4BAzgBhB,IAAAsB,EAAA1J,EAAA,GAEAiJ,EAAAjJ,EAAA,OACAA,EAAA,SACAA,EAAA,QACAA,EAAA,KACA6H,EAAA7H,EAAA,OACAA,EAAA,SACAA,EAAA,KACA+I,EAAA/I,EAAA,UACAkK,EAAAlK,EAAA,IACAoK,EAAApK,EAAA,IACAuH,EAAAvH,EAAA,QACAA,EAAA,uDAIA,IAAIqK,EAA0B,IAG1BC,EAA6B,IAAIC,OAAO,IAAAb,EAAA5C,WAAA4C,EAAA/C,aAAkC,KAG1E6D,EAAiC,IAAID,OAAO,KAAAb,EAAA/C,aAAsB,OA4I/D,SAASe,EAA+BX,EAAM7C,GACpD,GAAK6C,EAIL,GAAIA,EAAK3D,OAASiH,GACjB,GAAInG,EACH,MAAM,IAAAkD,EAAAhD,QAAe,gBAFvB,CASA,IAAIqG,EAAY1D,EAAK2D,OAAOJ,GAE5B,KAAIG,EAAY,GAIhB,OAAO1D,EAEN4D,MAAMF,GAENvE,QAAQsE,EAAgC,KAMnC,SAAS5B,EAAuCnB,EAAQ3F,GAC9D,IAAK2F,IAAW3F,EAAS8I,2BACxB,OAASnD,OAAQA,GAiBlB,IAAIoD,EAA0B,IAAIN,OAAO,OAASzI,EAAS8I,2BAA6B,KACpFE,EAA0BD,EAAwBE,KAAKtD,GAgB3D,IAAKqD,EACJ,OAASrD,OAAQA,GAGlB,IAAIuD,OAA8B,EAmC9BC,EAAwBH,EAAwB1H,OAAS,EAC7D,GAAItB,EAASoJ,+BAAiCJ,EAAwBG,GACrED,EAA8BvD,EAAOvB,QAAQ2E,EAAyB/I,EAASoJ,mCAG3E,CAGH,IAAIC,EAAkBL,EAAwB,GAC9CE,EAA8BvD,EAAOkD,MAAMQ,EAAgB/H,QAG7D,IAAI0F,OAAc,EAuBlB,OAtBImC,EAAwB,IAC3BnC,EAAcgC,EAAwB,KAsBtCrD,OAAQuD,EACRlC,YAAaA,GAIR,SAASQ,EAAkB3D,EAAsByF,EAAuBtJ,GAE9E,IAAIuJ,EAAqBvJ,EAAS2C,sBAAsBkB,GAIxD,OAAkC,IAA9B0F,EAAmBjI,OACfiI,EAAmB,GAO5B,SAA4BA,EAAoBD,EAAuBtJ,GACtEA,EAAW,IAAAoF,EAAA9C,QAAatC,GAExB,IAAK,IAAIwJ,EAAYD,EAAoBE,EAAWC,MAAMC,QAAQH,GAAYI,EAAK,EAAGJ,EAAYC,EAAWD,EAAYA,EAAU3I,OAAOE,cAAe,CACxJ,IAAI8I,EAEJ,GAAIJ,EAAU,CACb,GAAIG,GAAMJ,EAAUlI,OAAQ,MAC5BuI,EAAOL,EAAUI,SACX,CAEN,IADAA,EAAKJ,EAAUM,QACRC,KAAM,MACbF,EAAOD,EAAGxK,MAGX,IAAIW,EAAU8J,EAKd,GAHA7J,EAASD,QAAQA,GAGbC,EAASgK,iBACZ,GAAIV,GAAoF,IAA3DA,EAAsBV,OAAO5I,EAASgK,iBAClE,OAAOjK,OAKJ,IAAI,EAAAkK,EAAA3H,UAAgB4F,MAAOoB,EAAuBvJ,QAASA,QAAWU,EAAWT,EAASA,UAC7F,OAAOD,GAhCHmK,CAAmBX,EAAoBD,EAAuBtJ,EAASA,UA0MxE,SAASsG,EAA0BX,EAAQ5F,EAASC,GAG1D,KAFA2F,GAAS,EAAAgB,EAAArE,SAA2BqD,IAGnC,SAKD,GAAkB,MAAdA,EAAO,GAAY,CAGtB,IAAIwE,GAAmB,EAAA7B,EAAA8B,gBAAezE,EAAQ5F,EAASC,GAKvD,IAAImK,GAAoBA,IAAqBxE,EAG5C,OAASA,OAAQA,GAFjBA,EAAS,IAAMwE,EAOjB,GAAkB,MAAdxE,EAAO,GACV,SAGD3F,EAAW,IAAAoF,EAAA9C,QAAatC,GAYxB,IADA,IAAI5B,EAAI,EACDA,EAAI,GAAJwJ,EAAAhD,yBAAoCxG,GAAKuH,EAAOrE,QAAQ,CAC9D,IAAIhB,EAAqBqF,EAAOkD,MAAM,EAAGzK,GAEzC,GAAI4B,EAAS2C,sBAAsBrC,GAClC,OACCA,mBAAoBA,EACpBqF,OAAQA,EAAOkD,MAAMzK,IAIvBA,IAGD,mTC5jBc,WACd,IAAIiM,EAAsBC,EAAmBnF,WACzCF,EAAOoF,EAAoBpF,KAC3BC,EAAUmF,EAAoBnF,QAC9BlF,EAAWqK,EAAoBrK,SAEnC,OAAO,EAAAuK,EAAAjI,SAAkB2C,EAAMC,EAASlF,MAGzBsK,qBAXhB,MAAAE,EAAAtM,EAAA,wCANA,IAAI0C,EAA4B,mBAAXC,QAAoD,WAA3BC,EAAOD,OAAOE,UAAwB,SAAUC,GAAO,gBAAcA,EAAd,YAAAF,EAAcE,IAAS,SAAUA,GAAO,OAAOA,GAAyB,mBAAXH,QAAyBG,EAAIC,cAAgBJ,QAAUG,IAAQH,OAAOpB,UAAY,cAAhG,IAAkHuB,EAAlH,YAAAF,EAAkHE,IAElQyJ,EAAW3L,OAAO4L,QAAU,SAAUtJ,GAAU,IAAK,IAAIhD,EAAI,EAAGA,EAAI+G,UAAU7D,OAAQlD,IAAK,CAAE,IAAIuM,EAASxF,UAAU/G,GAAI,IAAK,IAAIqD,KAAOkJ,EAAc7L,OAAOW,UAAUC,eAAenB,KAAKoM,EAAQlJ,KAAQL,EAAOK,GAAOkJ,EAAOlJ,IAAY,OAAOL,GAEnPwJ,EAAiB,WAAwZ,OAAO,SAAUC,EAAKzM,GAAK,GAAIsL,MAAMC,QAAQkB,GAAQ,OAAOA,EAAY,GAAIhK,OAAOE,YAAYjC,OAAO+L,GAAQ,OAAxf,SAAuBA,EAAKzM,GAAK,IAAI0M,KAAeC,GAAK,EAAUC,GAAK,EAAWC,OAAKxK,EAAW,IAAM,IAAK,IAAiCyK,EAA7BtB,EAAKiB,EAAIhK,OAAOE,cAAmBgK,GAAMG,EAAKtB,EAAGE,QAAQC,QAAoBe,EAAKK,KAAKD,EAAG9L,QAAYhB,GAAK0M,EAAKxJ,SAAWlD,GAA3D2M,GAAK,IAAoE,MAAOK,GAAOJ,GAAK,EAAMC,EAAKG,EAAtL,QAAuM,KAAWL,GAAMnB,EAAA,QAAcA,EAAA,SAA/B,QAA2D,GAAIoB,EAAI,MAAMC,GAAQ,OAAOH,EAA6HO,CAAcR,EAAKzM,GAAa,MAAM,IAAI2D,UAAU,yDAAjkB,GAad,SAASuI,EAAmBgB,GAClC,IAAIC,EAAwB7B,MAAMjK,UAAUoJ,MAAMtK,KAAK+M,GACnDE,EAAyBZ,EAAeW,EAAuB,GAC/DE,EAAQD,EAAuB,GAC/BE,EAAQF,EAAuB,GAC/BG,EAAQH,EAAuB,GAC/BI,EAAQJ,EAAuB,GAE/BvG,OAAO,EACPC,OAAU,EACVlF,OAAW,EAIf,GAAqB,iBAAVyL,EAEJ,MAAM,IAAI1J,UAAU,wCAI3B,GALCkD,EAAOwG,EAKHC,GAA0B,iBAAVA,EAehB,KAAIG,EAASH,GAOV,MAAM,IAAInL,MAAM,4BAA8BmL,GANhDC,GACHzG,EAAUwG,EACV1L,EAAW2L,GAEX3L,EAAW0L,OAnBTE,GACH1G,EAAUyG,EACV3L,EAAW4L,IAEX1G,OAAUzE,EACVT,EAAW2L,GAGRD,IACHxG,EAAUuF,GAAWpF,eAAgBqG,GAASxG,IAchD,OACCD,KAAMA,EACNC,QAASA,EACTlF,SAAUA,GAMZ,IAAI6L,EAAW,SAAkB5I,GAChC,MAAiE,iBAA5C,IAANA,EAAoB,YAAcrC,EAAQqC,8FCjE3C,SAAuB6I,GACrC,IAAI5G,EAAUC,UAAU7D,OAAS,QAAsBb,IAAjB0E,UAAU,GAAmBA,UAAU,MACzEnF,EAAWmF,UAAU,GAIzB,IAAK2G,EAAM/L,QACV,OAKD,KAFAC,EAAW,IAAAoF,EAAA9C,QAAatC,IAEVE,WAAW4L,EAAM/L,SAC9B,MAAM,IAAIQ,MAAM,oBAAsBuL,EAAM/L,SAG7C,IAAI2H,EAAiBxC,EAAQ9C,GAAK0J,EAAMpE,eAAiBoE,EAAM5D,MAO/D,GANAlI,EAASD,QAAQ+L,EAAM/L,WAMlB,EAAAoH,EAAAC,iBAAgBM,EAAgB1H,EAASqH,yBAC7C,OAID,GAAI0E,EAAWrE,EAAgB,aAAc1H,GAK5C,OAAIA,EAASqE,KAAK,WAAmD,KAAtCrE,EAASqE,KAAK,UAAU2H,UAC/C,uBAMHhM,EAASqE,KAAK,UAOf0H,EAAWrE,EAAgB,SAAU1H,GACjC,uBAGD,aAVC,uBAaT,IAAK,IAAIwJ,EAAYyC,EAA4BxC,EAAWC,MAAMC,QAAQH,GAAYI,EAAK,EAAGJ,EAAYC,EAAWD,EAAYA,EAAU3I,OAAOE,cAAe,CAChK,IAAI8I,EAEJ,GAAIJ,EAAU,CACb,GAAIG,GAAMJ,EAAUlI,OAAQ,MAC5BuI,EAAOL,EAAUI,SACX,CAEN,IADAA,EAAKJ,EAAUM,QACRC,KAAM,MACbF,EAAOD,EAAGxK,MAGX,IAAImE,EAAQsG,EAEZ,GAAIkC,EAAWrE,EAAgBnE,EAAOvD,GACrC,OAAOuD,MAKMwI,eAqBA7E,yBAAT,SAASA,EAAyBQ,EAAgBrD,EAAMrE,GAC9D,IAAIkM,EAAYlM,EAASqE,KAAKA,GAS9B,IAAI8H,EAAmBD,GAAaA,EAAU5H,mBAAqBtE,EAASsE,kBAG5E,GAAa,yBAATD,EAAiC,CAGpC,IAAKrE,EAASqE,KAAK,cAGlB,OAAO6C,EAAyBQ,EAAgB,SAAU1H,GAG3D,IAAIoM,EAAcpM,EAASqE,KAAK,UAE5B+H,IAMHD,GAAmB,EAAAhF,EAAAkF,aAAYF,EAAkBC,EAAY9H,yBAgB1D,GAAID,IAAS6H,EAChB,MAAO,iBAGT,IAAII,EAAgB5E,EAAepG,OAUnC,IAAIiL,EAAiBJ,EAAiB,GAEtC,GAAII,IAAmBD,EACtB,MAAO,cAGR,GAAIC,EAAiBD,EACpB,MAAO,YAGR,GAAIH,EAAiBA,EAAiB7K,OAAS,GAAKgL,EACnD,MAAO,WAIR,OAAOH,EAAiB3G,QAAQ8G,EAAe,IAAM,EAAI,cAAgB,kBAhL1E,MAAAE,EAAAtO,EAAA,uCACAiJ,EAAAjJ,EAAA,GAEA,IAAI+N,GAA8B,SAAU,eAAgB,YAAa,cAAe,OAAQ,kBAAmB,QAAS,MAAO,aA6E5H,SAASF,EAAWrE,EAAgBrD,EAAMrE,GAGhD,UAFAqE,EAAOrE,EAASqE,KAAKA,MAEPA,EAAK2H,eAUf3H,EAAKC,mBAAqBD,EAAKC,kBAAkBkB,QAAQkC,EAAepG,QAAU,KAI/E,EAAA6F,EAAAC,iBAAgBM,EAAgBrD,EAAK2H,8FC/F7B5E,gBAAT,WACN,IAAInC,EAAOE,UAAU7D,OAAS,QAAsBb,IAAjB0E,UAAU,GAAmBA,UAAU,GAAK,GAC3EsH,EAAqBtH,UAAU,GAEnC,OAAO,IAAIsD,OAAO,OAASgE,EAAqB,MAAMtI,KAAKc,MAS5CoH,YAAT,SAAqBK,EAAGC,GAG9B,IAFA,IAAIC,EAASF,EAAE7D,QAENW,EAAYmD,EAAGlD,EAAWC,MAAMC,QAAQH,GAAYI,EAAK,EAAGJ,EAAYC,EAAWD,EAAYA,EAAU3I,OAAOE,cAAe,CACvI,IAAI8I,EAEJ,GAAIJ,EAAU,CACb,GAAIG,GAAMJ,EAAUlI,OAAQ,MAC5BuI,EAAOL,EAAUI,SACX,CAEN,IADAA,EAAKJ,EAAUM,QACRC,KAAM,MACbF,EAAOD,EAAGxK,MAGX,IAAIyN,EAAUhD,EAEV6C,EAAElH,QAAQqH,GAAW,GACxBD,EAAOzB,KAAK0B,GAId,OAAOD,EAAOE,KAAK,SAAUJ,EAAGC,GAC/B,OAAOD,EAAIC,sFCrCGI,MAAT,SAAeC,EAAOC,GAC5B,GAAID,EAAQ,GAAKC,GAAS,GAAKA,EAAQD,EACtC,MAAM,IAAIjL,UAEX,MAAO,IAAMiL,EAAQ,IAAMC,EAAQ,OAOpBC,oBAAT,SAA6BC,EAAQC,GAC3C,IAAIC,EAAQD,EAAOxE,OAAOuE,GAE1B,GAAIE,GAAS,EACZ,OAAOD,EAAOvE,MAAM,EAAGwE,GAGxB,OAAOD,KAGQE,WAAT,SAAoBF,EAAQG,GAClC,OAAqC,IAA9BH,EAAO5H,QAAQ+H,MAGPC,SAAT,SAAkBJ,EAAQG,GAChC,OAAOH,EAAO5H,QAAQ+H,EAAWH,EAAO9L,OAASiM,EAAUjM,UAAY8L,EAAO9L,OAASiM,EAAUjM,iGCMnF,SAAuBwK,GACpC,IAAI5G,EAAUC,UAAU7D,OAAS,QAAsBb,IAAjB0E,UAAU,GAAmBA,UAAU,MACzEnF,EAAWmF,UAAU,GAMzB,GAJAnF,EAAW,IAAAoF,EAAA9C,QAAatC,IAInB8L,EAAM/L,QACT,OAAO,EAGT,IAAKC,EAASE,WAAW4L,EAAM/L,SAC7B,MAAM,IAAIQ,MAAM,oBAAsBuL,EAAM/L,SAO9C,GAJAC,EAASD,QAAQ+L,EAAM/L,SAInBC,EAASwD,WACX,YAA4D/C,KAArD,EAAAwJ,EAAA3H,SAAcwJ,EAAO5G,EAASlF,EAASA,UAKhD,IAAI0G,EAAkBxB,EAAQ9C,GAAK0J,EAAMpE,eAAiBoE,EAAM5D,MAChE,OAAO,EAAAf,EAAAC,iBAAgBV,EAAiB1G,EAASqH,0BA5DnD,QAAAnJ,EAAA,IACAiJ,EAAAjJ,EAAA,OACAA,EAAA,uICIA,QAAAA,EAAA,QACAA,EAAA,SACAA,EAAA,SACAA,EAAA,OACAA,EAAA,SACAA,EAAA,wDAXA,IAAIuM,EAAW3L,OAAO4L,QAAU,SAAUtJ,GAAU,IAAK,IAAIhD,EAAI,EAAGA,EAAI+G,UAAU7D,OAAQlD,IAAK,CAAE,IAAIuM,EAASxF,UAAU/G,GAAI,IAAK,IAAIqD,KAAOkJ,EAAc7L,OAAOW,UAAUC,eAAenB,KAAKoM,EAAQlJ,KAAQL,EAAOK,GAAOkJ,EAAOlJ,IAAY,OAAOL,GAEnPF,EAAe,WAAc,SAASC,EAAiBC,EAAQC,GAAS,IAAK,IAAIjD,EAAI,EAAGA,EAAIiD,EAAMC,OAAQlD,IAAK,CAAE,IAAImD,EAAaF,EAAMjD,GAAImD,EAAWtC,WAAasC,EAAWtC,aAAc,EAAOsC,EAAWvC,cAAe,EAAU,UAAWuC,IAAYA,EAAWC,UAAW,GAAM1C,OAAOC,eAAeqC,EAAQG,EAAWE,IAAKF,IAAiB,OAAO,SAAUG,EAAaC,EAAYC,GAAiJ,OAA9HD,GAAYR,EAAiBO,EAAYjC,UAAWkC,GAAiBC,GAAaT,EAAiBO,EAAaE,GAAqBF,GAA7gB,GAWnB,IAAI+L,EAAc,WACjB,SAASA,EAAYnN,EAAoBoH,EAAgB1H,GAGxD,GAbF,SAAyB8B,EAAUJ,GAAe,KAAMI,aAAoBJ,GAAgB,MAAM,IAAIK,UAAU,qCAW9GF,CAAgBI,KAAMwL,IAEjBnN,EACJ,MAAM,IAAIyB,UAAU,mCAErB,IAAK2F,EACJ,MAAM,IAAI3F,UAAU,+BAIrB,GAAI2L,EAAcpN,GAAqB,CACtC2B,KAAKlC,QAAUO,EACf,IAAIkM,EAAY,IAAAmB,EAAArL,QAAatC,GAC7BwM,EAAUzM,QAAQO,GAClBA,EAAqBkM,EAAUlM,qBAEhC2B,KAAK3B,mBAAqBA,EAC1B2B,KAAKyF,eAAiBA,EACtBzF,KAAK0D,OAAS,IAAM1D,KAAK3B,mBAAqB2B,KAAKyF,eACnDzF,KAAKjC,SAAWA,EA+CjB,OA5CAkB,EAAauM,IACZhM,IAAK,aACLrC,MAAO,WACN,OAAO,EAAAwO,EAAAtL,SAAiBL,MAAQG,IAAI,GAAQH,KAAKjC,aAGlDyB,IAAK,UACLrC,MAAO,WACN,OAAO,EAAAyO,EAAAvL,SAAcL,MAAQG,IAAI,GAAQH,KAAKjC,aAU/CyB,IAAK,UACLrC,MAAO,WACN,OAAO,EAAA6K,EAAA3H,SAAcL,MAAQG,IAAI,GAAQH,KAAKjC,aAG/CyB,IAAK,SACLrC,MAAO,SAAgB2E,EAASmB,GAC/B,OAAO,EAAA4I,EAAAxL,SAAaL,KAAM8B,EAASmB,EAAUuF,KAAavF,GAAW9C,IAAI,KAAYA,IAAI,GAAQH,KAAKjC,aAGvGyB,IAAK,iBACLrC,MAAO,SAAwB8F,GAC9B,OAAOjD,KAAK6B,OAAO,WAAYoB,MAGhCzD,IAAK,sBACLrC,MAAO,SAA6B8F,GACnC,OAAOjD,KAAK6B,OAAO,gBAAiBoB,MAGrCzD,IAAK,SACLrC,MAAO,SAAgB8F,GACtB,OAAOjD,KAAK6B,OAAO,UAAWoB,OAIzBuI,EApEU,aAuEHA,EAGf,IAAIC,EAAgB,SAAuBtO,GAC1C,MAAQ,aAAa+E,KAAK/E,qJCtBX4G,iBAAT,SAA0BL,GAChC,IAAIoI,EAAQpI,EAAOiD,OAAOoF,GAC1B,GAAID,EAAQ,EACX,SAKD,IAAIE,EAA2BtI,EAAOkD,MAAM,EAAGkF,GAE3CG,EAAUvI,EAAOwI,MAAMH,GACvB5P,EAAI,EACR,KAAOA,EAAI8P,EAAQ5M,QAAQ,CAC1B,GAAkB,MAAd4M,EAAQ9P,IAAc8P,EAAQ9P,GAAGkD,OAAS,EAC7C,OACCqE,OAAQsI,EACR9N,IAAK+N,EAAQ9P,IAGfA,MArFF,IAAAwJ,EAAA1J,EAAA,GAGIkQ,EAAsB,QAItBC,EAAwB,KAAAzG,EAAA/C,aAAsB,UAiBlD,SAASyJ,EAAyBC,GAEjC,IAAIC,EAA8B,SAElC,OAAQD,GAGP,IAAK,UACJC,EAA8B,KAAOA,EAGvC,OAAOJ,EAAsBC,EAAwB,qDAEvBG,EAA8B,qCAAmEH,EAAwB,aAFhJzG,EAAA/C,aAEmL,WAkBpL,IAAI4J,8BAA4BH,EAAyB,WAM5DN,GAJOU,6BAA6BJ,EAAyB,YAI9C,IAAI7F,OAAO,MAAQgG,EAA4B,KAAM,+FCTzD,SAA6B9I,GAC3C,OAAOA,EAAOrE,QAAPsG,EAAAlD,oBAAuCiK,EAA2BxK,KAAKwB,IArD/E,IAAAiC,EAAA1J,EAAA,GAEA6H,EAAA7H,EAAA,GA0BI0Q,EAAkC,IAAAhH,EAAA/C,aAAqB,KAArB+C,EAAAlD,mBAAiD,IAKnFmK,EAAqB,IAAAjH,EAAA5C,WAAmB,aAAnB4C,EAAA7C,kBAAgE,MAAhE6C,EAAA/C,aAA4F,UAA5F+C,EAAA7C,kBAAA6C,EAAA/C,aAAqJ,KAI1K8J,EAA6B,IAAIlG,OAErC,IAAMmG,EAAkC,MAElCC,EAEN,MAJA9I,EAAA0I,0BAIoC,MAAY,oFC/BhD,QAAAvQ,EAAA,IAEA0J,EAAA1J,EAAA,GAEA6H,EAAA7H,EAAA,OAEAA,EAAA,KAEAiJ,EAAAjJ,EAAA,GAEA4Q,EAAA5Q,EAAA,QAEAA,EAAA,SACAA,EAAA,SACAA,EAAA,KACA6Q,EAAA7Q,EAAA,WAEAsO,EAAAtO,EAAA,OAEAA,EAAA,uDA/BA,IAAIuM,EAAW3L,OAAO4L,QAAU,SAAUtJ,GAAU,IAAK,IAAIhD,EAAI,EAAGA,EAAI+G,UAAU7D,OAAQlD,IAAK,CAAE,IAAIuM,EAASxF,UAAU/G,GAAI,IAAK,IAAIqD,KAAOkJ,EAAc7L,OAAOW,UAAUC,eAAenB,KAAKoM,EAAQlJ,KAAQL,EAAOK,GAAOkJ,EAAOlJ,IAAY,OAAOL,GAEnPF,EAAe,WAAc,SAASC,EAAiBC,EAAQC,GAAS,IAAK,IAAIjD,EAAI,EAAGA,EAAIiD,EAAMC,OAAQlD,IAAK,CAAE,IAAImD,EAAaF,EAAMjD,GAAImD,EAAWtC,WAAasC,EAAWtC,aAAc,EAAOsC,EAAWvC,cAAe,EAAU,UAAWuC,IAAYA,EAAWC,UAAW,GAAM1C,OAAOC,eAAeqC,EAAQG,EAAWE,IAAKF,IAAiB,OAAO,SAAUG,EAAaC,EAAYC,GAAiJ,OAA9HD,GAAYR,EAAiBO,EAAYjC,UAAWkC,GAAiBC,GAAaT,EAAiBO,EAAaE,GAAqBF,GAA7gB,GAyCnB,IAAIsN,GAEJ,YAIA,aAIA,MAAAF,EAAAG,GAAa,MAAbH,EAAAG,GAA0B,IAA1BH,EAAAG,GAAqC,QAKrC,SAAAH,EAAAG,GAA+B,QAG/B,OAAAH,EAAAG,GAAc,WAGdH,EAAAG,GAAK,KAALH,EAAAI,GAAiB,MAGbC,GAAY,EAAAhI,EAAA4F,OAAM,EAAG,GAGrBqC,GAAmB,EAAAjI,EAAA4F,OAAM,EAAG,GAK5BsC,EAAkBzH,EAAAjD,mBAAAiD,EAAAhD,wBAIlB0K,GAAa,EAAAnI,EAAA4F,OAAM,EAAGsC,GAGtBE,EAAc,IAAA3H,EAAA7C,kBAA0B,IAAMqK,EAG9CI,EAAgBV,EAAAW,KAAM,EAAAtI,EAAA4F,OAAM,EAAGsC,GAkB/BK,EAAU,MAAAX,EAAAY,WAAqBJ,EAAc,IAAMJ,EAAYK,EAAgB,MAAQD,EAAcC,EAAgB,IAAMF,EAAa,MAA9HvJ,EAAA2I,2BAAmK,KAU7KkB,EAA4B,IAAInH,OAAO,KAAAqG,EAAAe,IAAAf,EAAAgB,IAAmB,QAI1DC,EAAmBC,OAAOD,kBAAoBE,KAAKC,IAAI,EAAG,IAAM,EAahEC,EAAqB,WAoBvB,SAASA,IACP,IAAIlL,EAAOE,UAAU7D,OAAS,QAAsBb,IAAjB0E,UAAU,GAAmBA,UAAU,GAAK,GAC3ED,EAAUC,UAAU7D,OAAS,QAAsBb,IAAjB0E,UAAU,GAAmBA,UAAU,MACzEnF,EAAWmF,UAAU,GAczB,GAnKJ,SAAyBrD,EAAUJ,GAAe,KAAMI,aAAoBJ,GAAgB,MAAM,IAAIK,UAAU,qCAuJ5GF,CAAgBI,KAAMkO,GAEtBlO,KAAKmO,MAAQ,YACbnO,KAAKoO,YAAc,EACnBpO,KAAKqO,YAAc,IAAAC,EAAAjO,QAAgB,MAEnC4C,EAAUuF,KAAavF,GACrBG,eAAgBH,EAAQG,iBAAkB,EAAAmH,EAAAhM,oBAAmB0E,EAAQG,eAAgBrF,GAAYkF,EAAQG,oBAAiB5E,EAC1H+P,SAAUtL,EAAQsL,UAAYtL,EAAQ8C,SAAW,WAAa,QAC9DyI,SAAUvL,EAAQuL,UAAYV,KAGnBS,SACX,MAAM,IAAIzO,UAAU,2BAGtB,GAAImD,EAAQuL,SAAW,EACrB,MAAM,IAAI1O,UAAU,2BAUtB,GAPAE,KAAKgD,KAAOA,EACZhD,KAAKiD,QAAUA,EACfjD,KAAKjC,SAAWA,EAGhBiC,KAAKuO,SAAWE,EAAApO,QAAS4C,EAAQsL,WAE5BvO,KAAKuO,SACR,MAAM,IAAIzO,UAAU,qBAAuBmD,EAAQsL,SAAW,KAIhEvO,KAAKwO,SAAWvL,EAAQuL,SAExBxO,KAAKyN,QAAU,IAAIjH,OAAOiH,EAAS,MAqMrC,OAjLAxO,EAAaiP,IACX1O,IAAK,OACLrC,MAAO,WAML,IADA,IAAI8O,OAAU,EACPjM,KAAKwO,SAAW,GAAkD,QAA5CvC,EAAUjM,KAAKyN,QAAQzG,KAAKhH,KAAKgD,QAAiB,CAC7E,IAAI0L,EAAYzC,EAAQ,GACpB0C,EAAS1C,EAAQb,MAIrB,GAFAsD,GAAY,EAAAE,EAAAvO,SAAkBqO,IAE1B,EAAAG,EAAAxO,SAAoBqO,EAAWC,EAAQ3O,KAAKgD,MAAO,CACrD,IAAIkJ,EAEJlM,KAAK8O,eAAeJ,EAAWC,EAAQ3O,KAAKgD,OAGzChD,KAAK+O,kBAAkBL,EAAWC,EAAQ3O,KAAKgD,MAElD,GAAIkJ,EAAO,CACT,GAAIlM,KAAKiD,QAAQ9C,GAAI,CACnB,IAAIyF,EAAc,IAAAC,EAAAxF,QAAgB6L,EAAMpO,QAASoO,EAAMjG,MAAOjG,KAAKjC,UAInE,OAHImO,EAAMhO,MACR0H,EAAY1H,IAAMgO,EAAMhO,MAGxB8Q,SAAU9C,EAAM8C,SAChBC,OAAQ/C,EAAM+C,OACdvL,OAAQkC,GAGZ,OAAOsG,GAIXlM,KAAKwO,eAUThP,IAAK,oBACLrC,MAAO,SAA2BuR,EAAWC,EAAQ3L,GAC9C,IAAIuE,EAAYwF,EAAevF,EAAWC,MAAMC,QAAQH,GAAYI,EAAK,EAA9E,IAAiFJ,EAAYC,EAAWD,EAAYA,EAAU3I,OAAOE,cAAe,CAClJ,IAAI8I,EAEJ,GAAIJ,EAAU,CACZ,GAAIG,GAAMJ,EAAUlI,OAAQ,MAC5BuI,EAAOL,EAAUI,SACZ,CAEL,IADAA,EAAKJ,EAAUM,QACRC,KAAM,MACbF,EAAOD,EAAGxK,MAQZ,IALA,IAEI+R,GAAe,EACfjD,OAAU,EACVkD,EAAqB,IAAI3I,OAJLoB,EAI+B,KACG,QAAlDqE,EAAUkD,EAAmBnI,KAAK0H,KAAwB1O,KAAKwO,SAAW,GAAG,CACnF,GAAIU,EAAc,CAEhB,IAAIE,GAAS,EAAAlK,EAAA+F,qBAAoB0C,EAA2Be,EAAU9H,MAAM,EAAGqF,EAAQb,QAEnFiE,EAASrP,KAAK8O,eAAeM,EAAQT,EAAQ3L,GACjD,GAAIqM,EACF,OAAOA,EAGTrP,KAAKwO,WACLU,GAAe,EAGjB,IAAII,GAAQ,EAAApK,EAAA+F,qBAAoB0C,EAA2B1B,EAAQ,IAK/DC,EAAQlM,KAAK8O,eAAeQ,EAAOX,EAAS1C,EAAQb,MAAOpI,GAC/D,GAAIkJ,EACF,OAAOA,EAGTlM,KAAKwO,gBAgBXhP,IAAK,iBACLrC,MAAO,SAAwBuR,EAAWC,EAAQ3L,GAChD,IAAK,EAAAuM,EAAAlP,SAAiBqO,EAAWC,EAAQ3L,EAAMhD,KAAKiD,QAAQsL,UAA5D,CAIA,IAAI7K,GAAS,EAAA8L,EAAAnP,SAAYqO,GACvB3I,UAAU,EACV3C,eAAgBpD,KAAKiD,QAAQG,gBAC5BpD,KAAKjC,UAER,GAAK2F,EAAOwC,UAIRlG,KAAKuO,SAAS7K,EAAQgL,EAAW1O,KAAKjC,SAAUiC,KAAKqO,aAAc,CASrE,IAAIrI,GACFgJ,SAAUL,EACVM,OAAQN,EAASD,EAAUrP,OAC3BvB,QAAS4F,EAAO5F,QAChBmI,MAAOvC,EAAOuC,OAOhB,OAJIvC,EAAOxF,MACT8H,EAAO9H,IAAMwF,EAAOxF,KAGf8H,OAIXxG,IAAK,UACLrC,MAAO,WAYL,MAXmB,cAAf6C,KAAKmO,QACPnO,KAAKyP,UAAYzP,KAAK0P,OAElB1P,KAAKyP,UAEPzP,KAAKmO,MAAQ,QAEbnO,KAAKmO,MAAQ,QAIK,UAAfnO,KAAKmO,SAGd3O,IAAK,OACLrC,MAAO,WAEL,IAAK6C,KAAK2P,UACR,MAAM,IAAIrR,MAAM,mBAIlB,IAAI0H,EAAShG,KAAKyP,UAGlB,OAFAzP,KAAKyP,UAAY,KACjBzP,KAAKmO,MAAQ,YACNnI,MAIJkI,EAhQgB,aAmQVA,2SC5XA,WACd,IAAI9F,EAAsBC,EAAmBnF,WACzC2G,EAAQzB,EAAoByB,MAC5B5G,EAAUmF,EAAoBnF,QAC9BlF,EAAWqK,EAAoBrK,SAEnC,OAAO,EAAAiK,EAAA3H,SAAewJ,EAAO5G,EAASlF,MAIvBsK,qBAfhB,QAAApM,EAAA,SACAA,EAAA,QACAA,EAAA,uDANA,IAAI0C,EAA4B,mBAAXC,QAAoD,WAA3BC,EAAOD,OAAOE,UAAwB,SAAUC,GAAO,gBAAcA,EAAd,YAAAF,EAAcE,IAAS,SAAUA,GAAO,OAAOA,GAAyB,mBAAXH,QAAyBG,EAAIC,cAAgBJ,QAAUG,IAAQH,OAAOpB,UAAY,cAAhG,IAAkHuB,EAAlH,YAAAF,EAAkHE,IAElQ4J,EAAiB,WAAwZ,OAAO,SAAUC,EAAKzM,GAAK,GAAIsL,MAAMC,QAAQkB,GAAQ,OAAOA,EAAY,GAAIhK,OAAOE,YAAYjC,OAAO+L,GAAQ,OAAxf,SAAuBA,EAAKzM,GAAK,IAAI0M,KAAeC,GAAK,EAAUC,GAAK,EAAWC,OAAKxK,EAAW,IAAM,IAAK,IAAiCyK,EAA7BtB,EAAKiB,EAAIhK,OAAOE,cAAmBgK,GAAMG,EAAKtB,EAAGE,QAAQC,QAAoBe,EAAKK,KAAKD,EAAG9L,QAAYhB,GAAK0M,EAAKxJ,SAAWlD,GAA3D2M,GAAK,IAAoE,MAAOK,GAAOJ,GAAK,EAAMC,EAAKG,EAAtL,QAAuM,KAAWL,GAAMnB,EAAA,QAAcA,EAAA,SAA/B,QAA2D,GAAIoB,EAAI,MAAMC,GAAQ,OAAOH,EAA6HO,CAAcR,EAAKzM,GAAa,MAAM,IAAI2D,UAAU,yDAAjkB,GAiBd,SAASuI,EAAmBgB,GAClC,IAAIC,EAAwB7B,MAAMjK,UAAUoJ,MAAMtK,KAAK+M,GACnDE,EAAyBZ,EAAeW,EAAuB,GAC/DE,EAAQD,EAAuB,GAC/BE,EAAQF,EAAuB,GAC/BG,EAAQH,EAAuB,GAC/BI,EAAQJ,EAAuB,GAE/BM,OAAQ,EACR5G,KACAlF,OAAW,EAIf,GAAqB,iBAAVyL,EAI4D,iBAAhD,IAAVC,EAAwB,YAAc9K,EAAQ8K,KACrDE,GACH1G,EAAUyG,EACV3L,EAAW4L,GAEX5L,EAAW2L,EASXG,GADG,EAAAjG,EAAAvD,SAAoBmJ,IACf,EAAAgG,EAAAnP,SAAMmJ,GAASpG,eAAgBqG,GAAS1L,QAS5C2L,GACHzG,EAAUwG,EACV1L,EAAW2L,GAEX3L,EAAW0L,EASXI,GADG,EAAAjG,EAAAvD,SAAoBmJ,IACf,EAAAgG,EAAAnP,SAAMmJ,OAAOhL,EAAWT,WAQ/B,KAAIuE,EAAUkH,GASX,MAAM,IAAI1J,UAAU,sFAR1B+J,EAAQL,EAEJE,GACHzG,EAAUwG,EACV1L,EAAW2L,GAEX3L,EAAW0L,EAId,OACCI,MAAOA,EACP5G,QAASA,EACTlF,SAAUA,GAOZ,IAAIuE,EAAY,SAAmBtB,GAClC,MAAiE,iBAA5C,IAANA,EAAoB,YAAcrC,EAAQqC,2HCxEzC,SAAsB6I,EAAOhI,EAAQoB,EAASlF,GAG7DkF,EADGA,EACOuF,KAAaoH,EAAgB3M,GAE7B2M,EAKX,GAFA7R,EAAW,IAAAoF,EAAA9C,QAAatC,GAEpB8L,EAAM/L,QAAS,CAElB,IAAKC,EAASE,WAAW4L,EAAM/L,SAC9B,MAAM,IAAIQ,MAAM,oBAAsBuL,EAAM/L,SAE7CC,EAASD,QAAQ+L,EAAM/L,aACjB,KAAI+L,EAAMxL,mBAEV,OAAOwL,EAAM5D,OAAS,GAD5BlI,EAASuG,kCAAkCuF,EAAMxL,oBAGlD,IAAIA,EAAqBN,EAASM,qBAE9BoH,EAAiBxC,EAAQ9C,GAAK0J,EAAMpE,eAAiBoE,EAAM5D,MAI3DvC,OAAS,EAEb,OAAQ7B,GACP,IAAK,WAGJ,OAAK4D,EAIEoK,EADPnM,EAASoM,EAAuBrK,EAAgB,WAAY1H,GAChC8L,EAAM3L,IAAKH,EAAUkF,EAAQ8M,iBAHjD,GAKT,IAAK,gBAGJ,OAAKtK,GAGL/B,EAASoM,EAAuBrK,EAAgB,gBAAiB1H,GAE1D8R,EADPnM,EAAS,IAAMrF,EAAqB,IAAMqF,EACdmG,EAAM3L,IAAKH,EAAUkF,EAAQ8M,kBAJjD,IAAM1R,EAMf,IAAK,QAEJ,MAAO,IAAMA,EAAqBoH,EAEnC,IAAK,UACJ,OAAO,EAAAjC,EAAAwM,gBACNtM,OAAQ,IAAMrF,EAAqBoH,EACnCvH,IAAK2L,EAAM3L,MAGb,IAAK,MACJ,IAAK+E,EAAQgN,YACZ,OAGD,IAAIC,GAAY,EAAA7J,EAAA8J,cAAalN,EAAQgN,YAAalS,EAASA,UAC3D,IAAKmS,EACJ,OAED,GAAIjN,EAAQmN,cAAe,CAC1B,IAAIC,EAAqChS,GAAsBiS,EAAsC7K,EAAgB1H,EAASM,qBAAsB4E,EAAQgN,YAAalS,GAMzK,OAAO8R,EAJNnM,EADG2M,GAGMH,EAAY,IAAM7R,EAAqB,IAAMyR,EAAuBrK,EAAgB,gBAAiB1H,GAEnF8L,EAAM3L,IAAKH,EAAUkF,EAAQ8M,iBAE1D,MAAO,GAAKG,EAAY7R,EAAqBoH,EAE9C,QACC,MAAM,IAAInH,MAAM,0DAA4DuD,EAAS,SAUxE0O,wCAkBAC,6BA+DAC,mCAQAH,wCA1MhB,MAAA3K,EAAA1J,EAAA,GACAiJ,EAAAjJ,EAAA,GACAsO,EAAAtO,EAAA,uCACAoK,EAAApK,EAAA,IACAuH,EAAAvH,EAAA,IAXA,IAAIuM,EAAW3L,OAAO4L,QAAU,SAAUtJ,GAAU,IAAK,IAAIhD,EAAI,EAAGA,EAAI+G,UAAU7D,OAAQlD,IAAK,CAAE,IAAIuM,EAASxF,UAAU/G,GAAI,IAAK,IAAIqD,KAAOkJ,EAAc7L,OAAOW,UAAUC,eAAenB,KAAKoM,EAAQlJ,KAAQL,EAAOK,GAAOkJ,EAAOlJ,IAAY,OAAOL,GAanPyQ,GACHG,gBAAiB,SAAyBW,EAAiBC,EAAW5S,GACrE,MAAO,GAAK2S,EAAkB3S,EAASG,MAAQyS,IAuG1C,IAAIC,wBAAsB,SAE1B,SAASL,EAAoC7M,EAAQ7B,EAAQgP,EAAwBC,EAAwC/S,GACnI,IAAI2S,EAAkBhN,EAAOvB,QAAQ,IAAIqE,OAAO3E,EAAOkI,WAAY8G,EAAyBhP,EAAOkP,uBAAwBlP,EAAOE,gCAAoCF,EAAOG,2CAA4C8O,EAAgIjP,EAAOA,SAA7FA,EAAOA,SAASM,QAAQyO,EAAqB/O,EAAOE,iCAEvT,OAAI8O,EACIJ,EAA+BC,GAGhCA,EAGR,SAASZ,EAAuBpM,EAAQsN,EAAWjT,GAClD,IAAI8D,EAAS2O,EAAyBzS,EAAS6C,UAAW8C,GAC1D,OAAK7B,EAGE0O,EAAoC7M,EAAQ7B,EAAsB,kBAAdmP,GAA+B,GAFlFtN,EAKF,SAAS8M,EAAyBS,EAAmBxM,GACtD,IAAI8C,EAAY0J,EAAmBzJ,EAAWC,MAAMC,QAAQH,GAAYI,EAAK,EAAlF,IAAqFJ,EAAYC,EAAWD,EAAYA,EAAU3I,OAAOE,cAAe,CACvJ,IAAI8I,EAEJ,GAAIJ,EAAU,CACb,GAAIG,GAAMJ,EAAUlI,OAAQ,MAC5BuI,EAAOL,EAAUI,SACX,CAEN,IADAA,EAAKJ,EAAUM,QACRC,KAAM,MACbF,EAAOD,EAAGxK,MAGX,IAAI0E,EAAS+F,EAGb,GAAI/F,EAAOqP,wBAAwB7R,OAAS,EAAG,CAE9C,IAAI8R,EAA8BtP,EAAOqP,wBAAwBrP,EAAOqP,wBAAwB7R,OAAS,GAGzG,GAA4D,IAAxDoF,EAAgBkC,OAAOwK,GAC1B,SAKF,IAAI,EAAAjM,EAAAC,iBAAgBV,EAAiB5C,EAAOkI,WAC3C,OAAOlI,GAmCH,SAAS4O,EAA+BW,GAC9C,OAAOA,EAAMjP,QAAQ,IAAIqE,OAAO,IAAAb,EAAA7C,kBAA0B,KAAM,KAAM,KAAKuO,OAG5E,SAASxB,EAAaa,EAAiBxS,EAAKH,EAAUgS,GACrD,OAAO7R,EAAM6R,EAAgBW,EAAiBxS,EAAKH,GAAY2S,EAGzD,SAASJ,EAAsC5M,EAAQ4N,EAAsBrB,EAAasB,GAChG,IAAIC,EAAsB,IAAArO,EAAA9C,QAAakR,EAAkBxT,UAIzD,GAHAyT,EAAoB1T,QAAQmS,GAGxBqB,IAAyBE,EAAoBnT,qBAGhD,MAA6B,MAAzBiT,EACIA,EAAuB,IAAMxB,EAAuBpM,EAAQ,WAAY6N,GAYzEzB,EAAuBpM,EAAQ,WAAY6N,qFC5NpC9N,aAAT,SAAsBT,GAO5B,IANA,IAAIU,OAAS,EACTxF,OAAM,EAKDqJ,GAFTvE,EAAOA,EAAKb,QAAQ,QAAS,SAEHsP,MAAM,KAAMjK,EAAWC,MAAMC,QAAQH,GAAYI,EAAK,EAAGJ,EAAYC,EAAWD,EAAYA,EAAU3I,OAAOE,cAAe,CACrJ,IAAI8I,EAEJ,GAAIJ,EAAU,CACb,GAAIG,GAAMJ,EAAUlI,OAAQ,MAC5BuI,EAAOL,EAAUI,SACX,CAEN,IADAA,EAAKJ,EAAUM,QACRC,KAAM,MACbF,EAAOD,EAAGxK,MAGX,IAAIuU,EAAO9J,EAEP+J,EAAcD,EAAKD,MAAM,KACzBG,EAAejJ,EAAegJ,EAAa,GAC3CjV,EAAOkV,EAAa,GACpBzU,EAAQyU,EAAa,GAEzB,OAAQlV,GACP,IAAK,MACJgH,EAASvG,EACT,MACD,IAAK,MACJe,EAAMf,EACN,MACD,IAAK,gBAGa,MAAbA,EAAM,KACTuG,EAASvG,EAAQuG,IAOrB,KAAK,EAAAE,EAAAvD,SAAoBqD,GACxB,SAGD,IAAIsC,GAAWtC,OAAQA,GACnBxF,IACH8H,EAAO9H,IAAMA,GAEd,OAAO8H,KAOQgK,cAAT,SAAuB6B,GAC7B,IAAInO,EAASmO,EAAMnO,OACfxF,EAAM2T,EAAM3T,IAEhB,IAAKwF,EACJ,MAAO,GAGR,GAAkB,MAAdA,EAAO,GACV,MAAM,IAAIpF,MAAM,6DAGjB,MAAO,OAASoF,GAAUxF,EAAM,QAAUA,EAAM,KA/EjD,MAAA4T,EAAA7V,EAAA,wCAFA,IAAI0M,EAAiB,WAAwZ,OAAO,SAAUC,EAAKzM,GAAK,GAAIsL,MAAMC,QAAQkB,GAAQ,OAAOA,EAAY,GAAIhK,OAAOE,YAAYjC,OAAO+L,GAAQ,OAAxf,SAAuBA,EAAKzM,GAAK,IAAI0M,KAAeC,GAAK,EAAUC,GAAK,EAAWC,OAAKxK,EAAW,IAAM,IAAK,IAAiCyK,EAA7BtB,EAAKiB,EAAIhK,OAAOE,cAAmBgK,GAAMG,EAAKtB,EAAGE,QAAQC,QAAoBe,EAAKK,KAAKD,EAAG9L,QAAYhB,GAAK0M,EAAKxJ,SAAWlD,GAA3D2M,GAAK,IAAoE,MAAOK,GAAOJ,GAAK,EAAMC,EAAKG,EAAtL,QAAuM,KAAWL,GAAMnB,EAAA,QAAcA,EAAA,SAA/B,QAA2D,GAAIoB,EAAI,MAAMC,GAAQ,OAAOH,EAA6HO,CAAcR,EAAKzM,GAAa,MAAM,IAAI2D,UAAU,yDAAjkB,4FCGN,SAA0B+J,EAAO5G,EAASlF,QAExCS,IAAZyE,IACHA,MAKD,GAFAlF,EAAW,IAAAoF,EAAA9C,QAAatC,GAEpBkF,EAAQ9C,GAAI,CACf,IAAK0J,EAAMxL,mBACV,MAAM,IAAIC,MAAM,sCAEjBP,EAASuG,kCAAkCuF,EAAMxL,wBAC3C,CACN,IAAKwL,EAAM5D,MACV,OAAO,EAER,GAAI4D,EAAM/L,QAAS,CAClB,IAAKC,EAASE,WAAW4L,EAAM/L,SAC9B,MAAM,IAAIQ,MAAM,oBAAsBuL,EAAM/L,SAE7CC,EAASD,QAAQ+L,EAAM/L,aACjB,CACN,IAAK+L,EAAMxL,mBACV,MAAM,IAAIC,MAAM,sCAEjBP,EAASuG,kCAAkCuF,EAAMxL,qBAInD,IAAKN,EAASsE,kBACb,MAAM,IAAI/D,MAAM,oBAGjB,OAAO8H,EAAmByD,EAAM5D,OAAS4D,EAAMpE,oBAAgBjH,EAAWT,MAG3DqI,qBAxChB,MAAAmE,EAAAtO,EAAA,uCACA+I,EAAA/I,EAAA,GAuCO,SAASmK,EAAmB3B,EAAiBsN,EAAkBhU,GACrE,QAAQ,EAAAiH,EAAAC,0BAAyBR,OAAiBjG,EAAWT,IAC5D,IAAK,cACJ,OAAO,EAGR,QACC,OAAO,mFC5CV,IAAIiU,EAAa,SAASA,EAAWC,IAHrC,SAAyBpS,EAAUJ,GAAe,KAAMI,aAAoBJ,GAAgB,MAAM,IAAIK,UAAU,qCAI9GF,CAAgBI,KAAMgS,GAEtBhS,KAAKtD,KAAOsD,KAAKhB,YAAYtC,KAC7BsD,KAAKkS,QAAUD,EACfjS,KAAKmS,MAAQ,IAAI7T,MAAM2T,GAAME,iBAGhBH,GAGfA,EAAWxU,UAAYX,OAAOuV,OAAO9T,MAAMd,YACtBwB,YAAcgT,mFCkCnBK,uBAiBD,SAAqBlH,GASnC,IARA,IAAInF,EAAS,GAQJuB,EAAY4D,EAAOsG,MAAM,IAAKjK,EAAWC,MAAMC,QAAQH,GAAYI,EAAK,EAAGJ,EAAYC,EAAWD,EAAYA,EAAU3I,OAAOE,cAAe,CACtJ,IAAI8I,EAEJ,GAAIJ,EAAU,CACb,GAAIG,GAAMJ,EAAUlI,OAAQ,MAC5BuI,EAAOL,EAAUI,SACX,CAEN,IADAA,EAAKJ,EAAUM,QACRC,KAAM,MACbF,EAAOD,EAAGxK,MAGX,IAAImV,EAAY1K,EAEZ2K,EAAQF,EAAWC,GACnBC,IACHvM,GAAUuM,GAIZ,OAAOvM,GAzFD,IAAIwM,YACVC,EAAK,IACLC,EAAK,IACLC,EAAK,IACLC,EAAK,IACLC,EAAK,IACLC,EAAK,IACLC,EAAK,IACLC,EAAK,IACLC,EAAK,IACLC,EAAK,IACLC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,IACVC,IAAU,KAGJ,SAAS3C,EAAWC,GAC1B,OAAOE,EAAOF,6FCjCA,SAAoCnH,GASlD,IARA,IAAInF,EAAS,GAQJuB,EAAY4D,EAAOsG,MAAM,IAAKjK,EAAWC,MAAMC,QAAQH,GAAYI,EAAK,EAAGJ,EAAYC,EAAWD,EAAYA,EAAU3I,OAAOE,cAAe,CACtJ,IAAI8I,EAEJ,GAAIJ,EAAU,CACb,GAAIG,GAAMJ,EAAUlI,OAAQ,MAC5BuI,EAAOL,EAAUI,SACX,CAEN,IADAA,EAAKJ,EAAUM,QACRC,KAAM,MACbF,EAAOD,EAAGxK,MAGX,IAAImV,EAAY1K,EAEhB5B,GAAUiP,EAA0B3C,EAAWtM,IAAW,GAG3D,OAAOA,KAWQiP,4BAtDhB,IAAAC,EAAAjZ,EAAA,IAsDO,SAASgZ,EAA0B3C,EAAWnV,GAEpD,GAAkB,MAAdmV,EAAmB,CAGtB,GAAInV,EACH,OAGD,MAAO,IAIR,OAAO,EAAA+X,EAAA7C,YAAWC,gHCy5BH6C,0BAoCAC,kCAOAC,sBAAT,SAA+BC,EAAUC,GAC/C,IAAIC,EAAoBF,EAAS1O,MAAM,EAAG2O,GAEtCE,EAAiBC,EAAiB,IAAKF,GACvCG,EAAiBD,EAAiB,IAAKF,GAEvCI,EAAkBH,EAAiBE,EACvC,KAAOC,EAAkB,GAAKL,EAAaD,EAASjW,QACtB,MAAzBiW,EAASC,IACZK,IAEDL,IAGD,OAAOD,EAAS1O,MAAM,EAAG2O,MAKVG,qBAgCAG,SA5iChB,QAAA5Z,EAAA,QAEAA,EAAA,IAEA0J,EAAA1J,EAAA,GAEAiJ,EAAAjJ,EAAA,GAEA6Z,EAAA7Z,EAAA,GAEA8Z,EAAA9Z,EAAA,IAEA+I,EAAA/I,EAAA,OAEAA,EAAA,wDA5BA,IAAIgD,EAAe,WAAc,SAASC,EAAiBC,EAAQC,GAAS,IAAK,IAAIjD,EAAI,EAAGA,EAAIiD,EAAMC,OAAQlD,IAAK,CAAE,IAAImD,EAAaF,EAAMjD,GAAImD,EAAWtC,WAAasC,EAAWtC,aAAc,EAAOsC,EAAWvC,cAAe,EAAU,UAAWuC,IAAYA,EAAWC,UAAW,GAAM1C,OAAOC,eAAeqC,EAAQG,EAAWE,IAAKF,IAAiB,OAAO,SAAUG,EAAaC,EAAYC,GAAiJ,OAA9HD,GAAYR,EAAiBO,EAAYjC,UAAWkC,GAAiBC,GAAaT,EAAiBO,EAAaE,GAAqBF,GAA7gB,GAgCnB,IAKIuW,EAA6BH,EALf,IAEyB,IAOhCI,sBAAoB,IAC3BC,EAA4B,IAAI1P,OAAOyP,GAYvCE,EAAuE,WAC1E,MAAQ,mBASLC,EAAwE,WAC3E,MAAQ,qBAULC,EAA0B,IAAI7P,OAAO,KAAAb,EAAA7C,kBAAgC,aAAhC6C,EAAA7C,kBAAwE,SAO7GwT,EAAgC,IAAA3Q,EAAA5C,WAAmB,UAAnB4C,EAAA7C,kBAAA6C,EAAA/C,aAAuE,KAEvG2T,EAAwC,IAAI/P,OAAO,IAAM8P,EAAgC,IAAK,KAE9FE,EAAY,WAMf,SAASA,EAAUpT,EAAgBrF,IA1FpC,SAAyB8B,EAAUJ,GAAe,KAAMI,aAAoBJ,GAAgB,MAAM,IAAIK,UAAU,qCA2F9GF,CAAgBI,KAAMwW,GAEtBxW,KAAKiD,WAELjD,KAAKjC,SAAW,IAAAoF,EAAA9C,QAAatC,GAEzBqF,GAAkBpD,KAAKjC,SAASE,WAAWmF,KAC9CpD,KAAKoD,eAAiBA,GAGvBpD,KAAKyW,QA+2BN,OAx2BAxX,EAAauX,IACZhX,IAAK,QACLrC,MAAO,SAAe6F,GAGrB,IAAI0T,GAAmB,EAAAZ,EAAAnS,gCAA+BX,IAAS,GAW/D,OAPK0T,GACA1T,GAAQA,EAAKO,QAAQ,MAAQ,IAChCmT,EAAmB,KAKhBH,EAAsCrU,KAAKwU,GAIzC1W,KAAK2W,cAAa,EAAAjS,EAAArE,SAA2BqW,IAH5C1W,KAAK4W,iBAMdpX,IAAK,eACLrC,MAAO,SAAsB0M,GA+B5B,GA3BiB,MAAbA,EAAM,KACJ7J,KAAK6W,cACT7W,KAAK6W,aAAe,IAKpB7W,KAAK8W,oBAGNjN,EAAQA,EAAMjD,MAAM,IAIrB5G,KAAK6W,aAAehN,EAMpB7J,KAAKyF,gBAAkBoE,EAOnB7J,KAAK+W,kBACR,GAAK/W,KAAK3B,mBAyCA2B,KAAKlC,SACbkC,KAAKgX,0BA1CuB,CAI7B,IAAKhX,KAAKyF,eAET,OAAOzF,KAAK6W,YAab,IAAK7W,KAAKqE,4BAET,OAAOrE,KAAK6W,YAIb7W,KAAKiX,gEACLjX,KAAKkX,cACLlX,KAAKgX,0BAiBA,CAKN,IAAIG,EAA2BnX,KAAKmB,eACpCnB,KAAKyF,eAAiBzF,KAAKmB,eAAiBnB,KAAKyF,eAGjDzF,KAAKoX,wBAEDpX,KAAKmB,iBAAmBgW,IAM3BnX,KAAKqX,sBAAmB7Y,EACxBwB,KAAKkX,eASP,IAAKlX,KAAKyF,eACT,OAAOzF,KAAKsX,iCAKbtX,KAAKuX,kCAGL,IAAIC,EAAkCxX,KAAKyX,qBAAqB5N,GAKhE,OAAI2N,EACIxX,KAAK0X,iBAAiBF,GAKvBxX,KAAKsX,oCAGb9X,IAAK,iCACLrC,MAAO,WAEN,OAAI6C,KAAK+W,mBAAqB/W,KAAK3B,mBAC3B,IAAM2B,KAAK3B,mBAAqB2B,KAAKyF,eAGtCzF,KAAK6W,eAGbrX,IAAK,uBACLrC,MAAO,SAA8Bwa,GAQpC,IAAIC,OAAiD,EACjD5X,KAAK6X,eACRD,EAAiD5X,KAAK8X,+BAA+BH,IAOtF,IAAII,EAAmB/X,KAAKgY,0CAO5B,OAAID,IASA/X,KAAKiY,sBAUDjY,KAAKkY,yBAYNN,MAGRpY,IAAK,QACLrC,MAAO,WAkBN,OAfA6C,KAAK6W,YAAc,GAEnB7W,KAAK4W,cAAgB,GAIrB5W,KAAKmB,eAAiB,GAEtBnB,KAAKyF,eAAiB,GACtBzF,KAAK+E,YAAc,GAEnB/E,KAAK8W,mBAEL9W,KAAKkX,cAEElX,QAGRR,IAAK,eACLrC,MAAO,WACF6C,KAAK+W,kBACR/W,KAAKlC,aAAUU,EAEfwB,KAAKlC,QAAUkC,KAAKoD,kBAItB5D,IAAK,mBACLrC,MAAO,WACN6C,KAAKmY,eAEDnY,KAAKoD,iBAAmBpD,KAAK+W,mBAChC/W,KAAKjC,SAASD,QAAQkC,KAAKoD,gBAC3BpD,KAAK3B,mBAAqB2B,KAAKjC,SAASM,qBAExC2B,KAAKiX,kEAELjX,KAAKjC,SAASD,aAAQU,GACtBwB,KAAK3B,wBAAqBG,EAI1BwB,KAAKiR,qBACLjR,KAAKqX,sBAAmB7Y,MAI1BgB,IAAK,cACLrC,MAAO,WACN6C,KAAK6X,kBAAerZ,EACpBwB,KAAKsV,cAAW9W,EAChBwB,KAAKoY,kCAA+B5Z,EACpCwB,KAAKqY,qBAAuB,KAO7B7Y,IAAK,yBACLrC,MAAO,WAGN,OAAO6C,KAAK8X,+BAA+B9X,KAAKyF,mBAGjDjG,IAAK,gEACLrC,MAAO,WAEN6C,KAAKiR,kBAAoBjR,KAAKjC,SAAS6C,UAAU0X,OAAO,SAAUzW,GACjE,OAAOwU,EAAwBnU,KAAKL,EAAOkP,yBAG5C/Q,KAAKqX,sBAAmB7Y,KAGzBgB,IAAK,kCACLrC,MAAO,WACN,IAAIob,EAAiBvY,KAAKyF,eActB+S,EAAkCD,EAAelZ,OAzVxB,EA0VzBmZ,EAAkC,IACrCA,EAAkC,GASnC,IAAIvH,EAAoBjR,KAAKyY,2BAA6BzY,KAAKqX,kBAAoBrX,KAAKiR,kBACxFjR,KAAKyY,0BAA4BzY,KAAK0Y,eAEtC1Y,KAAKqX,iBAAmBpG,EAAkBqH,OAAO,SAAUzW,GAC1D,IAAI8W,EAAgC9W,EAAOqP,wBAAwB7R,OAInE,GAAsC,IAAlCsZ,EACH,OAAO,EAGR,IAAIC,EAA+B5K,KAAK6K,IAAIL,EAAiCG,EAAgC,GACzGG,EAAyBjX,EAAOqP,wBAAwB0H,GAI5D,OAAO,IAAIpS,OAAO,KAAOsS,EAAyB,KAAK5W,KAAKqW,KAUzDvY,KAAK6X,eAAsE,IAAtD7X,KAAKqX,iBAAiB9T,QAAQvD,KAAK6X,eAC3D7X,KAAKkX,iBAIP1X,IAAK,eACLrC,MAAO,WAeN,OAAO6C,KAAKyF,eAAepG,QApZE,KA4Z9BG,IAAK,0CACLrC,MAAO,WACD,IAAIoK,EAAYvH,KAAKqX,iBAAkB7P,EAAWC,MAAMC,QAAQH,GAAYI,EAAK,EAAtF,IAAyFJ,EAAYC,EAAWD,EAAYA,EAAU3I,OAAOE,cAAe,CAC3J,IAAI8I,EAEJ,GAAIJ,EAAU,CACb,GAAIG,GAAMJ,EAAUlI,OAAQ,MAC5BuI,EAAOL,EAAUI,SACX,CAEN,IADAA,EAAKJ,EAAUM,QACRC,KAAM,MACbF,EAAOD,EAAGxK,MAGX,IAAI0E,EAAS+F,EAIb,GAFc,IAAIpB,OAAO,OAAS3E,EAAOkI,UAAY,MAExC7H,KAAKlC,KAAKyF,iBAIlBzF,KAAK+Y,mBAAmBlX,GAA7B,CAKA7B,KAAKkX,cACLlX,KAAK6X,aAAehW,EAEpB,IAAIkW,GAAmB,EAAAhC,EAAAxF,qCAAoCvQ,KAAKyF,eAAgB5D,EAAQ7B,KAAK+W,kBAA2C,KAAxB/W,KAAKmB,eAAuBnB,KAAKjC,UAgBjJ,GAXIiC,KAAKmB,gBAA8C,MAA5BnB,KAAK3B,qBAC/B0Z,EAAmB,KAAOA,GAUvB/X,KAAKgZ,yBAAyBnX,GAEjC7B,KAAKkY,6BACC,CAEN,IAAIe,EAAcjZ,KAAK0X,iBAAiBK,GACxC/X,KAAKsV,SAAW2D,EAAY9W,QAAQ,UAAW8T,GAC/CjW,KAAKoY,6BAA+Ba,EAGrC,OAAOlB,OAOTvY,IAAK,mBACLrC,MAAO,SAA0B+b,GAChC,OAAIlZ,KAAK+W,kBACD,IAAM/W,KAAK3B,mBAAqB,IAAM6a,EAEvCA,KAQR1Z,IAAK,4BACLrC,MAAO,WACN,IAAIiH,GAAwB,EAAA0R,EAAAzR,2BAA2BrE,KAAK6W,YAAa7W,KAAKoD,eAAgBpD,KAAKjC,SAASA,UACxGM,EAAqB+F,EAAsB/F,mBAC3CqF,EAASU,EAAsBV,OAEnC,GAAKrF,EAiBL,OAbA2B,KAAK3B,mBAAqBA,EAU1B2B,KAAKyF,eAAiB/B,EAEtB1D,KAAKjC,SAASuG,kCAAkCjG,QACLG,IAApCwB,KAAKjC,SAAS2H,qBAGtBlG,IAAK,wBACLrC,MAAO,WAGN,GAFA6C,KAAKmB,eAAiB,GAEjBnB,KAAKjC,SAAS2H,kBAAnB,CAQA,IAAId,GAAwB,EAAAkR,EAAAjR,wCAAuC7E,KAAKyF,eAAgBzF,KAAKjC,UACzF+G,EAA4BF,EAAsBlB,OAClDqB,EAAcH,EAAsBG,YAUxC,GARIA,IACH/E,KAAK+E,YAAcA,GAOf/E,KAAKjC,SAASsE,qBAAqBrC,KAAKmZ,iBAAiBnZ,KAAKyF,iBAAoBzF,KAAKmZ,iBAAiBrU,OASxG,EAAAI,EAAAC,iBAAgBnF,KAAKyF,eAAgBzF,KAAKjC,SAASqH,2BAA6B,EAAAF,EAAAC,iBAAgBL,EAA2B9E,KAAKjC,SAASqH,yBAQ9I,OAHApF,KAAKmB,eAAiBnB,KAAKyF,eAAemB,MAAM,EAAG5G,KAAKyF,eAAepG,OAASyF,EAA0BzF,QAC1GW,KAAKyF,eAAiBX,EAEf9E,KAAKmB,mBAGb3B,IAAK,mBACLrC,MAAO,SAA0BuG,GAEhC,QADwB,EAAAsB,EAAAC,0BAAyBvB,OAAQlF,EAAWwB,KAAKjC,WAExE,IAAK,cACJ,OAAO,EAGR,QACC,OAAO,MAIVyB,IAAK,sBACLrC,MAAO,WAGD,IAAIic,EAAapZ,KAAKqX,iBAAkBgC,EAAY5R,MAAMC,QAAQ0R,GAAaE,EAAM,EAA1F,IAA6FF,EAAaC,EAAYD,EAAaA,EAAWxa,OAAOE,cAAe,CACnK,IAAI+S,EAEJ,GAAIwH,EAAW,CACd,GAAIC,GAAOF,EAAW/Z,OAAQ,MAC9BwS,EAAQuH,EAAWE,SACb,CAEN,IADAA,EAAMF,EAAWvR,QACTC,KAAM,MACd+J,EAAQyH,EAAInc,MAGb,IAAI0E,EAASgQ,EAIb,GAAI7R,KAAK6X,eAAiBhW,EACzB,OAOD,GAAK7B,KAAK+Y,mBAAmBlX,IAIxB7B,KAAKgZ,yBAAyBnX,GAUnC,OANA7B,KAAK6X,aAAehW,EAIpB7B,KAAKqY,qBAAuB,GAErB,EAMRrY,KAAKmY,eAGLnY,KAAKkX,iBAGN1X,IAAK,qBACLrC,MAAO,SAA4B0E,GAIlC,SAAK7B,KAAK+W,oBAAsB/W,KAAKmB,gBAAkBU,EAAO0X,8CAM1DvZ,KAAKmB,iBAAmBU,EAAOI,uBAAyBJ,EAAOG,6CAMpExC,IAAK,2BACLrC,MAAO,SAAkC0E,GAKxC,KAA0CA,EAAOkI,UAAUxG,QAAQ,MAAQ,GAA3E,CAKA,IAAI+R,EAAWtV,KAAKwZ,kCAAkC3X,GAItD,GAAKyT,EAsBL,OAjBAtV,KAAKoY,6BAA+B9C,EAOhCtV,KAAK+W,kBACR/W,KAAKsV,SAAWW,EAAoBJ,EAAOI,EAAmBjW,KAAK3B,mBAAmBgB,QAAU,IAAMiW,EAKrGtV,KAAKsV,SAAWA,EAASnT,QAAQ,MAAO8T,GAInCjW,KAAKsV,aAMb9V,IAAK,oCACLrC,MAAO,SAA2C0E,GAEjD,IAAI4X,EAAiB5X,EAAOkI,UAI3B0P,EAAiBA,EAEhBtX,QAAQgU,IAAkC,OAE1ChU,QAAQiU,IAAmC,OAO7C,IAAIsD,EAA6C1D,EAA2B9J,MAAMuN,GAAgB,GAIlG,KAAIzZ,KAAKyF,eAAepG,OAASqa,EAA2Cra,QAA5E,CAKA,IAAIsa,EAAgB3Z,KAAK4Z,gBAAgB/X,GAiCrCgY,EAAiB,IAAIrT,OAAO,IAAMiT,EAAiB,KACnDK,EAA+B9Z,KAAKyF,eAAetD,QAAQ,MA1xBhD,KAoyBf,OALI0X,EAAe3X,KAAK4X,KACvBJ,EAA6CI,GAIvCJ,EAENvX,QAAQ,IAAIqE,OAAOiT,GAAiBE,GAEpCxX,QAAQ,IAAIqE,OAxyBE,IAwyBkB,KAAMyP,OAGxCzW,IAAK,iCACLrC,MAAO,SAAwC4c,GAMzC,IAAIC,EAAaD,EAAOtI,MAAM,IAAKwI,EAAYxS,MAAMC,QAAQsS,GAAaE,EAAM,EAArF,IAAwFF,EAAaC,EAAYD,EAAaA,EAAWpb,OAAOE,cAAe,CAC9J,IAAIqb,EAEJ,GAAIF,EAAW,CACd,GAAIC,GAAOF,EAAW3a,OAAQ,MAC9B8a,EAAQH,EAAWE,SACb,CAEN,IADAA,EAAMF,EAAWnS,QACTC,KAAM,MACdqS,EAAQD,EAAI/c,MAGb,IAAIoV,EAAQ4H,EAOZ,IAAiH,IAA7Gna,KAAKoY,6BAA6BxR,MAAM5G,KAAKqY,oBAAsB,GAAG1R,OAAOuP,GAQhF,OAHAlW,KAAK6X,kBAAerZ,EACpBwB,KAAKsV,cAAW9W,OAChBwB,KAAKoY,kCAA+B5Z,GAIrCwB,KAAKqY,oBAAsBrY,KAAKoY,6BAA6BzR,OAAOuP,GACpElW,KAAKoY,6BAA+BpY,KAAKoY,6BAA6BjW,QAAQ+T,EAA2B3D,GAI1G,OAAO6C,EAA8BpV,KAAKoY,6BAA8BpY,KAAKqY,oBAAsB,MAQpG7Y,IAAK,kBACLrC,MAAO,WACN,OAAO6C,KAAK6W,aAAuC,MAAxB7W,KAAK6W,YAAY,MAG7CrX,IAAK,kBACLrC,MAAO,SAAyB0E,GAC/B,GAAI7B,KAAK+W,kBACR,OAAO,EAAAhB,EAAAtF,gCAA+B5O,EAAOkP,uBAK9C,GAAIlP,EAAOE,gCAIV,GAAI/B,KAAKmB,iBAAmBU,EAAOI,qBAElC,OAAOJ,EAAOA,SAASM,QAAhB4T,EAAAnF,oBAA6C/O,EAAOE,qCAMxD,GAAgC,MAA5B/B,KAAK3B,oBAAsD,MAAxB2B,KAAKmB,eAC/C,MAAO,KAAOU,EAAOA,SAGvB,OAAOA,EAAOA,YAQfrC,IAAK,sBACLrC,MAAO,WACN6C,KAAKlC,SAAU,EAAAgY,EAAAvQ,mBAAkBvF,KAAK3B,mBAAoB2B,KAAKyF,eAAgBzF,KAAKjC,aAWrFyB,IAAK,YACLrC,MAAO,WACN,GAAK6C,KAAK3B,oBAAuB2B,KAAKyF,eAAtC,CAGA,IAAIG,EAAc,IAAAC,EAAAxF,QAAgBL,KAAKlC,SAAWkC,KAAK3B,mBAAoB2B,KAAKyF,eAAgBzF,KAAKjC,SAASA,UAK9G,OAJIiC,KAAK+E,cACRa,EAAYb,YAAc/E,KAAK+E,aAGzBa,MAMRpG,IAAK,oBACLrC,MAAO,WACN,OAAO6C,KAAKyF,kBAGbjG,IAAK,cACLrC,MAAO,WACN,GAAK6C,KAAKsV,SAAV,CAOA,IAHA,IAAIlK,GAAS,EAETjP,EAAI,EACDA,EAAI6D,KAAK6W,YAAYxX,QAC3B+L,EAAQpL,KAAKsV,SAAS/R,QAAQ0S,EAAmB7K,EAAQ,GACzDjP,IAGD,OAAOiZ,EAA8BpV,KAAKsV,SAAUlK,EAAQ,QAIvDoL,EAh4BQ,GAs4BT,SAASrB,EAAsBhK,GAGrC,IAFA,IAAIyK,KACAzZ,EAAI,EACDA,EAAIgP,EAAO9L,QACC,MAAd8L,EAAOhP,GACVyZ,EAAgB1M,KAAK/M,GACG,MAAdgP,EAAOhP,IACjByZ,EAAgBwE,MAEjBje,IAGD,IAAI2P,EAAQ,EACRuO,EAAiB,GACrBzE,EAAgB1M,KAAKiC,EAAO9L,QACvB,IAAIib,EAAa1E,EAAiB2E,EAAY9S,MAAMC,QAAQ4S,GAAaE,EAAM,EAApF,IAAuFF,EAAaC,EAAYD,EAAaA,EAAW1b,OAAOE,cAAe,CAC7J,IAAI2b,EAEJ,GAAIF,EAAW,CACd,GAAIC,GAAOF,EAAWjb,OAAQ,MAC9Bob,EAAQH,EAAWE,SACb,CAEN,IADAA,EAAMF,EAAWzS,QACTC,KAAM,MACd2S,EAAQD,EAAIrd,MAGb,IAAIiO,EAAQqP,EAEZJ,GAAkBlP,EAAOvE,MAAMkF,EAAOV,GACtCU,EAAQV,EAAQ,EAGjB,OAAOiP,EAGD,SAASjF,EAA8BjK,EAAQuP,GAIrD,MAHiC,MAA7BvP,EAAOuP,IACVA,IAEMvF,EAAsBhK,EAAOvE,MAAM,EAAG8T,IAsBvC,SAAShF,EAAiBiF,EAAQxP,GACxC,IAAIyP,EAAQ,EAOHC,EAAa1P,EAAOsG,MAAM,IAAKqJ,EAAYrT,MAAMC,QAAQmT,GAAaE,EAAM,EAArF,IAAwFF,EAAaC,EAAYD,EAAaA,EAAWjc,OAAOE,cAAe,CAC9J,IAAIkc,EAEJ,GAAIF,EAAW,CACd,GAAIC,GAAOF,EAAWxb,OAAQ,MAC9B2b,EAAQH,EAAWE,SACb,CAEN,IADAA,EAAMF,EAAWhT,QACTC,KAAM,MACdkT,EAAQD,EAAI5d,MAGG6d,IAEEL,GACjBC,IAIF,OAAOA,EAKD,SAAS/E,EAAO1K,EAAQ8P,GAC9B,GAAIA,EAAQ,EACX,MAAO,GAKR,IAFA,IAAIjV,EAAS,GAENiV,EAAQ,GACF,EAARA,IACHjV,GAAUmF,GAGX8P,IAAU,EACV9P,GAAUA,EAGX,OAAOnF,EAASmF,YAjHFqL,mFC/5BC0E,cAAT,SAAuBC,GAE5B,IAAKC,EAAUlZ,KAAKiZ,KAAYE,EAAWnZ,KAAKiZ,GAC9C,OAAO,EAGT,OAAOG,EAAkBpZ,KAAKiZ,MAGhBI,2BAAT,SAAoCjJ,GACzC,MAAqB,MAAdA,GAAqBkJ,EAAWtZ,KAAKoQ,IA9C9C,IAAImJ,EAAM,yBAUC5N,GATAb,KAAK,IAAMyO,EAAM,IACjBxO,KAAK,KAAOwO,EAAM,IAElB7N,MAAM,0LAINJ,MAAM,8GAENK,MAAM,i5BAEbuN,EAAY,IAAI5U,OADX,IAAMqH,EAAM,KAKjB2N,EAAa,IAAIhV,OADX,8BAKN6U,EAAa,IAAI7U,OADX,6YAUN8U,EAAoB,IAAI9U,OAAO,sICZpB,SAA0BkI,EAAWC,EAAQ3L,EAAMuL,GAGjE,IAAKmN,EAAyBxZ,KAAKwM,IAAciN,EAAUzZ,KAAKwM,GAC/D,OAKD,GAAiB,aAAbH,EAAyB,CAI5B,GAAII,EAAS,IAAMiN,EAAmB1Z,KAAKwM,GAAY,CACtD,IAAImN,EAAe7Y,EAAK2L,EAAS,GAEjC,IAAI,EAAA9B,EAAA0O,4BAA2BM,KAAiB,EAAAhP,EAAAqO,eAAcW,GAC7D,OAAO,EAIT,IAAIC,EAAgBnN,EAASD,EAAUrP,OACvC,GAAIyc,EAAgB9Y,EAAK3D,OAAQ,CAChC,IAAI0c,EAAW/Y,EAAK8Y,GACpB,IAAI,EAAAjP,EAAA0O,4BAA2BQ,KAAa,EAAAlP,EAAAqO,eAAca,GACzD,OAAO,GAKV,OAAO,GAnER,IAAApW,EAAA1J,EAAA,GACAiJ,EAAAjJ,EAAA,GAEA4Q,EAAA5Q,EAAA,IAMWyR,eAAa,UAAA/H,EAAA5C,WAAoC,IAGxD6Y,EAAqB,IAAIpV,OAAO,IAAMkH,GAGtCsO,GAAqB,EAAA9W,EAAA4F,OAAM,EAAG,GAW9B4Q,EAA2B,IAAIlV,OAAO,kGAAiMwV,EAnB1N,qBA4BbL,EAAY,4HC1BD,SAA6BjN,EAAWC,EAAQ3L,GAE9D,GAAIiZ,EAAsB/Z,KAAKwM,GAC9B,OAAO,EAIR,GAAIwN,EAAYha,KAAKwM,GAAY,CAChC,IAAIyN,EAAgBnZ,EAAK4D,MAAM+H,EAASD,EAAUrP,QAClD,GAAI+c,EAA2Bla,KAAKia,GACnC,OAAO,EAIT,OAAO,GAvBR,IAAIF,EAAwB,oEAMxBC,EAAc,6CACdE,EAA6B,qGCGlB,SAA2B1N,GAIzC,OAAO,EAAAxJ,EAAA+F,qBAAoBoR,EAA6B3N,IAhBzD,IAAAxJ,EAAAjJ,EAAA,GAUIogB,EAA8B,+HCqBnB,SAA0BrZ,EAAMC,EAASlF,QAEvCS,IAAZyE,IACHA,MAGD,IAAI0D,EAAS,IAAI2V,EAAkBtZ,EAAMC,EAASlF,GAC9Cwe,KACJ,KAAO5V,EAAOgJ,WACb4M,EAAOrT,KAAKvC,EAAOkB,QAEpB,OAAO0U,KAMQC,mBAAT,SAA4BxZ,EAAMC,EAASlF,QAEjCS,IAAZyE,IACHA,MAGD,IAAI0D,EAAS,IAAI2V,EAAkBtZ,EAAMC,EAASlF,GAElD,OApDD,SAAyBgB,EAAKS,EAAKrC,GAAaqC,KAAOT,EAAOlC,OAAOC,eAAeiC,EAAKS,GAAOrC,MAAOA,EAAOH,YAAY,EAAMD,cAAc,EAAMwC,UAAU,IAAkBR,EAAIS,GAAOrC,EAAS,OAAO4B,EAoDnM0d,IAAoB7d,OAAOE,SAAU,WAC3C,OACC+I,KAAM,WACL,OAAIlB,EAAOgJ,WAET7H,MAAM,EACN3K,MAAOwJ,EAAOkB,SAIfC,MAAM,QAzDX,IAAAnC,EAAA1J,EAAA,GAEA6H,EAAA7H,EAAA,OAEAA,EAAA,QAEAA,EAAA,SACAA,EAAA,SACAA,EAAA,wDAjBA,IAAIgD,EAAe,WAAc,SAASC,EAAiBC,EAAQC,GAAS,IAAK,IAAIjD,EAAI,EAAGA,EAAIiD,EAAMC,OAAQlD,IAAK,CAAE,IAAImD,EAAaF,EAAMjD,GAAImD,EAAWtC,WAAasC,EAAWtC,aAAc,EAAOsC,EAAWvC,cAAe,EAAU,UAAWuC,IAAYA,EAAWC,UAAW,GAAM1C,OAAOC,eAAeqC,EAAQG,EAAWE,IAAKF,IAAiB,OAAO,SAAUG,EAAaC,EAAYC,GAAiJ,OAA9HD,GAAYR,EAAiBO,EAAYjC,UAAWkC,GAAiBC,GAAaT,EAAiBO,EAAaE,GAAqBF,GAA7gB,GAoBnB,IAAImN,EAAqB,IAAAjH,EAAA5C,WAAmB,aAAnB4C,EAAA7C,kBAAgE,MAAhE6C,EAAA/C,aAA4F,UAA5F+C,EAAA7C,kBAAA6C,EAAA/C,aAAqJ,KAE1K8Z,EAAsC,IAAIlW,OAAO,KAAAb,EAAA9C,WAAoB,MACrE8Z,EAAiC,IAAInW,OAAO,IAAAb,EAAA7C,kBAA0B,OAuDnE,IAAIwZ,sBAAoB,WAC9B,SAASA,EAAkBtZ,GAC1B,IAAIC,EAAUC,UAAU7D,OAAS,QAAsBb,IAAjB0E,UAAU,GAAmBA,UAAU,MACzEnF,EAAWmF,UAAU,IA/E3B,SAAyBrD,EAAUJ,GAAe,KAAMI,aAAoBJ,GAAgB,MAAM,IAAIK,UAAU,qCAiF9GF,CAAgBI,KAAMsc,GAEtBtc,KAAKmO,MAAQ,YAEbnO,KAAKgD,KAAOA,EACZhD,KAAKiD,QAAUA,EACfjD,KAAKjC,SAAWA,EAEhBiC,KAAKkL,OAAS,IAAI1E,OAAOoG,EAEzB,MAFyB9I,EAAA0I,0BAEW,KAAM,MA2G3C,OApGAvN,EAAaqd,IACZ9c,IAAK,OACLrC,MAAO,WACN,IAAI8O,EAAUjM,KAAKkL,OAAOlE,KAAKhH,KAAKgD,MAEpC,GAAKiJ,EAAL,CAIA,IAAIvI,EAASuI,EAAQ,GACjB+C,EAAW/C,EAAQb,MAEvB1H,EAASA,EAAOvB,QAAQua,EAAqC,IAC7D1N,GAAY/C,EAAQ,GAAG5M,OAASqE,EAAOrE,OAIvCqE,EAASA,EAAOvB,QAAQwa,EAAgC,IAExDjZ,GAAS,EAAAkL,EAAAvO,SAAkBqD,GAE3B,IAAIsC,EAAShG,KAAK4c,eAAelZ,EAAQsL,GAEzC,OAAIhJ,GAMGhG,KAAK0P,WAGblQ,IAAK,iBACLrC,MAAO,SAAwBuG,EAAQsL,GACtC,IAAK,EAAAH,EAAAxO,SAAoBqD,EAAQsL,EAAUhP,KAAKgD,QAQ3C,EAAAuM,EAAAlP,SAAiBqD,EAAQsL,EAAUhP,KAAKgD,KAAMhD,KAAKiD,QAAQ8C,SAAW,WAAa,SAAxF,CAgBA,IAAIC,GAAS,EAAAwJ,EAAAnP,SAAMqD,EAAQ1D,KAAKiD,QAASjD,KAAKjC,UAE9C,GAAKiI,EAAOC,MAOZ,OAHAD,EAAOgJ,SAAWA,EAClBhJ,EAAOiJ,OAASD,EAAWtL,EAAOrE,OAE3B2G,MAGRxG,IAAK,UACLrC,MAAO,WAWN,MAVmB,cAAf6C,KAAKmO,QACRnO,KAAK6c,WAAa7c,KAAK0P,OAEnB1P,KAAK6c,WACR7c,KAAKmO,MAAQ,QAEbnO,KAAKmO,MAAQ,QAIO,UAAfnO,KAAKmO,SAGb3O,IAAK,OACLrC,MAAO,WAEN,IAAK6C,KAAK2P,UACT,MAAM,IAAIrR,MAAM,mBAIjB,IAAI0H,EAAShG,KAAK6c,WAGlB,OAFA7c,KAAK6c,WAAa,KAClB7c,KAAKmO,MAAQ,YACNnI,MAIFsW,EA1HuB,4FC1EhB,SAA0BtZ,EAAMC,EAASlF,GACvD,OAAO,EAAAyR,EAAAnP,SAAY2C,EAAMwF,KAAavF,GAAW9C,IAAI,IAASpC,IAH/D,MAAA+X,EAAA7Z,EAAA,uCAFA,IAAIuM,EAAW3L,OAAO4L,QAAU,SAAUtJ,GAAU,IAAK,IAAIhD,EAAI,EAAGA,EAAI+G,UAAU7D,OAAQlD,IAAK,CAAE,IAAIuM,EAASxF,UAAU/G,GAAI,IAAK,IAAIqD,KAAOkJ,EAAc7L,OAAOW,UAAUC,eAAenB,KAAKoM,EAAQlJ,KAAQL,EAAOK,GAAOkJ,EAAOlJ,IAAY,OAAOL,4FCOxO,SAAgC0K,EAAO/L,GACpD,IAAImF,EAAUC,UAAU7D,OAAS,QAAsBb,IAAjB0E,UAAU,GAAmBA,UAAU,MACzEnF,EAAWmF,UAAU,GAEzB,OAAO2G,EAAM/L,UAAYA,IAAW,EAAA8N,EAAAvL,SAAcwJ,EAAO5G,EAASlF,IAXpE,MAAA+e,EAAA7gB,EAAA,wHCkBgBkU,aAAT,SAAsBrS,EAASC,GACrC,IAAIgf,EAAkB,IAAA5Z,EAAA9C,QAAatC,GAGnC,GAFAgf,EAAgBjf,QAAQA,GAEpBkf,EAAkB9a,KAAK6a,EAAgB7M,aAC1C,OAAO6M,EAAgB7M,YAGxB,OAAO6M,EAAgBE,sBAGR9U,eAAT,SAAwBzE,EAAQ5F,EAASC,GAC/C,IAAKD,EACJ,OAKD,IAAIif,EAAkB,IAAA5Z,EAAA9C,QAAatC,GACnCgf,EAAgBjf,QAAQA,GAExB,IAAIof,EAAmB,IAAI1W,OAAOuW,EAAgB7M,aAElD,GAAwC,IAApCxM,EAAOiD,OAAOuW,GACjB,OAQD,IAAIC,GAJJzZ,EAASA,EAAOkD,MAAMlD,EAAOwI,MAAMgR,GAAkB,GAAG7d,SAI7B6M,MAAMkR,GAEjC,GAAID,GAAqC,MAApBA,EAAc,IAAcA,EAAc,GAAG9d,OAAS,GACjD,MAArB8d,EAAc,GACjB,OAIF,OAAOzZ,GA1DR,MAAA6G,EAAAtO,EAAA,uCACA0J,EAAA1J,EAAA,GAEA,IAAImhB,EAA0B,IAAI5W,OAAO,KAAAb,EAAA/C,aAAsB,MAW3Doa,EAAoB,4MCbf5e,kHCSM,SAAqCjB,EAAOW,EAASC,GAC7DA,IACHA,EAAWD,EACXA,OAAUU,GAEZ,OAAO,IAAA6e,EAAAhd,QAAcvC,EAASC,GAAU8L,MAAM1M,IAfhD,MAAAmgB,EAAArhB,EAAA,iICEe,SAAsB8B,GACpC,OAAO,IAAAoF,EAAA9C,QAAatC,GAAUwf,gBAH/B,MAAAhT,EAAAtO,EAAA,gICQe,WACd,IAAImM,GAAsB,EAAAoV,EAAAnV,oBAAmBnF,WACzCF,EAAOoF,EAAoBpF,KAC3BC,EAAUmF,EAAoBnF,QAC9BlF,EAAWqK,EAAoBrK,SAE/B0f,EAAU,IAAAC,EAAArd,QAAuB2C,EAAMC,EAASlF,GAEpD,OAhBD,SAAyBgB,EAAKS,EAAKrC,GAAaqC,KAAOT,EAAOlC,OAAOC,eAAeiC,EAAKS,GAAOrC,MAAOA,EAAOH,YAAY,EAAMD,cAAc,EAAMwC,UAAU,IAAkBR,EAAIS,GAAOrC,EAAS,OAAO4B,EAgBnM0d,IAAoB7d,OAAOE,SAAU,WAC3C,OACC+I,KAAM,WACL,OAAI4V,EAAQ9N,WAEV7H,MAAM,EACN3K,MAAOsgB,EAAQ5V,SAIhBC,MAAM,QAxBX,MAAA0V,EAAAvhB,EAAA,GACA0hB,EAAA1hB,EAAA,yHCqJgB2hB,2CAxJhB,QAAA3hB,EAAA,QACAA,EAAA,KAEAiJ,EAAAjJ,EAAA,sDA4EA,SAAS4hB,EAAwBna,EAAQgL,EAAW3Q,GAMlD,IAAK,IAAIqN,EAAQ,EAAGA,EAAQsD,EAAUrP,OAAS,EAAG+L,IAAS,CACzD,IAAI0S,EAAcpP,EAAUqP,OAAO3S,GAEnC,GAAoB,MAAhB0S,GAAuC,MAAhBA,EAAqB,CAC9C,IAAIE,EAAkBtP,EAAUqP,OAAO3S,EAAQ,GAE/C,GAAwB,MAApB4S,GAA+C,MAApBA,GAI7B,GADA5S,IACI6S,KAAKC,cAAcxa,EAAQgL,EAAUpD,UAAUF,KAAW+S,UAAUC,UACtE,OAAO,OAIJ,IAAI,EAAAC,EAAAhe,SAAYqO,EAAUpD,UAAUF,MAAY1H,EAAOxF,IAC5D,OAAO,GAKb,OAAO,EAGT,SAASogB,EAAkC5a,EAAQ6G,GAGjD,GAAqC,wBAAjC7G,EAAO6a,uBACT,OAAO,EAGT,IAAIC,EAAoBP,KAAKQ,4BAA4B/a,EAAOgb,kBAE5D3gB,EAAWkgB,KAAKU,qBAAqBH,GACzC,GAAgB,MAAZzgB,EACF,OAAO,EAIT,IAAI0H,EAAiBwY,KAAKW,6BAA6Blb,GACnDmb,EAAaZ,KAAKa,iCAAiC/gB,EAASghB,gBAAiBtZ,GAIjF,GAAIoZ,GAAcA,EAAWG,kCAAkC3f,OAAS,EAAG,CACzE,GAAIwf,EAAWI,0CAGb,OAAO,EAGT,GAAIC,gBAAgBC,gCAAgCN,EAAWG,mCAE7D,OAAO,EAIT,IAAII,EAAeF,gBAAgBG,oBAAoB3b,EAAO4b,eAI9D,OAAOrB,KAAKsB,uCAAuCH,EAAcrhB,EAAU,MAG7E,OAAO,EAGF,SAAS6f,EAAyCla,EAAQgL,GAC/D,IAAI8Q,EAAwB9Q,EAAUnL,QAAQ,KAC9C,GAAIic,EAAwB,EAE1B,OAAO,EAIT,IAAIC,EAAyB/Q,EAAUnL,QAAQ,IAAKic,EAAwB,GAC5E,QAAIC,EAAyB,OAMC/b,EAAO6a,yBAA2BmB,kBAAkBC,4BAA8Bjc,EAAO6a,yBAA2BmB,kBAAkBE,gCAErIV,gBAAgBG,oBAAoB3Q,EAAUpD,UAAU,EAAGkU,MAA4BK,OAAOnc,EAAOgb,mBAE3HhQ,EAAU9H,MAAM6Y,EAAyB,GAAGlc,QAAQ,MAAQ,GAMvE,SAASuc,EAA2Bpc,EAAQgL,EAAW3Q,EAAUgiB,EAAa1R,GAC5E,IAAI2R,EAAsBC,gBAAgBvR,GAAW,GACjDwR,EAAwBC,EAAwBpiB,EAAU2F,EAAQ,MACtE,GAAIqc,EAAYhiB,EAAU2F,EAAQsc,EAAqBE,GACrD,OAAO,EAIT,IAAIE,EAAmBC,gBAAgBC,8BAA8B5c,EAAOgb,kBACxE6B,EAA4BtC,KAAKW,6BAA6Blb,GAElE,GAAI0c,EACG,KAAI7Y,EAAY6Y,EAAiBrB,gBAAiBvX,EAAWC,MAAMC,QAAQH,GAAYI,EAAK,EAAjG,IAAoGJ,EAAYC,EAAWD,EAAYA,EAAU3I,OAAOE,cAAe,CACrK,IAAI8I,EAEJ,GAAIJ,EAAU,CACZ,GAAIG,GAAMJ,EAAUlI,OAAQ,MAC5BuI,EAAOL,EAAUI,SACZ,CAEL,IADAA,EAAKJ,EAAUM,QACRC,KAAM,MACbF,EAAOD,EAAGxK,MAGZ,IAAIqjB,EAAkB5Y,EAEtB,GAAI4Y,EAAgBtP,wBAAwB7R,OAAS,EAGnD,IAD0BgP,EAAYoS,oBAAoB,IAAMD,EAAgBtP,wBAAwB,IAC/EhP,KAAKqe,GAE5B,SAIJ,GAAIR,EAAYhiB,EAAU2F,EAAQsc,EADlCE,EAAwBC,EAAwBpiB,EAAU2F,EAAQ8c,IAEhE,OAAO,GAKb,OAAO,EAQT,SAASL,EAAwBpiB,EAAU2F,EAAQgd,GACjD,GAAIA,EAAmB,CAErB,IAAIH,EAA4BtC,KAAKW,6BAA6Blb,GAClE,OAAOua,KAAK0C,sBAAsBJ,EAA2BG,EAAmB,UAAW3iB,GAAU0T,MAAM,KAI7G,IAAImP,EAAgBC,aAAand,EAAQ,UAAW3F,GAIhD+iB,EAAWF,EAAcrd,QAAQ,KACjCud,EAAW,IACbA,EAAWF,EAAcvhB,QAI3B,IAAI0hB,EAAaH,EAAcrd,QAAQ,KAAO,EAC9C,OAAOqd,EAAcha,MAAMma,EAAYD,GAAUrP,MAAM,KAGzD,SAASuP,EAAiCjjB,EAAU2F,EAAQsc,EAAqBE,GAC/E,IAAIe,EAAkBjB,EAAoBvO,MAAMyP,oBAG5CC,EAA4Bzd,EAAO0d,eAAiBH,EAAgB5hB,OAAS,EAAI4hB,EAAgB5hB,OAAS,EAK9G,GAA8B,GAA1B4hB,EAAgB5hB,QAAe4hB,EAAgBE,GAA2BE,SAASpD,KAAKW,6BAA6Blb,IACvH,OAAO,EAMT,IADA,IAAI4d,EAA4BpB,EAAsB7gB,OAAS,EACxDiiB,EAA4B,GAAKH,GAA6B,GAAG,CACtE,GAAIF,EAAgBE,KAA+BjB,EAAsBoB,GACvE,OAAO,EAETA,IACAH,IAKF,OAAOA,GAA6B,IAAK,EAAAjc,EAAAqG,UAAS0V,EAAgBE,GAA4BjB,EAAsB,IAGtH,SAASqB,EAA6BxjB,EAAU2F,EAAQsc,EAAqBE,GAC3E,IAAIsB,EAAY,EAChB,GAAI9d,EAAO6a,yBAA2BmB,kBAAkB+B,qBAAsB,CAE5E,IAAIC,EAAc7B,OAAOnc,EAAOgb,kBAChC8C,EAAYxB,EAAoBzc,QAAQme,GAAeA,EAAYriB,SAKrE,IAAK,IAAIlD,EAAI,EAAGA,EAAI+jB,EAAsB7gB,OAAQlD,IAAK,CAIrD,IADAqlB,EAAYxB,EAAoBzc,QAAQ2c,EAAsB/jB,GAAIqlB,IAClD,EACd,OAAO,EAIT,GADAA,GAAatB,EAAsB/jB,GAAGkD,SAC7B,GAALlD,GAAUqlB,EAAYxB,EAAoB3gB,SAAU,CAKtD,IAAIsiB,EAAS1D,KAAKQ,4BAA4B/a,EAAOgb,kBACrD,GAAgD,MAA5CT,KAAK2D,sBAAsBD,GAAQ,IAAiBE,UAAUC,QAAQ9B,EAAoBjC,OAAOyD,IAAa,CAIhH,IAAIjB,EAA4BtC,KAAKW,6BAA6Blb,GAClE,OAAO,EAAAwB,EAAAmG,YAAW2U,EAAoBpZ,MAAM4a,EAAYtB,EAAsB/jB,GAAGkD,QAASkhB,KAQhG,OAAOP,EAAoBpZ,MAAM4a,GAAWH,SAAS3d,EAAOqe,2BA9S5DC,SAAU,SAAkBte,EAAQgL,EAAW3Q,GAC7C,OAAO,GASTkkB,MAAO,SAAeve,EAAQgL,EAAW3Q,GACvC,UAAK,EAAA6N,EAAAvL,SAAcqD,OAAQlF,EAAWT,KAAc8f,EAAwBna,EAAQgL,EAAUwT,WAAYnkB,KAsB5GokB,gBAAiB,SAAyBze,EAAQgL,EAAW3Q,EAAUsQ,GACrE,IAAI+T,EAAkB1T,EAAUwT,WAEhC,UAAK,EAAAtW,EAAAvL,SAAcqD,OAAQlF,EAAWT,KAAc8f,EAAwBna,EAAQ0e,EAAiBrkB,IAAa6f,EAAyCla,EAAQ0e,KAAqB9D,EAAkC5a,EAAQ3F,KAI3N+hB,EAA2Bpc,EAAQgL,EAAW3Q,EAAUwjB,EAA8BlT,IAe/FgU,eAAgB,SAAwB3e,EAAQgL,EAAW3Q,EAAUsQ,GACnE,IAAI+T,EAAkB1T,EAAUwT,WAEhC,UAAK,EAAAtW,EAAAvL,SAAcqD,OAAQlF,EAAWT,KAAc8f,EAAwBna,EAAQ0e,EAAiBrkB,IAAa6f,EAAyCla,EAAQ0e,KAAqB9D,EAAkC5a,EAAQ3F,KAI3N+hB,EAA2Bpc,EAAQgL,EAAW3Q,EAAUijB,EAAkC3S,oFC3ErG,IAAIpP,EAAe,WAAc,SAASC,EAAiBC,EAAQC,GAAS,IAAK,IAAIjD,EAAI,EAAGA,EAAIiD,EAAMC,OAAQlD,IAAK,CAAE,IAAImD,EAAaF,EAAMjD,GAAImD,EAAWtC,WAAasC,EAAWtC,aAAc,EAAOsC,EAAWvC,cAAe,EAAU,UAAWuC,IAAYA,EAAWC,UAAW,GAAM1C,OAAOC,eAAeqC,EAAQG,EAAWE,IAAKF,IAAiB,OAAO,SAAUG,EAAaC,EAAYC,GAAiJ,OAA9HD,GAAYR,EAAiBO,EAAYjC,UAAWkC,GAAiBC,GAAaT,EAAiBO,EAAaE,GAAqBF,GAA7gB,GAEnB,SAASG,EAAgBC,EAAUJ,GAAe,KAAMI,aAAoBJ,GAAgB,MAAM,IAAIK,UAAU,qCAIhH,IAAIwiB,EAAO,SAASA,EAAK9iB,EAAKrC,GAC5B,IAAI0K,EAAO3E,UAAU7D,OAAS,QAAsBb,IAAjB0E,UAAU,GAAmBA,UAAU,GAAK,KAC3Eqf,EAAOrf,UAAU7D,OAAS,QAAsBb,IAAjB0E,UAAU,GAAmBA,UAAU,GAAK,KAE/EtD,EAAgBI,KAAMsiB,GAEtBtiB,KAAKR,IAAMA,EACXQ,KAAK7C,MAAQA,EACb6C,KAAK6H,KAAOA,EACZ7H,KAAKuiB,KAAOA,GAGVC,EAAW,WAEb,SAASA,IACP,IAAI1X,EAAQ5H,UAAU7D,OAAS,QAAsBb,IAAjB0E,UAAU,GAAmBA,UAAU,GAAK,GAEhFtD,EAAgBI,KAAMwiB,GAEtBxiB,KAAKyiB,KAAO,EACZziB,KAAK8K,MAAQA,EACb9K,KAAK0iB,KAAO,KACZ1iB,KAAK2iB,KAAO,KACZ3iB,KAAK4iB,SAqGP,OA9FA3jB,EAAaujB,IACXhjB,IAAK,MACLrC,MAAO,SAAaqC,EAAKrC,GAGvB,GAFA6C,KAAK6iB,cAEA7iB,KAAK0iB,KAEH,CACL,IAAII,EAAO,IAAIR,EAAK9iB,EAAKrC,EAAO6C,KAAK0iB,MACrC1iB,KAAK0iB,KAAKH,KAAOO,EACjB9iB,KAAK0iB,KAAOI,OAJZ9iB,KAAK0iB,KAAO1iB,KAAK2iB,KAAO,IAAIL,EAAK9iB,EAAKrC,GAQxC6C,KAAK4iB,MAAMpjB,GAAOQ,KAAK0iB,KACvB1iB,KAAKyiB,UAMPjjB,IAAK,MACLrC,MAAO,SAAaqC,GAClB,GAAIQ,KAAK4iB,MAAMpjB,GAAM,CACnB,IAAIrC,EAAQ6C,KAAK4iB,MAAMpjB,GAAKrC,MAO5B,OAJA6C,KAAK+iB,OAAOvjB,GAEZQ,KAAKgjB,IAAIxjB,EAAKrC,GAEPA,EAGT8lB,QAAQC,IAAI,uCAAyC1jB,MAGvDA,IAAK,cACLrC,MAAO,WACD6C,KAAKyiB,OAASziB,KAAK8K,OACrB9K,KAAK+iB,OAAO/iB,KAAK2iB,KAAKnjB,QAI1BA,IAAK,SACLrC,MAAO,SAAgBqC,GACrB,IAAIsjB,EAAO9iB,KAAK4iB,MAAMpjB,GAEJ,OAAdsjB,EAAKP,KACPO,EAAKP,KAAK1a,KAAOib,EAAKjb,KAEtB7H,KAAK0iB,KAAOI,EAAKjb,KAGD,OAAdib,EAAKjb,KACPib,EAAKjb,KAAK0a,KAAOO,EAAKP,KAEtBviB,KAAK2iB,KAAOG,EAAKP,YAGZviB,KAAK4iB,MAAMpjB,GAClBQ,KAAKyiB,UAGPjjB,IAAK,QACLrC,MAAO,WACL6C,KAAK0iB,KAAO,KACZ1iB,KAAK2iB,KAAO,KACZ3iB,KAAKyiB,KAAO,EACZziB,KAAK4iB,aAyBFJ,EAhHM,aAmHAA,iFCjIf,MAAAW,EAAAlnB,EAAA,wCAJA,IAAIgD,EAAe,WAAc,SAASC,EAAiBC,EAAQC,GAAS,IAAK,IAAIjD,EAAI,EAAGA,EAAIiD,EAAMC,OAAQlD,IAAK,CAAE,IAAImD,EAAaF,EAAMjD,GAAImD,EAAWtC,WAAasC,EAAWtC,aAAc,EAAOsC,EAAWvC,cAAe,EAAU,UAAWuC,IAAYA,EAAWC,UAAW,GAAM1C,OAAOC,eAAeqC,EAAQG,EAAWE,IAAKF,IAAiB,OAAO,SAAUG,EAAaC,EAAYC,GAAiJ,OAA9HD,GAAYR,EAAiBO,EAAYjC,UAAWkC,GAAiBC,GAAaT,EAAiBO,EAAaE,GAAqBF,GAA7gB,GAWnB,IAAI2jB,EAAc,WACjB,SAASA,EAAYX,IAVtB,SAAyB5iB,EAAUJ,GAAe,KAAMI,aAAoBJ,GAAgB,MAAM,IAAIK,UAAU,qCAW9GF,CAAgBI,KAAMojB,GAEtBpjB,KAAK4iB,MAAQ,IAAAS,EAAAhjB,QAAaoiB,GAe3B,OAZAxjB,EAAamkB,IACZ5jB,IAAK,sBACLrC,MAAO,SAA6B4M,GACnC,IAAIuZ,EAAStjB,KAAK4iB,MAAM3lB,IAAI8M,GAK5B,OAJKuZ,IACJA,EAAS,IAAI9c,OAAO,IAAMuD,GAC1B/J,KAAK4iB,MAAMI,IAAIjZ,EAASuZ,IAElBA,MAIFF,EAnBU,aAsBHA,2FC/BA,SAAqBpgB,EAAMC,EAASlF,GAClD,IAAI0f,EAAU,IAAAC,EAAArd,QAAuB2C,EAAMC,EAASlF,GAChDwlB,KACJ,KAAO9F,EAAQ9N,WACd4T,EAAQra,KAAKuU,EAAQ5V,QAEtB,OAAO0b,GARR,MAAA5F,EAAA1hB,EAAA,iICGe,WACd,IAAImM,GAAsB,EAAAoV,EAAAnV,oBAAmBnF,WACzCF,EAAOoF,EAAoBpF,KAC3BC,EAAUmF,EAAoBnF,QAC9BlF,EAAWqK,EAAoBrK,SAEnC,OAAO,EAAAylB,EAAAnjB,SAAa2C,EAAMC,EAASlF,IATpC,MAAA0lB,EAAAxnB,EAAA,wCACAuhB,EAAAvhB,EAAA,4FCGe,SAAgCyH,EAAQ5F,EAASC,GAC/D,GAAsB,iBAAX2F,EACV,MAAM,IAAI5D,UAAU,2BAGrB,GAAuB,iBAAZhC,EACV,MAAM,IAAIgC,UAAU,4BAQrB,IAAI+J,OAAQ,EAEXA,GADG,EAAAjG,EAAAvD,SAAoBqD,IACf,EAAA8L,EAAAnP,SAAYqD,GAAUN,eAAgBtF,GAAWC,MAK1D,OAAO,EAAA2lB,EAAArjB,SAAwBwJ,EAAO/L,OAASU,EAAWT,IAzB3D,QAAA9B,EAAA,SACAA,EAAA,QACAA,EAAA,kJCee,WACb,IAAImM,GAAsB,EAAAub,EAAAtb,oBAAmBnF,WACzC2G,EAAQzB,EAAoByB,MAC5B5G,EAAUmF,EAAoBnF,QAC9BlF,EAAWqK,EAAoBrK,SAEnC,OAAO,EAAA4N,EAAAtL,SAAkBwJ,EAAO5G,EAASlF,IAvB3C,MAAA4lB,EAAA1nB,EAAA,IACAkK,EAAAlK,EAAA,iICCe,SAA0B6B,EAAS8lB,EAAU7lB,GAC3D,GAAI6lB,EAAS9lB,GACZ,OAAO,IAAA+H,EAAAxF,QAAgBvC,EAAS8lB,EAAS9lB,GAAUC,IAJrD,MAAA8lB,EAAA5nB,EAAA,gICMe,SAAoC+G,EAAMC,EAASlF,GAE7DkF,GAAWA,EAAQG,kBAAmB,EAAAmH,EAAAhM,oBAAmB0E,EAAQG,eAAgBrF,KACpFkF,EAAUuF,KAAavF,GACtBG,oBAAgB5E,KAIlB,IACC,OAAO,EAAA8J,EAAAjI,SAAiB2C,EAAMC,EAASlF,GACtC,MAAO+lB,GAER,KAAIA,wBAGH,MAAMA,IAnBT,QAAA7nB,EAAA,SACAA,EAAA,KACAsO,EAAAtO,EAAA,sDAJA,IAAIuM,EAAW3L,OAAO4L,QAAU,SAAUtJ,GAAU,IAAK,IAAIhD,EAAI,EAAGA,EAAI+G,UAAU7D,OAAQlD,IAAK,CAAE,IAAIuM,EAASxF,UAAU/G,GAAI,IAAK,IAAIqD,KAAOkJ,EAAc7L,OAAOW,UAAUC,eAAenB,KAAKoM,EAAQlJ,KAAQL,EAAOK,GAAOkJ,EAAOlJ,IAAY,OAAOL,4FCGxO,WACd,IAAIiJ,GAAsB,EAAAoV,EAAAnV,oBAAmBnF,WACzCF,EAAOoF,EAAoBpF,KAC3BC,EAAUmF,EAAoBnF,QAC9BlF,EAAWqK,EAAoBrK,SAEnC,OAAO,EAAAgmB,EAAA1jB,SAA4B2C,EAAMC,EAASlF,IATnD,MAAAyf,EAAAvhB,EAAA,GACA+nB,EAAA/nB,EAAA,kICEgBiE,QAAU,SAASyB,uBAAyB+Q,GAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,MAAMM,GAAK,KAAK,MAAMiR,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,KAAK,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,KAAK,KAAK,KAAK,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,KAAK,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,KAAK,KAAK,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,IAAM,MAAMC,KAAO,MAAMC,KAAO,KAAK,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,KAAK,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,KAAK,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAMC,KAAO,MAAM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","file":"libphonenumber-js.min.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"libphonenumber\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"libphonenumber\"] = factory();\n\telse\n\t\troot[\"libphonenumber\"] = factory();\n})(window, function() {\nreturn "," \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, {\n \t\t\t\tconfigurable: false,\n \t\t\t\tenumerable: true,\n \t\t\t\tget: getter\n \t\t\t});\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 48);\n","var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nimport compare from './tools/semver-compare';\n\n// Added \"possibleLengths\" and renamed\n// \"country_phone_code_to_countries\" to \"country_calling_codes\".\nvar V2 = '1.0.18';\n\n// Added \"idd_prefix\" and \"default_idd_prefix\".\nvar V3 = '1.2.0';\n\nvar DEFAULT_EXT_PREFIX = ' ext. ';\n\nvar Metadata = function () {\n\tfunction Metadata(metadata) {\n\t\t_classCallCheck(this, Metadata);\n\n\t\tvalidateMetadata(metadata);\n\n\t\tthis.metadata = metadata;\n\n\t\tthis.v1 = !metadata.version;\n\t\tthis.v2 = metadata.version !== undefined && compare(metadata.version, V3) === -1;\n\t\tthis.v3 = metadata.version !== undefined; // && compare(metadata.version, V4) === -1\n\t}\n\n\t_createClass(Metadata, [{\n\t\tkey: 'getCountries',\n\t\tvalue: function getCountries() {\n\t\t\treturn Object.keys(this.metadata.countries);\n\t\t}\n\t}, {\n\t\tkey: 'hasCountry',\n\t\tvalue: function hasCountry(country) {\n\t\t\treturn this.metadata.countries[country] !== undefined;\n\t\t}\n\t}, {\n\t\tkey: 'country',\n\t\tvalue: function country(_country) {\n\t\t\tif (!_country) {\n\t\t\t\tthis._country = undefined;\n\t\t\t\tthis.country_metadata = undefined;\n\t\t\t\treturn this;\n\t\t\t}\n\n\t\t\tif (!this.hasCountry(_country)) {\n\t\t\t\tthrow new Error('Unknown country: ' + _country);\n\t\t\t}\n\n\t\t\tthis._country = _country;\n\t\t\tthis.country_metadata = this.metadata.countries[_country];\n\t\t\treturn this;\n\t\t}\n\t}, {\n\t\tkey: 'getDefaultCountryMetadataForRegion',\n\t\tvalue: function getDefaultCountryMetadataForRegion() {\n\t\t\treturn this.metadata.countries[this.countryCallingCodes()[this.countryCallingCode()][0]];\n\t\t}\n\t}, {\n\t\tkey: 'countryCallingCode',\n\t\tvalue: function countryCallingCode() {\n\t\t\treturn this.country_metadata[0];\n\t\t}\n\t}, {\n\t\tkey: 'IDDPrefix',\n\t\tvalue: function IDDPrefix() {\n\t\t\tif (this.v1 || this.v2) return;\n\t\t\treturn this.country_metadata[1];\n\t\t}\n\t}, {\n\t\tkey: 'defaultIDDPrefix',\n\t\tvalue: function defaultIDDPrefix() {\n\t\t\tif (this.v1 || this.v2) return;\n\t\t\treturn this.country_metadata[12];\n\t\t}\n\t}, {\n\t\tkey: 'nationalNumberPattern',\n\t\tvalue: function nationalNumberPattern() {\n\t\t\tif (this.v1 || this.v2) return this.country_metadata[1];\n\t\t\treturn this.country_metadata[2];\n\t\t}\n\t}, {\n\t\tkey: 'possibleLengths',\n\t\tvalue: function possibleLengths() {\n\t\t\tif (this.v1) return;\n\t\t\treturn this.country_metadata[this.v2 ? 2 : 3];\n\t\t}\n\t}, {\n\t\tkey: '_getFormats',\n\t\tvalue: function _getFormats(country_metadata) {\n\t\t\treturn country_metadata[this.v1 ? 2 : this.v2 ? 3 : 4];\n\t\t}\n\n\t\t// For countries of the same region (e.g. NANPA)\n\t\t// formats are all stored in the \"main\" country for that region.\n\t\t// E.g. \"RU\" and \"KZ\", \"US\" and \"CA\".\n\n\t}, {\n\t\tkey: 'formats',\n\t\tvalue: function formats() {\n\t\t\tvar _this = this;\n\n\t\t\tvar formats = this._getFormats(this.country_metadata) || this._getFormats(this.getDefaultCountryMetadataForRegion()) || [];\n\t\t\treturn formats.map(function (_) {\n\t\t\t\treturn new Format(_, _this);\n\t\t\t});\n\t\t}\n\t}, {\n\t\tkey: 'nationalPrefix',\n\t\tvalue: function nationalPrefix() {\n\t\t\treturn this.country_metadata[this.v1 ? 3 : this.v2 ? 4 : 5];\n\t\t}\n\t}, {\n\t\tkey: '_getNationalPrefixFormattingRule',\n\t\tvalue: function _getNationalPrefixFormattingRule(country_metadata) {\n\t\t\treturn country_metadata[this.v1 ? 4 : this.v2 ? 5 : 6];\n\t\t}\n\n\t\t// For countries of the same region (e.g. NANPA)\n\t\t// national prefix formatting rule is stored in the \"main\" country for that region.\n\t\t// E.g. \"RU\" and \"KZ\", \"US\" and \"CA\".\n\n\t}, {\n\t\tkey: 'nationalPrefixFormattingRule',\n\t\tvalue: function nationalPrefixFormattingRule() {\n\t\t\treturn this._getNationalPrefixFormattingRule(this.country_metadata) || this._getNationalPrefixFormattingRule(this.getDefaultCountryMetadataForRegion());\n\t\t}\n\t}, {\n\t\tkey: 'nationalPrefixForParsing',\n\t\tvalue: function nationalPrefixForParsing() {\n\t\t\t// If `national_prefix_for_parsing` is not set explicitly,\n\t\t\t// then infer it from `national_prefix` (if any)\n\t\t\treturn this.country_metadata[this.v1 ? 5 : this.v2 ? 6 : 7] || this.nationalPrefix();\n\t\t}\n\t}, {\n\t\tkey: 'nationalPrefixTransformRule',\n\t\tvalue: function nationalPrefixTransformRule() {\n\t\t\treturn this.country_metadata[this.v1 ? 6 : this.v2 ? 7 : 8];\n\t\t}\n\t}, {\n\t\tkey: '_getNationalPrefixIsOptionalWhenFormatting',\n\t\tvalue: function _getNationalPrefixIsOptionalWhenFormatting() {\n\t\t\treturn !!this.country_metadata[this.v1 ? 7 : this.v2 ? 8 : 9];\n\t\t}\n\n\t\t// For countries of the same region (e.g. NANPA)\n\t\t// \"national prefix is optional when parsing\" flag is\n\t\t// stored in the \"main\" country for that region.\n\t\t// E.g. \"RU\" and \"KZ\", \"US\" and \"CA\".\n\n\t}, {\n\t\tkey: 'nationalPrefixIsOptionalWhenFormatting',\n\t\tvalue: function nationalPrefixIsOptionalWhenFormatting() {\n\t\t\treturn this._getNationalPrefixIsOptionalWhenFormatting(this.country_metadata) || this._getNationalPrefixIsOptionalWhenFormatting(this.getDefaultCountryMetadataForRegion());\n\t\t}\n\t}, {\n\t\tkey: 'leadingDigits',\n\t\tvalue: function leadingDigits() {\n\t\t\treturn this.country_metadata[this.v1 ? 8 : this.v2 ? 9 : 10];\n\t\t}\n\t}, {\n\t\tkey: 'types',\n\t\tvalue: function types() {\n\t\t\treturn this.country_metadata[this.v1 ? 9 : this.v2 ? 10 : 11];\n\t\t}\n\t}, {\n\t\tkey: 'hasTypes',\n\t\tvalue: function hasTypes() {\n\t\t\t// Versions 1.2.0 - 1.2.4: can be `[]`.\n\t\t\t/* istanbul ignore next */\n\t\t\tif (this.types() && this.types().length === 0) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t\t// Versions <= 1.2.4: can be `undefined`.\n\t\t\t// Version >= 1.2.5: can be `0`.\n\t\t\treturn !!this.types();\n\t\t}\n\t}, {\n\t\tkey: 'type',\n\t\tvalue: function type(_type) {\n\t\t\tif (this.hasTypes() && getType(this.types(), _type)) {\n\t\t\t\treturn new Type(getType(this.types(), _type), this);\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'ext',\n\t\tvalue: function ext() {\n\t\t\tif (this.v1 || this.v2) return DEFAULT_EXT_PREFIX;\n\t\t\treturn this.country_metadata[13] || DEFAULT_EXT_PREFIX;\n\t\t}\n\t}, {\n\t\tkey: 'countryCallingCodes',\n\t\tvalue: function countryCallingCodes() {\n\t\t\tif (this.v1) return this.metadata.country_phone_code_to_countries;\n\t\t\treturn this.metadata.country_calling_codes;\n\t\t}\n\n\t\t// Formatting information for regions which share\n\t\t// a country calling code is contained by only one region\n\t\t// for performance reasons. For example, for NANPA region\n\t\t// (\"North American Numbering Plan Administration\",\n\t\t// which includes USA, Canada, Cayman Islands, Bahamas, etc)\n\t\t// it will be contained in the metadata for `US`.\n\t\t//\n\t\t// `country_calling_code` is always valid.\n\t\t// But the actual country may not necessarily be part of the metadata.\n\t\t//\n\n\t}, {\n\t\tkey: 'chooseCountryByCountryCallingCode',\n\t\tvalue: function chooseCountryByCountryCallingCode(country_calling_code) {\n\t\t\tvar country = this.countryCallingCodes()[country_calling_code][0];\n\n\t\t\t// Do not want to test this case.\n\t\t\t// (custom metadata, not all countries).\n\t\t\t/* istanbul ignore else */\n\t\t\tif (this.hasCountry(country)) {\n\t\t\t\tthis.country(country);\n\t\t\t}\n\t\t}\n\t}, {\n\t\tkey: 'selectedCountry',\n\t\tvalue: function selectedCountry() {\n\t\t\treturn this._country;\n\t\t}\n\t}]);\n\n\treturn Metadata;\n}();\n\nexport default Metadata;\n\nvar Format = function () {\n\tfunction Format(format, metadata) {\n\t\t_classCallCheck(this, Format);\n\n\t\tthis._format = format;\n\t\tthis.metadata = metadata;\n\t}\n\n\t_createClass(Format, [{\n\t\tkey: 'pattern',\n\t\tvalue: function pattern() {\n\t\t\treturn this._format[0];\n\t\t}\n\t}, {\n\t\tkey: 'format',\n\t\tvalue: function format() {\n\t\t\treturn this._format[1];\n\t\t}\n\t}, {\n\t\tkey: 'leadingDigitsPatterns',\n\t\tvalue: function leadingDigitsPatterns() {\n\t\t\treturn this._format[2] || [];\n\t\t}\n\t}, {\n\t\tkey: 'nationalPrefixFormattingRule',\n\t\tvalue: function nationalPrefixFormattingRule() {\n\t\t\treturn this._format[3] || this.metadata.nationalPrefixFormattingRule();\n\t\t}\n\t}, {\n\t\tkey: 'nationalPrefixIsOptionalWhenFormatting',\n\t\tvalue: function nationalPrefixIsOptionalWhenFormatting() {\n\t\t\treturn !!this._format[4] || this.metadata.nationalPrefixIsOptionalWhenFormatting();\n\t\t}\n\t}, {\n\t\tkey: 'nationalPrefixIsMandatoryWhenFormatting',\n\t\tvalue: function nationalPrefixIsMandatoryWhenFormatting() {\n\t\t\t// National prefix is omitted if there's no national prefix formatting rule\n\t\t\t// set for this country, or when the national prefix formatting rule\n\t\t\t// contains no national prefix itself, or when this rule is set but\n\t\t\t// national prefix is optional for this phone number format\n\t\t\t// (and it is not enforced explicitly)\n\t\t\treturn this.usesNationalPrefix() && !this.nationalPrefixIsOptionalWhenFormatting();\n\t\t}\n\n\t\t// Checks whether national prefix formatting rule contains national prefix.\n\n\t}, {\n\t\tkey: 'usesNationalPrefix',\n\t\tvalue: function usesNationalPrefix() {\n\t\t\treturn this.nationalPrefixFormattingRule() &&\n\t\t\t// Check that national prefix formatting rule is not a dummy one.\n\t\t\tthis.nationalPrefixFormattingRule() !== '$1' &&\n\t\t\t// Check that national prefix formatting rule actually has national prefix digit(s).\n\t\t\t/\\d/.test(this.nationalPrefixFormattingRule().replace('$1', ''));\n\t\t}\n\t}, {\n\t\tkey: 'internationalFormat',\n\t\tvalue: function internationalFormat() {\n\t\t\treturn this._format[5] || this.format();\n\t\t}\n\t}]);\n\n\treturn Format;\n}();\n\nvar Type = function () {\n\tfunction Type(type, metadata) {\n\t\t_classCallCheck(this, Type);\n\n\t\tthis.type = type;\n\t\tthis.metadata = metadata;\n\t}\n\n\t_createClass(Type, [{\n\t\tkey: 'pattern',\n\t\tvalue: function pattern() {\n\t\t\tif (this.metadata.v1) return this.type;\n\t\t\treturn this.type[0];\n\t\t}\n\t}, {\n\t\tkey: 'possibleLengths',\n\t\tvalue: function possibleLengths() {\n\t\t\tif (this.metadata.v1) return;\n\t\t\treturn this.type[1] || this.metadata.possibleLengths();\n\t\t}\n\t}]);\n\n\treturn Type;\n}();\n\nfunction getType(types, type) {\n\tswitch (type) {\n\t\tcase 'FIXED_LINE':\n\t\t\treturn types[0];\n\t\tcase 'MOBILE':\n\t\t\treturn types[1];\n\t\tcase 'TOLL_FREE':\n\t\t\treturn types[2];\n\t\tcase 'PREMIUM_RATE':\n\t\t\treturn types[3];\n\t\tcase 'PERSONAL_NUMBER':\n\t\t\treturn types[4];\n\t\tcase 'VOICEMAIL':\n\t\t\treturn types[5];\n\t\tcase 'UAN':\n\t\t\treturn types[6];\n\t\tcase 'PAGER':\n\t\t\treturn types[7];\n\t\tcase 'VOIP':\n\t\t\treturn types[8];\n\t\tcase 'SHARED_COST':\n\t\t\treturn types[9];\n\t}\n}\n\nexport function validateMetadata(metadata) {\n\tif (!metadata) {\n\t\tthrow new Error('[libphonenumber-js] `metadata` argument not passed. Check your arguments.');\n\t}\n\n\t// `country_phone_code_to_countries` was renamed to\n\t// `country_calling_codes` in `1.0.18`.\n\tif (!is_object(metadata) || !is_object(metadata.countries) || !is_object(metadata.country_calling_codes) && !is_object(metadata.country_phone_code_to_countries)) {\n\t\tthrow new Error('[libphonenumber-js] `metadata` argument was passed but it\\'s not a valid metadata. Must be an object having `.countries` and `.country_calling_codes` child object properties. Got ' + (is_object(metadata) ? 'an object of shape: { ' + Object.keys(metadata).join(', ') + ' }' : 'a ' + type_of(metadata) + ': ' + metadata) + '.');\n\t}\n}\n\n// Babel transforms `typeof` into some \"branches\"\n// so istanbul will show this as \"branch not covered\".\n/* istanbul ignore next */\nvar is_object = function is_object(_) {\n\treturn (typeof _ === 'undefined' ? 'undefined' : _typeof(_)) === 'object';\n};\n\n// Babel transforms `typeof` into some \"branches\"\n// so istanbul will show this as \"branch not covered\".\n/* istanbul ignore next */\nvar type_of = function type_of(_) {\n\treturn typeof _ === 'undefined' ? 'undefined' : _typeof(_);\n};\n\n/**\r\n * Returns extension prefix for a country.\r\n * @param {string} country\r\n * @param {object} metadata\r\n * @return {string?}\r\n * @example\r\n * // Returns \" ext. \"\r\n * getExtPrefix(\"US\")\r\n */\nexport function getExtPrefix(country, metadata) {\n\tmetadata = new Metadata(metadata);\n\tif (metadata.hasCountry(country)) {\n\t\treturn metadata.country(country).ext();\n\t}\n\treturn DEFAULT_EXT_PREFIX;\n}\n\n/**\r\n * Returns \"country calling code\" for a country.\r\n * Throws an error if the country doesn't exist or isn't supported by this library.\r\n * @param {string} country\r\n * @param {object} metadata\r\n * @return {string}\r\n * @example\r\n * // Returns \"44\"\r\n * getCountryCallingCode(\"GB\")\r\n */\nexport function getCountryCallingCode(country, metadata) {\n\tmetadata = new Metadata(metadata);\n\tif (metadata.hasCountry(country)) {\n\t\treturn metadata.country(country).countryCallingCode();\n\t}\n\tthrow new Error('Unknown country: ' + country);\n}\n\nexport function isSupportedCountry(country, metadata) {\n\t// metadata = new Metadata(metadata)\n\t// return metadata.hasCountry(country)\n\treturn metadata.countries[country] !== undefined;\n}\n//# sourceMappingURL=metadata.js.map","// The minimum length of the national significant number.\nexport var MIN_LENGTH_FOR_NSN = 2;\n\n// The ITU says the maximum length should be 15,\n// but one can find longer numbers in Germany.\nexport var MAX_LENGTH_FOR_NSN = 17;\n\n// The maximum length of the country calling code.\nexport var MAX_LENGTH_COUNTRY_CODE = 3;\n\n// Digits accepted in phone numbers\n// (ascii, fullwidth, arabic-indic, and eastern arabic digits).\nexport var VALID_DIGITS = '0-9\\uFF10-\\uFF19\\u0660-\\u0669\\u06F0-\\u06F9';\n\n// `DASHES` will be right after the opening square bracket of the \"character class\"\nvar DASHES = '-\\u2010-\\u2015\\u2212\\u30FC\\uFF0D';\nvar SLASHES = '\\uFF0F/';\nvar DOTS = '\\uFF0E.';\nexport var WHITESPACE = ' \\xA0\\xAD\\u200B\\u2060\\u3000';\nvar BRACKETS = '()\\uFF08\\uFF09\\uFF3B\\uFF3D\\\\[\\\\]';\n// export const OPENING_BRACKETS = '(\\uFF08\\uFF3B\\\\\\['\nvar TILDES = '~\\u2053\\u223C\\uFF5E';\n\n// Regular expression of acceptable punctuation found in phone numbers. This\n// excludes punctuation found as a leading character only. This consists of dash\n// characters, white space characters, full stops, slashes, square brackets,\n// parentheses and tildes. Full-width variants are also present.\nexport var VALID_PUNCTUATION = '' + DASHES + SLASHES + DOTS + WHITESPACE + BRACKETS + TILDES;\n\nexport var PLUS_CHARS = '+\\uFF0B';\n// const LEADING_PLUS_CHARS_PATTERN = new RegExp('^[' + PLUS_CHARS + ']+')\n//# sourceMappingURL=constants.js.map","// This is a port of Google Android `libphonenumber`'s\n// `phonenumberutil.js` of December 31th, 2018.\n//\n// https://github.com/googlei18n/libphonenumber/commits/master/javascript/i18n/phonenumbers/phonenumberutil.js\n\nimport { VALID_DIGITS, VALID_PUNCTUATION, PLUS_CHARS, MIN_LENGTH_FOR_NSN, MAX_LENGTH_FOR_NSN, MAX_LENGTH_COUNTRY_CODE } from './constants';\n\nimport { matchesEntirely } from './util';\nimport ParseError from './ParseError';\nimport Metadata from './metadata';\nimport isViablePhoneNumber from './isViablePhoneNumber';\nimport { extractExtension } from './extension';\nimport parseIncompletePhoneNumber from './parseIncompletePhoneNumber';\nimport getCountryCallingCode from './getCountryCallingCode';\nimport getNumberType, { checkNumberLengthForType } from './getNumberType_';\nimport { is_possible_number } from './isPossibleNumber_';\nimport { stripIDDPrefix } from './IDD';\nimport { parseRFC3966 } from './RFC3966';\nimport PhoneNumber from './PhoneNumber';\n\n// We don't allow input strings for parsing to be longer than 250 chars.\n// This prevents malicious input from consuming CPU.\nvar MAX_INPUT_STRING_LENGTH = 250;\n\n// This consists of the plus symbol, digits, and arabic-indic digits.\nvar PHONE_NUMBER_START_PATTERN = new RegExp('[' + PLUS_CHARS + VALID_DIGITS + ']');\n\n// Regular expression of trailing characters that we want to remove.\nvar AFTER_PHONE_NUMBER_END_PATTERN = new RegExp('[^' + VALID_DIGITS + ']+$');\n\n// `options`:\n// {\n// country:\n// {\n// restrict - (a two-letter country code)\n// the phone number must be in this country\n//\n// default - (a two-letter country code)\n// default country to use for phone number parsing and validation\n// (if no country code could be derived from the phone number)\n// }\n// }\n//\n// Returns `{ country, number }`\n//\n// Example use cases:\n//\n// ```js\n// parse('8 (800) 555-35-35', 'RU')\n// parse('8 (800) 555-35-35', 'RU', metadata)\n// parse('8 (800) 555-35-35', { country: { default: 'RU' } })\n// parse('8 (800) 555-35-35', { country: { default: 'RU' } }, metadata)\n// parse('+7 800 555 35 35')\n// parse('+7 800 555 35 35', metadata)\n// ```\n//\nexport default function parse(text) {\n\tvar options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\tvar metadata = arguments[2];\n\n\tmetadata = new Metadata(metadata);\n\n\t// Validate `defaultCountry`.\n\tif (options.defaultCountry && !metadata.hasCountry(options.defaultCountry)) {\n\t\tif (options.v2) {\n\t\t\tthrow new ParseError('INVALID_COUNTRY');\n\t\t}\n\t\tthrow new Error('Unknown country: ' + options.defaultCountry);\n\t}\n\n\t// Parse the phone number.\n\n\tvar _parse_input = parse_input(text, options.v2),\n\t formatted_phone_number = _parse_input.number,\n\t ext = _parse_input.ext;\n\n\t// If the phone number is not viable then return nothing.\n\n\n\tif (!formatted_phone_number) {\n\t\tif (options.v2) {\n\t\t\tthrow new ParseError('NOT_A_NUMBER');\n\t\t}\n\t\treturn {};\n\t}\n\n\tvar _parse_phone_number = parse_phone_number(formatted_phone_number, options.defaultCountry, metadata),\n\t country = _parse_phone_number.country,\n\t nationalNumber = _parse_phone_number.national_number,\n\t countryCallingCode = _parse_phone_number.countryCallingCode,\n\t carrierCode = _parse_phone_number.carrierCode;\n\n\tif (!metadata.selectedCountry()) {\n\t\tif (options.v2) {\n\t\t\tthrow new ParseError('INVALID_COUNTRY');\n\t\t}\n\t\treturn {};\n\t}\n\n\t// Validate national (significant) number length.\n\tif (nationalNumber.length < MIN_LENGTH_FOR_NSN) {\n\t\t// Won't throw here because the regexp already demands length > 1.\n\t\t/* istanbul ignore if */\n\t\tif (options.v2) {\n\t\t\tthrow new ParseError('TOO_SHORT');\n\t\t}\n\t\t// Google's demo just throws an error in this case.\n\t\treturn {};\n\t}\n\n\t// Validate national (significant) number length.\n\t//\n\t// A sidenote:\n\t//\n\t// They say that sometimes national (significant) numbers\n\t// can be longer than `MAX_LENGTH_FOR_NSN` (e.g. in Germany).\n\t// https://github.com/googlei18n/libphonenumber/blob/7e1748645552da39c4e1ba731e47969d97bdb539/resources/phonenumber.proto#L36\n\t// Such numbers will just be discarded.\n\t//\n\tif (nationalNumber.length > MAX_LENGTH_FOR_NSN) {\n\t\tif (options.v2) {\n\t\t\tthrow new ParseError('TOO_LONG');\n\t\t}\n\t\t// Google's demo just throws an error in this case.\n\t\treturn {};\n\t}\n\n\tif (options.v2) {\n\t\tvar phoneNumber = new PhoneNumber(countryCallingCode, nationalNumber, metadata.metadata);\n\n\t\tif (country) {\n\t\t\tphoneNumber.country = country;\n\t\t}\n\t\tif (carrierCode) {\n\t\t\tphoneNumber.carrierCode = carrierCode;\n\t\t}\n\t\tif (ext) {\n\t\t\tphoneNumber.ext = ext;\n\t\t}\n\n\t\treturn phoneNumber;\n\t}\n\n\t// Check if national phone number pattern matches the number.\n\t// National number pattern is different for each country,\n\t// even for those ones which are part of the \"NANPA\" group.\n\tvar valid = country && matchesEntirely(nationalNumber, metadata.nationalNumberPattern()) ? true : false;\n\n\tif (!options.extended) {\n\t\treturn valid ? result(country, nationalNumber, ext) : {};\n\t}\n\n\treturn {\n\t\tcountry: country,\n\t\tcountryCallingCode: countryCallingCode,\n\t\tcarrierCode: carrierCode,\n\t\tvalid: valid,\n\t\tpossible: valid ? true : options.extended === true && metadata.possibleLengths() && is_possible_number(nationalNumber, countryCallingCode !== undefined, metadata),\n\t\tphone: nationalNumber,\n\t\text: ext\n\t};\n}\n\n/**\r\n * Extracts a parseable phone number.\r\n * @param {string} text - Input.\r\n * @return {string}.\r\n */\nexport function extract_formatted_phone_number(text, v2) {\n\tif (!text) {\n\t\treturn;\n\t}\n\n\tif (text.length > MAX_INPUT_STRING_LENGTH) {\n\t\tif (v2) {\n\t\t\tthrow new ParseError('TOO_LONG');\n\t\t}\n\t\treturn;\n\t}\n\n\t// Attempt to extract a possible number from the string passed in\n\n\tvar starts_at = text.search(PHONE_NUMBER_START_PATTERN);\n\n\tif (starts_at < 0) {\n\t\treturn;\n\t}\n\n\treturn text\n\t// Trim everything to the left of the phone number\n\t.slice(starts_at)\n\t// Remove trailing non-numerical characters\n\t.replace(AFTER_PHONE_NUMBER_END_PATTERN, '');\n}\n\n// Strips any national prefix (such as 0, 1) present in the number provided.\n// \"Carrier codes\" are only used in Colombia and Brazil,\n// and only when dialing within those countries from a mobile phone to a fixed line number.\nexport function strip_national_prefix_and_carrier_code(number, metadata) {\n\tif (!number || !metadata.nationalPrefixForParsing()) {\n\t\treturn { number: number };\n\t}\n\n\t// In many countries the national prefix\n\t// is not just a constant digit (like `0` in UK)\n\t// but can be different depending on the phone number\n\t// (and can be also absent for some phone numbers).\n\t//\n\t// So `national_prefix_for_parsing` is used when parsing\n\t// a national-prefixed (local) phone number\n\t// into a national significant phone number\n\t// extracting that possible national prefix out of it.\n\t//\n\t// Example `national_prefix_for_parsing` for Australia (AU) is `0|(183[12])`.\n\t// Which means that in Australia the national prefix can be: `0`, `1831`, `1832`.\n\n\t// Attempt to parse the first digits as a national prefix\n\tvar national_prefix_pattern = new RegExp('^(?:' + metadata.nationalPrefixForParsing() + ')');\n\tvar national_prefix_matcher = national_prefix_pattern.exec(number);\n\n\t// If no national prefix is present in the phone number,\n\t// but the national prefix is optional for this country,\n\t// then consider this phone number valid.\n\t//\n\t// Google's reference `libphonenumber` implementation\n\t// wouldn't recognize such phone numbers as valid,\n\t// but I think it would perfectly make sense\n\t// to consider such phone numbers as valid\n\t// because if a national phone number was originally\n\t// formatted without the national prefix\n\t// then it must be parseable back into the original national number.\n\t// In other words, `parse(format(number))`\n\t// must always be equal to `number`.\n\t//\n\tif (!national_prefix_matcher) {\n\t\treturn { number: number };\n\t}\n\n\tvar national_significant_number = void 0;\n\n\t// In more complex cases just `national_prefix_for_parsing` regexp\n\t// is not enough to extract the national number and then strip it\n\t// like `number.slice(national_prefix.length)` because when parsing\n\t// national numbers it's not always clear whether the first digits\n\t// are a national prefix or part of the national significant number.\n\t// For such cases `national_prefix_transform_rule` regexp is present\n\t// which contains \"capturing groups\" that are later used in such\n\t// `national_prefix_transform_rule` to transform the national number\n\t// being parsed into the national significant number.\n\t//\n\t// Example.\n\t// Country: U.S. Virgin Islands (VI).\n\t// Country calling code: +1.\n\t// Leading digits: 340.\n\t// Phone number format: +1 (340) xxx-xxxx.\n\t// National prefix: 1.\n\t// National prefix for parsing: 1|([2-9]\\d{6})$.\n\t// National prefix transform rule: 340$1.\n\t//\n\t// So for input \"13401234567\" \"national prefix for parsing\" regexp\n\t// will return \"1\" and the national significant number will be\n\t// \"13401234567\".slice(\"1\".length) === \"(340) 123-4567\".\n\t//\n\t// And for input \"3401234567\" \"national prefix for parsing\" regexp\n\t// the \"captured group\" will be \"3401234567\" and the national significant\n\t// number will be \"3401234567\".replace(\"340123\", \"340340123\") === \"(340) 3401234567\".\n\t//\n\t// `national_prefix_matcher[captured_groups_count]` means that\n\t// the corresponding \"captured group\" is not empty.\n\t// It can be empty if the regexp either doesn't have any \"capturing groups\"\n\t// or if the \"capturing groups\" are defined as optional.\n\t// Example: \"0?(?:...)?\" for Argentina.\n\t//\n\tvar captured_groups_count = national_prefix_matcher.length - 1;\n\tif (metadata.nationalPrefixTransformRule() && national_prefix_matcher[captured_groups_count]) {\n\t\tnational_significant_number = number.replace(national_prefix_pattern, metadata.nationalPrefixTransformRule());\n\t}\n\t// If it's a simple-enough case then just strip the national prefix from the number.\n\telse {\n\t\t\t// National prefix is the whole substring matched by\n\t\t\t// the `national_prefix_for_parsing` regexp.\n\t\t\tvar national_prefix = national_prefix_matcher[0];\n\t\t\tnational_significant_number = number.slice(national_prefix.length);\n\t\t}\n\n\tvar carrierCode = void 0;\n\tif (captured_groups_count > 0) {\n\t\tcarrierCode = national_prefix_matcher[1];\n\t}\n\n\t// The following is done in `get_country_and_national_number_for_local_number()` instead.\n\t//\n\t// // Verify the parsed national (significant) number for this country\n\t// const national_number_rule = new RegExp(metadata.nationalNumberPattern())\n\t// //\n\t// // If the original number (before stripping national prefix) was viable,\n\t// // and the resultant number is not, then prefer the original phone number.\n\t// // This is because for some countries (e.g. Russia) the same digit could be both\n\t// // a national prefix and a leading digit of a valid national phone number,\n\t// // like `8` is the national prefix for Russia and both\n\t// // `8 800 555 35 35` and `800 555 35 35` are valid numbers.\n\t// if (matchesEntirely(number, national_number_rule) &&\n\t// \t\t!matchesEntirely(national_significant_number, national_number_rule))\n\t// {\n\t// \treturn number\n\t// }\n\n\t// Return the parsed national (significant) number\n\treturn {\n\t\tnumber: national_significant_number,\n\t\tcarrierCode: carrierCode\n\t};\n}\n\nexport function find_country_code(country_calling_code, national_phone_number, metadata) {\n\t// Is always non-empty, because `country_calling_code` is always valid\n\tvar possible_countries = metadata.countryCallingCodes()[country_calling_code];\n\n\t// If there's just one country corresponding to the country code,\n\t// then just return it, without further phone number digits validation.\n\tif (possible_countries.length === 1) {\n\t\treturn possible_countries[0];\n\t}\n\n\treturn _find_country_code(possible_countries, national_phone_number, metadata.metadata);\n}\n\n// Changes `metadata` `country`.\nfunction _find_country_code(possible_countries, national_phone_number, metadata) {\n\tmetadata = new Metadata(metadata);\n\n\tfor (var _iterator = possible_countries, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {\n\t\tvar _ref;\n\n\t\tif (_isArray) {\n\t\t\tif (_i >= _iterator.length) break;\n\t\t\t_ref = _iterator[_i++];\n\t\t} else {\n\t\t\t_i = _iterator.next();\n\t\t\tif (_i.done) break;\n\t\t\t_ref = _i.value;\n\t\t}\n\n\t\tvar country = _ref;\n\n\t\tmetadata.country(country);\n\n\t\t// Leading digits check would be the simplest one\n\t\tif (metadata.leadingDigits()) {\n\t\t\tif (national_phone_number && national_phone_number.search(metadata.leadingDigits()) === 0) {\n\t\t\t\treturn country;\n\t\t\t}\n\t\t}\n\t\t// Else perform full validation with all of those\n\t\t// fixed-line/mobile/etc regular expressions.\n\t\telse if (getNumberType({ phone: national_phone_number, country: country }, undefined, metadata.metadata)) {\n\t\t\t\treturn country;\n\t\t\t}\n\t}\n}\n\n/**\r\n * @param {string} text - Input.\r\n * @return {object} `{ ?number, ?ext }`.\r\n */\nfunction parse_input(text, v2) {\n\t// Parse RFC 3966 phone number URI.\n\tif (text && text.indexOf('tel:') === 0) {\n\t\treturn parseRFC3966(text);\n\t}\n\n\tvar number = extract_formatted_phone_number(text, v2);\n\n\t// If the phone number is not viable, then abort.\n\tif (!number || !isViablePhoneNumber(number)) {\n\t\treturn {};\n\t}\n\n\t// Attempt to parse extension first, since it doesn't require region-specific\n\t// data and we want to have the non-normalised number here.\n\tvar with_extension_stripped = extractExtension(number);\n\tif (with_extension_stripped.ext) {\n\t\treturn with_extension_stripped;\n\t}\n\n\treturn { number: number };\n}\n\n/**\r\n * Creates `parse()` result object.\r\n */\nfunction result(country, national_number, ext) {\n\tvar result = {\n\t\tcountry: country,\n\t\tphone: national_number\n\t};\n\n\tif (ext) {\n\t\tresult.ext = ext;\n\t}\n\n\treturn result;\n}\n\n/**\r\n * Parses a viable phone number.\r\n * Returns `{ country, countryCallingCode, national_number }`.\r\n */\nfunction parse_phone_number(formatted_phone_number, default_country, metadata) {\n\tvar _extractCountryCallin = extractCountryCallingCode(formatted_phone_number, default_country, metadata.metadata),\n\t countryCallingCode = _extractCountryCallin.countryCallingCode,\n\t number = _extractCountryCallin.number;\n\n\tif (!number) {\n\t\treturn { countryCallingCode: countryCallingCode };\n\t}\n\n\tvar country = void 0;\n\n\tif (countryCallingCode) {\n\t\tmetadata.chooseCountryByCountryCallingCode(countryCallingCode);\n\t} else if (default_country) {\n\t\tmetadata.country(default_country);\n\t\tcountry = default_country;\n\t\tcountryCallingCode = getCountryCallingCode(default_country, metadata.metadata);\n\t} else return {};\n\n\tvar _parse_national_numbe = parse_national_number(number, metadata),\n\t national_number = _parse_national_numbe.national_number,\n\t carrier_code = _parse_national_numbe.carrier_code;\n\n\t// Sometimes there are several countries\n\t// corresponding to the same country phone code\n\t// (e.g. NANPA countries all having `1` country phone code).\n\t// Therefore, to reliably determine the exact country,\n\t// national (significant) number should have been parsed first.\n\t//\n\t// When `metadata.json` is generated, all \"ambiguous\" country phone codes\n\t// get their countries populated with the full set of\n\t// \"phone number type\" regular expressions.\n\t//\n\n\n\tvar exactCountry = find_country_code(countryCallingCode, national_number, metadata);\n\tif (exactCountry) {\n\t\tcountry = exactCountry;\n\t\tmetadata.country(country);\n\t}\n\n\treturn {\n\t\tcountry: country,\n\t\tcountryCallingCode: countryCallingCode,\n\t\tnational_number: national_number,\n\t\tcarrierCode: carrier_code\n\t};\n}\n\nfunction parse_national_number(number, metadata) {\n\tvar national_number = parseIncompletePhoneNumber(number);\n\tvar carrier_code = void 0;\n\n\t// Parsing national prefixes and carrier codes\n\t// is only required for local phone numbers\n\t// but some people don't understand that\n\t// and sometimes write international phone numbers\n\t// with national prefixes (or maybe even carrier codes).\n\t// http://ucken.blogspot.ru/2016/03/trunk-prefixes-in-skype4b.html\n\t// Google's original library forgives such mistakes\n\t// and so does this library, because it has been requested:\n\t// https://github.com/catamphetamine/libphonenumber-js/issues/127\n\n\tvar _strip_national_prefi = strip_national_prefix_and_carrier_code(national_number, metadata),\n\t potential_national_number = _strip_national_prefi.number,\n\t carrierCode = _strip_national_prefi.carrierCode;\n\n\t// If metadata has \"possible lengths\" then employ the new algorythm.\n\n\n\tif (metadata.possibleLengths()) {\n\t\t// We require that the NSN remaining after stripping the national prefix and\n\t\t// carrier code be long enough to be a possible length for the region.\n\t\t// Otherwise, we don't do the stripping, since the original number could be\n\t\t// a valid short number.\n\t\tswitch (checkNumberLengthForType(potential_national_number, undefined, metadata)) {\n\t\t\tcase 'TOO_SHORT':\n\t\t\t// case 'IS_POSSIBLE_LOCAL_ONLY':\n\t\t\tcase 'INVALID_LENGTH':\n\t\t\t\tbreak;\n\t\t\tdefault:\n\t\t\t\tnational_number = potential_national_number;\n\t\t\t\tcarrier_code = carrierCode;\n\t\t}\n\t} else {\n\t\t// If the original number (before stripping national prefix) was viable,\n\t\t// and the resultant number is not, then prefer the original phone number.\n\t\t// This is because for some countries (e.g. Russia) the same digit could be both\n\t\t// a national prefix and a leading digit of a valid national phone number,\n\t\t// like `8` is the national prefix for Russia and both\n\t\t// `8 800 555 35 35` and `800 555 35 35` are valid numbers.\n\t\tif (matchesEntirely(national_number, metadata.nationalNumberPattern()) && !matchesEntirely(potential_national_number, metadata.nationalNumberPattern())) {\n\t\t\t// Keep the number without stripping national prefix.\n\t\t} else {\n\t\t\tnational_number = potential_national_number;\n\t\t\tcarrier_code = carrierCode;\n\t\t}\n\t}\n\n\treturn {\n\t\tnational_number: national_number,\n\t\tcarrier_code: carrier_code\n\t};\n}\n\n// Determines the country for a given (possibly incomplete) phone number.\n// export function get_country_from_phone_number(number, metadata)\n// {\n// \treturn parse_phone_number(number, null, metadata).country\n// }\n\n// Parses a formatted phone number\n// and returns `{ countryCallingCode, number }`\n// where `number` is just the \"number\" part\n// which is left after extracting `countryCallingCode`\n// and is not necessarily a \"national (significant) number\"\n// and might as well contain national prefix.\n//\nexport function extractCountryCallingCode(number, country, metadata) {\n\tnumber = parseIncompletePhoneNumber(number);\n\n\tif (!number) {\n\t\treturn {};\n\t}\n\n\t// If this is not an international phone number,\n\t// then don't extract country phone code.\n\tif (number[0] !== '+') {\n\t\t// Convert an \"out-of-country\" dialing phone number\n\t\t// to a proper international phone number.\n\t\tvar numberWithoutIDD = stripIDDPrefix(number, country, metadata);\n\n\t\t// If an IDD prefix was stripped then\n\t\t// convert the number to international one\n\t\t// for subsequent parsing.\n\t\tif (numberWithoutIDD && numberWithoutIDD !== number) {\n\t\t\tnumber = '+' + numberWithoutIDD;\n\t\t} else {\n\t\t\treturn { number: number };\n\t\t}\n\t}\n\n\t// Fast abortion: country codes do not begin with a '0'\n\tif (number[1] === '0') {\n\t\treturn {};\n\t}\n\n\tmetadata = new Metadata(metadata);\n\n\t// The thing with country phone codes\n\t// is that they are orthogonal to each other\n\t// i.e. there's no such country phone code A\n\t// for which country phone code B exists\n\t// where B starts with A.\n\t// Therefore, while scanning digits,\n\t// if a valid country code is found,\n\t// that means that it is the country code.\n\t//\n\tvar i = 2;\n\twhile (i - 1 <= MAX_LENGTH_COUNTRY_CODE && i <= number.length) {\n\t\tvar countryCallingCode = number.slice(1, i);\n\n\t\tif (metadata.countryCallingCodes()[countryCallingCode]) {\n\t\t\treturn {\n\t\t\t\tcountryCallingCode: countryCallingCode,\n\t\t\t\tnumber: number.slice(i)\n\t\t\t};\n\t\t}\n\n\t\ti++;\n\t}\n\n\treturn {};\n}\n//# sourceMappingURL=parse_.js.map","var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\nimport parsePhoneNumber_ from './parsePhoneNumber_';\n\nexport default function parsePhoneNumber() {\n\tvar _normalizeArguments = normalizeArguments(arguments),\n\t text = _normalizeArguments.text,\n\t options = _normalizeArguments.options,\n\t metadata = _normalizeArguments.metadata;\n\n\treturn parsePhoneNumber_(text, options, metadata);\n}\n\nexport function normalizeArguments(args) {\n\tvar _Array$prototype$slic = Array.prototype.slice.call(args),\n\t _Array$prototype$slic2 = _slicedToArray(_Array$prototype$slic, 4),\n\t arg_1 = _Array$prototype$slic2[0],\n\t arg_2 = _Array$prototype$slic2[1],\n\t arg_3 = _Array$prototype$slic2[2],\n\t arg_4 = _Array$prototype$slic2[3];\n\n\tvar text = void 0;\n\tvar options = void 0;\n\tvar metadata = void 0;\n\n\t// If the phone number is passed as a string.\n\t// `parsePhoneNumber('88005553535', ...)`.\n\tif (typeof arg_1 === 'string') {\n\t\ttext = arg_1;\n\t} else throw new TypeError('A text for parsing must be a string.');\n\n\t// If \"default country\" argument is being passed then move it to `options`.\n\t// `parsePhoneNumber('88005553535', 'RU', [options], metadata)`.\n\tif (!arg_2 || typeof arg_2 === 'string') {\n\t\tif (arg_4) {\n\t\t\toptions = arg_3;\n\t\t\tmetadata = arg_4;\n\t\t} else {\n\t\t\toptions = undefined;\n\t\t\tmetadata = arg_3;\n\t\t}\n\n\t\tif (arg_2) {\n\t\t\toptions = _extends({ defaultCountry: arg_2 }, options);\n\t\t}\n\t}\n\t// `defaultCountry` is not passed.\n\t// Example: `parsePhoneNumber('+78005553535', [options], metadata)`.\n\telse if (isObject(arg_2)) {\n\t\t\tif (arg_3) {\n\t\t\t\toptions = arg_2;\n\t\t\t\tmetadata = arg_3;\n\t\t\t} else {\n\t\t\t\tmetadata = arg_2;\n\t\t\t}\n\t\t} else throw new Error('Invalid second argument: ' + arg_2);\n\n\treturn {\n\t\ttext: text,\n\t\toptions: options,\n\t\tmetadata: metadata\n\t};\n}\n\n// Otherwise istanbul would show this as \"branch not covered\".\n/* istanbul ignore next */\nvar isObject = function isObject(_) {\n\treturn (typeof _ === 'undefined' ? 'undefined' : _typeof(_)) === 'object';\n};\n//# sourceMappingURL=parsePhoneNumber.js.map","import Metadata from './metadata';\nimport { matchesEntirely, mergeArrays } from './util';\n\nvar NON_FIXED_LINE_PHONE_TYPES = ['MOBILE', 'PREMIUM_RATE', 'TOLL_FREE', 'SHARED_COST', 'VOIP', 'PERSONAL_NUMBER', 'PAGER', 'UAN', 'VOICEMAIL'];\n\n// Finds out national phone number type (fixed line, mobile, etc)\nexport default function getNumberType(input) {\n\tvar options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\tvar metadata = arguments[2];\n\n\t// When `parse()` returned `{}`\n\t// meaning that the phone number is not a valid one.\n\tif (!input.country) {\n\t\treturn;\n\t}\n\n\tmetadata = new Metadata(metadata);\n\n\tif (!metadata.hasCountry(input.country)) {\n\t\tthrow new Error('Unknown country: ' + input.country);\n\t}\n\n\tvar nationalNumber = options.v2 ? input.nationalNumber : input.phone;\n\tmetadata.country(input.country);\n\n\t// The following is copy-pasted from the original function:\n\t// https://github.com/googlei18n/libphonenumber/blob/3ea547d4fbaa2d0b67588904dfa5d3f2557c27ff/javascript/i18n/phonenumbers/phonenumberutil.js#L2835\n\n\t// Is this national number even valid for this country\n\tif (!matchesEntirely(nationalNumber, metadata.nationalNumberPattern())) {\n\t\treturn;\n\t}\n\n\t// Is it fixed line number\n\tif (is_of_type(nationalNumber, 'FIXED_LINE', metadata)) {\n\t\t// Because duplicate regular expressions are removed\n\t\t// to reduce metadata size, if \"mobile\" pattern is \"\"\n\t\t// then it means it was removed due to being a duplicate of the fixed-line pattern.\n\t\t//\n\t\tif (metadata.type('MOBILE') && metadata.type('MOBILE').pattern() === '') {\n\t\t\treturn 'FIXED_LINE_OR_MOBILE';\n\t\t}\n\n\t\t// v1 metadata.\n\t\t// Legacy.\n\t\t// Deprecated.\n\t\tif (!metadata.type('MOBILE')) {\n\t\t\treturn 'FIXED_LINE_OR_MOBILE';\n\t\t}\n\n\t\t// Check if the number happens to qualify as both fixed line and mobile.\n\t\t// (no such country in the minimal metadata set)\n\t\t/* istanbul ignore if */\n\t\tif (is_of_type(nationalNumber, 'MOBILE', metadata)) {\n\t\t\treturn 'FIXED_LINE_OR_MOBILE';\n\t\t}\n\n\t\treturn 'FIXED_LINE';\n\t}\n\n\tfor (var _iterator = NON_FIXED_LINE_PHONE_TYPES, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {\n\t\tvar _ref;\n\n\t\tif (_isArray) {\n\t\t\tif (_i >= _iterator.length) break;\n\t\t\t_ref = _iterator[_i++];\n\t\t} else {\n\t\t\t_i = _iterator.next();\n\t\t\tif (_i.done) break;\n\t\t\t_ref = _i.value;\n\t\t}\n\n\t\tvar _type = _ref;\n\n\t\tif (is_of_type(nationalNumber, _type, metadata)) {\n\t\t\treturn _type;\n\t\t}\n\t}\n}\n\nexport function is_of_type(nationalNumber, type, metadata) {\n\ttype = metadata.type(type);\n\n\tif (!type || !type.pattern()) {\n\t\treturn false;\n\t}\n\n\t// Check if any possible number lengths are present;\n\t// if so, we use them to avoid checking\n\t// the validation pattern if they don't match.\n\t// If they are absent, this means they match\n\t// the general description, which we have\n\t// already checked before a specific number type.\n\tif (type.possibleLengths() && type.possibleLengths().indexOf(nationalNumber.length) < 0) {\n\t\treturn false;\n\t}\n\n\treturn matchesEntirely(nationalNumber, type.pattern());\n}\n\n// Should only be called for the \"new\" metadata which has \"possible lengths\".\nexport function checkNumberLengthForType(nationalNumber, type, metadata) {\n\tvar type_info = metadata.type(type);\n\n\t// There should always be \"
Vanity numbers (phone numbers using alphabetic digits such as 1-800-SIX-FLAGS are\r\n * not found.\r\n *\r\n *
This class is not thread-safe.\r\n */\n\nvar PhoneNumberMatcher = function () {\n\n /**\r\n * Creates a new instance. See the factory methods in {@link PhoneNumberUtil} on how to obtain a\r\n * new instance.\r\n *\r\n * @param util the phone number util to use\r\n * @param text the character sequence that we will search, null for no text\r\n * @param country the country to assume for phone numbers not written in international format\r\n * (with a leading plus, or with the international dialing prefix of the specified region).\r\n * May be null or \"ZZ\" if only numbers with a leading plus should be\r\n * considered.\r\n * @param leniency the leniency to use when evaluating candidate phone numbers\r\n * @param maxTries the maximum number of invalid numbers to try before giving up on the text.\r\n * This is to cover degenerate cases where the text has a lot of false positives in it. Must\r\n * be {@code >= 0}.\r\n */\n\n\n /** The next index to start searching at. Undefined in {@link State#DONE}. */\n function PhoneNumberMatcher() {\n var text = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var metadata = arguments[2];\n\n _classCallCheck(this, PhoneNumberMatcher);\n\n this.state = 'NOT_READY';\n this.searchIndex = 0;\n this.regExpCache = new RegExpCache(32);\n\n options = _extends({}, options, {\n defaultCountry: options.defaultCountry && isSupportedCountry(options.defaultCountry, metadata) ? options.defaultCountry : undefined,\n leniency: options.leniency || options.extended ? 'POSSIBLE' : 'VALID',\n maxTries: options.maxTries || MAX_SAFE_INTEGER\n });\n\n if (!options.leniency) {\n throw new TypeError('`Leniency` not supplied');\n }\n\n if (options.maxTries < 0) {\n throw new TypeError('`maxTries` not supplied');\n }\n\n this.text = text;\n this.options = options;\n this.metadata = metadata;\n\n /** The degree of validation requested. */\n this.leniency = Leniency[options.leniency];\n\n if (!this.leniency) {\n throw new TypeError('Unknown leniency: ' + options.leniency + '.');\n }\n\n /** The maximum number of retries after matching an invalid number. */\n this.maxTries = options.maxTries;\n\n this.PATTERN = new RegExp(PATTERN, 'ig');\n }\n\n /**\r\n * Attempts to find the next subsequence in the searched sequence on or after {@code searchIndex}\r\n * that represents a phone number. Returns the next match, null if none was found.\r\n *\r\n * @param index the search index to start searching at\r\n * @return the phone number match found, null if none can be found\r\n */\n\n\n // A cache for frequently used country-specific regular expressions. Set to 32 to cover ~2-3\n // countries being used for the same doc with ~10 patterns for each country. Some pages will have\n // a lot more countries in use, but typically fewer numbers for each so expanding the cache for\n // that use-case won't have a lot of benefit.\n\n /** The iteration tristate. */\n\n\n _createClass(PhoneNumberMatcher, [{\n key: 'find',\n value: function find() // (index)\n {\n // // Reset the regular expression.\n // this.PATTERN.lastIndex = index\n\n var matches = void 0;\n while (this.maxTries > 0 && (matches = this.PATTERN.exec(this.text)) !== null) {\n var candidate = matches[0];\n var offset = matches.index;\n\n candidate = parsePreCandidate(candidate);\n\n if (isValidPreCandidate(candidate, offset, this.text)) {\n var match =\n // Try to come up with a valid match given the entire candidate.\n this.parseAndVerify(candidate, offset, this.text)\n // If that failed, try to find an \"inner match\" -\n // there might be a phone number within this candidate.\n || this.extractInnerMatch(candidate, offset, this.text);\n\n if (match) {\n if (this.options.v2) {\n var phoneNumber = new PhoneNumber(match.country, match.phone, this.metadata);\n if (match.ext) {\n phoneNumber.ext = match.ext;\n }\n return {\n startsAt: match.startsAt,\n endsAt: match.endsAt,\n number: phoneNumber\n };\n }\n return match;\n }\n }\n\n this.maxTries--;\n }\n }\n\n /**\r\n * Attempts to extract a match from `candidate`\r\n * if the whole candidate does not qualify as a match.\r\n */\n\n }, {\n key: 'extractInnerMatch',\n value: function extractInnerMatch(candidate, offset, text) {\n for (var _iterator = INNER_MATCHES, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {\n var _ref;\n\n if (_isArray) {\n if (_i >= _iterator.length) break;\n _ref = _iterator[_i++];\n } else {\n _i = _iterator.next();\n if (_i.done) break;\n _ref = _i.value;\n }\n\n var innerMatchPattern = _ref;\n\n var isFirstMatch = true;\n var matches = void 0;\n var possibleInnerMatch = new RegExp(innerMatchPattern, 'g');\n while ((matches = possibleInnerMatch.exec(candidate)) !== null && this.maxTries > 0) {\n if (isFirstMatch) {\n // We should handle any group before this one too.\n var _group = trimAfterFirstMatch(UNWANTED_END_CHAR_PATTERN, candidate.slice(0, matches.index));\n\n var _match = this.parseAndVerify(_group, offset, text);\n if (_match) {\n return _match;\n }\n\n this.maxTries--;\n isFirstMatch = false;\n }\n\n var group = trimAfterFirstMatch(UNWANTED_END_CHAR_PATTERN, matches[1]);\n\n // Java code does `groupMatcher.start(1)` here,\n // but there's no way in javascript to get a group match start index,\n // therefore using the overall match start index `matches.index`.\n var match = this.parseAndVerify(group, offset + matches.index, text);\n if (match) {\n return match;\n }\n\n this.maxTries--;\n }\n }\n }\n\n /**\r\n * Parses a phone number from the `candidate` using `parseNumber` and\r\n * verifies it matches the requested `leniency`. If parsing and verification succeed,\r\n * a corresponding `PhoneNumberMatch` is returned, otherwise this method returns `null`.\r\n *\r\n * @param candidate the candidate match\r\n * @param offset the offset of {@code candidate} within {@link #text}\r\n * @return the parsed and validated phone number match, or null\r\n */\n\n }, {\n key: 'parseAndVerify',\n value: function parseAndVerify(candidate, offset, text) {\n if (!isValidCandidate(candidate, offset, text, this.options.leniency)) {\n return;\n }\n\n var number = parseNumber(candidate, {\n extended: true,\n defaultCountry: this.options.defaultCountry\n }, this.metadata);\n\n if (!number.possible) {\n return;\n }\n\n if (this.leniency(number, candidate, this.metadata, this.regExpCache)) {\n // // We used parseAndKeepRawInput to create this number,\n // // but for now we don't return the extra values parsed.\n // // TODO: stop clearing all values here and switch all users over\n // // to using rawInput() rather than the rawString() of PhoneNumberMatch.\n // number.clearCountryCodeSource()\n // number.clearRawInput()\n // number.clearPreferredDomesticCarrierCode()\n\n var result = {\n startsAt: offset,\n endsAt: offset + candidate.length,\n country: number.country,\n phone: number.phone\n };\n\n if (number.ext) {\n result.ext = number.ext;\n }\n\n return result;\n }\n }\n }, {\n key: 'hasNext',\n value: function hasNext() {\n if (this.state === 'NOT_READY') {\n this.lastMatch = this.find(); // (this.searchIndex)\n\n if (this.lastMatch) {\n // this.searchIndex = this.lastMatch.endsAt\n this.state = 'READY';\n } else {\n this.state = 'DONE';\n }\n }\n\n return this.state === 'READY';\n }\n }, {\n key: 'next',\n value: function next() {\n // Check the state and find the next match as a side-effect if necessary.\n if (!this.hasNext()) {\n throw new Error('No next element');\n }\n\n // Don't retain that memory any longer than necessary.\n var result = this.lastMatch;\n this.lastMatch = null;\n this.state = 'NOT_READY';\n return result;\n }\n }]);\n\n return PhoneNumberMatcher;\n}();\n\nexport default PhoneNumberMatcher;\n//# sourceMappingURL=PhoneNumberMatcher.js.map","var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\nimport isViablePhoneNumber from './isViablePhoneNumber';\nimport _getNumberType from './getNumberType_';\nimport parse from './parse_';\n\n// Finds out national phone number type (fixed line, mobile, etc)\nexport default function getNumberType() {\n\tvar _normalizeArguments = normalizeArguments(arguments),\n\t input = _normalizeArguments.input,\n\t options = _normalizeArguments.options,\n\t metadata = _normalizeArguments.metadata;\n\n\treturn _getNumberType(input, options, metadata);\n}\n\n// Sort out arguments\nexport function normalizeArguments(args) {\n\tvar _Array$prototype$slic = Array.prototype.slice.call(args),\n\t _Array$prototype$slic2 = _slicedToArray(_Array$prototype$slic, 4),\n\t arg_1 = _Array$prototype$slic2[0],\n\t arg_2 = _Array$prototype$slic2[1],\n\t arg_3 = _Array$prototype$slic2[2],\n\t arg_4 = _Array$prototype$slic2[3];\n\n\tvar input = void 0;\n\tvar options = {};\n\tvar metadata = void 0;\n\n\t// If the phone number is passed as a string.\n\t// `getNumberType('88005553535', ...)`.\n\tif (typeof arg_1 === 'string') {\n\t\t// If \"default country\" argument is being passed\n\t\t// then convert it to an `options` object.\n\t\t// `getNumberType('88005553535', 'RU', metadata)`.\n\t\tif ((typeof arg_2 === 'undefined' ? 'undefined' : _typeof(arg_2)) !== 'object') {\n\t\t\tif (arg_4) {\n\t\t\t\toptions = arg_3;\n\t\t\t\tmetadata = arg_4;\n\t\t\t} else {\n\t\t\t\tmetadata = arg_3;\n\t\t\t}\n\n\t\t\t// `parse` extracts phone numbers from raw text,\n\t\t\t// therefore it will cut off all \"garbage\" characters,\n\t\t\t// while this `validate` function needs to verify\n\t\t\t// that the phone number contains no \"garbage\"\n\t\t\t// therefore the explicit `isViablePhoneNumber` check.\n\t\t\tif (isViablePhoneNumber(arg_1)) {\n\t\t\t\tinput = parse(arg_1, { defaultCountry: arg_2 }, metadata);\n\t\t\t} else {\n\t\t\t\tinput = {};\n\t\t\t}\n\t\t}\n\t\t// No \"resrict country\" argument is being passed.\n\t\t// International phone number is passed.\n\t\t// `getNumberType('+78005553535', metadata)`.\n\t\telse {\n\t\t\t\tif (arg_3) {\n\t\t\t\t\toptions = arg_2;\n\t\t\t\t\tmetadata = arg_3;\n\t\t\t\t} else {\n\t\t\t\t\tmetadata = arg_2;\n\t\t\t\t}\n\n\t\t\t\t// `parse` extracts phone numbers from raw text,\n\t\t\t\t// therefore it will cut off all \"garbage\" characters,\n\t\t\t\t// while this `validate` function needs to verify\n\t\t\t\t// that the phone number contains no \"garbage\"\n\t\t\t\t// therefore the explicit `isViablePhoneNumber` check.\n\t\t\t\tif (isViablePhoneNumber(arg_1)) {\n\t\t\t\t\tinput = parse(arg_1, undefined, metadata);\n\t\t\t\t} else {\n\t\t\t\t\tinput = {};\n\t\t\t\t}\n\t\t\t}\n\t}\n\t// If the phone number is passed as a parsed phone number.\n\t// `getNumberType({ phone: '88005553535', country: 'RU' }, ...)`.\n\telse if (is_object(arg_1)) {\n\t\t\tinput = arg_1;\n\n\t\t\tif (arg_3) {\n\t\t\t\toptions = arg_2;\n\t\t\t\tmetadata = arg_3;\n\t\t\t} else {\n\t\t\t\tmetadata = arg_2;\n\t\t\t}\n\t\t} else throw new TypeError('A phone number must either be a string or an object of shape { phone, [country] }.');\n\n\treturn {\n\t\tinput: input,\n\t\toptions: options,\n\t\tmetadata: metadata\n\t};\n}\n\n// Babel transforms `typeof` into some \"branches\"\n// so istanbul will show this as \"branch not covered\".\n/* istanbul ignore next */\nvar is_object = function is_object(_) {\n\treturn (typeof _ === 'undefined' ? 'undefined' : _typeof(_)) === 'object';\n};\n//# sourceMappingURL=getNumberType.js.map","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\n// This is a port of Google Android `libphonenumber`'s\n// `phonenumberutil.js` of December 31th, 2018.\n//\n// https://github.com/googlei18n/libphonenumber/commits/master/javascript/i18n/phonenumbers/phonenumberutil.js\n\nimport { VALID_PUNCTUATION } from './constants';\nimport { matchesEntirely } from './util';\nimport Metadata from './metadata';\nimport { getIDDPrefix } from './IDD';\nimport { formatRFC3966 } from './RFC3966';\n\nvar defaultOptions = {\n\tformatExtension: function formatExtension(formattedNumber, extension, metadata) {\n\t\treturn '' + formattedNumber + metadata.ext() + extension;\n\t}\n\n\t// Formats a phone number\n\t//\n\t// Example use cases:\n\t//\n\t// ```js\n\t// formatNumber('8005553535', 'RU', 'INTERNATIONAL')\n\t// formatNumber('8005553535', 'RU', 'INTERNATIONAL', metadata)\n\t// formatNumber({ phone: '8005553535', country: 'RU' }, 'INTERNATIONAL')\n\t// formatNumber({ phone: '8005553535', country: 'RU' }, 'INTERNATIONAL', metadata)\n\t// formatNumber('+78005553535', 'NATIONAL')\n\t// formatNumber('+78005553535', 'NATIONAL', metadata)\n\t// ```\n\t//\n};export default function formatNumber(input, format, options, metadata) {\n\t// Apply default options.\n\tif (options) {\n\t\toptions = _extends({}, defaultOptions, options);\n\t} else {\n\t\toptions = defaultOptions;\n\t}\n\n\tmetadata = new Metadata(metadata);\n\n\tif (input.country) {\n\t\t// Validate `input.country`.\n\t\tif (!metadata.hasCountry(input.country)) {\n\t\t\tthrow new Error('Unknown country: ' + input.country);\n\t\t}\n\t\tmetadata.country(input.country);\n\t} else if (input.countryCallingCode) {\n\t\tmetadata.chooseCountryByCountryCallingCode(input.countryCallingCode);\n\t} else return input.phone || '';\n\n\tvar countryCallingCode = metadata.countryCallingCode();\n\n\tvar nationalNumber = options.v2 ? input.nationalNumber : input.phone;\n\n\t// This variable should have been declared inside `case`s\n\t// but Babel has a bug and it says \"duplicate variable declaration\".\n\tvar number = void 0;\n\n\tswitch (format) {\n\t\tcase 'NATIONAL':\n\t\t\t// Legacy argument support.\n\t\t\t// (`{ country: ..., phone: '' }`)\n\t\t\tif (!nationalNumber) {\n\t\t\t\treturn '';\n\t\t\t}\n\t\t\tnumber = format_national_number(nationalNumber, 'NATIONAL', metadata);\n\t\t\treturn addExtension(number, input.ext, metadata, options.formatExtension);\n\n\t\tcase 'INTERNATIONAL':\n\t\t\t// Legacy argument support.\n\t\t\t// (`{ country: ..., phone: '' }`)\n\t\t\tif (!nationalNumber) {\n\t\t\t\treturn '+' + countryCallingCode;\n\t\t\t}\n\t\t\tnumber = format_national_number(nationalNumber, 'INTERNATIONAL', metadata);\n\t\t\tnumber = '+' + countryCallingCode + ' ' + number;\n\t\t\treturn addExtension(number, input.ext, metadata, options.formatExtension);\n\n\t\tcase 'E.164':\n\t\t\t// `E.164` doesn't define \"phone number extensions\".\n\t\t\treturn '+' + countryCallingCode + nationalNumber;\n\n\t\tcase 'RFC3966':\n\t\t\treturn formatRFC3966({\n\t\t\t\tnumber: '+' + countryCallingCode + nationalNumber,\n\t\t\t\text: input.ext\n\t\t\t});\n\n\t\tcase 'IDD':\n\t\t\tif (!options.fromCountry) {\n\t\t\t\treturn;\n\t\t\t\t// throw new Error('`fromCountry` option not passed for IDD-prefixed formatting.')\n\t\t\t}\n\t\t\tvar IDDPrefix = getIDDPrefix(options.fromCountry, metadata.metadata);\n\t\t\tif (!IDDPrefix) {\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tif (options.humanReadable) {\n\t\t\t\tvar formattedForSameCountryCallingCode = countryCallingCode && formatIDDSameCountryCallingCodeNumber(nationalNumber, metadata.countryCallingCode(), options.fromCountry, metadata);\n\t\t\t\tif (formattedForSameCountryCallingCode) {\n\t\t\t\t\tnumber = formattedForSameCountryCallingCode;\n\t\t\t\t} else {\n\t\t\t\t\tnumber = IDDPrefix + ' ' + countryCallingCode + ' ' + format_national_number(nationalNumber, 'INTERNATIONAL', metadata);\n\t\t\t\t}\n\t\t\t\treturn addExtension(number, input.ext, metadata, options.formatExtension);\n\t\t\t}\n\t\t\treturn '' + IDDPrefix + countryCallingCode + nationalNumber;\n\n\t\tdefault:\n\t\t\tthrow new Error('Unknown \"format\" argument passed to \"formatNumber()\": \"' + format + '\"');\n\t}\n}\n\n// This was originally set to $1 but there are some countries for which the\n// first group is not used in the national pattern (e.g. Argentina) so the $1\n// group does not match correctly. Therefore, we use \\d, so that the first\n// group actually used in the pattern will be matched.\nexport var FIRST_GROUP_PATTERN = /(\\$\\d)/;\n\nexport function format_national_number_using_format(number, format, useInternationalFormat, includeNationalPrefixForNationalFormat, metadata) {\n\tvar formattedNumber = number.replace(new RegExp(format.pattern()), useInternationalFormat ? format.internationalFormat() : format.nationalPrefixFormattingRule() && (!format.nationalPrefixIsOptionalWhenFormatting() || includeNationalPrefixForNationalFormat) ? format.format().replace(FIRST_GROUP_PATTERN, format.nationalPrefixFormattingRule()) : format.format());\n\n\tif (useInternationalFormat) {\n\t\treturn changeInternationalFormatStyle(formattedNumber);\n\t}\n\n\treturn formattedNumber;\n}\n\nfunction format_national_number(number, format_as, metadata) {\n\tvar format = choose_format_for_number(metadata.formats(), number);\n\tif (!format) {\n\t\treturn number;\n\t}\n\treturn format_national_number_using_format(number, format, format_as === 'INTERNATIONAL', true, metadata);\n}\n\nexport function choose_format_for_number(available_formats, national_number) {\n\tfor (var _iterator = available_formats, _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {\n\t\tvar _ref;\n\n\t\tif (_isArray) {\n\t\t\tif (_i >= _iterator.length) break;\n\t\t\t_ref = _iterator[_i++];\n\t\t} else {\n\t\t\t_i = _iterator.next();\n\t\t\tif (_i.done) break;\n\t\t\t_ref = _i.value;\n\t\t}\n\n\t\tvar format = _ref;\n\n\t\t// Validate leading digits\n\t\tif (format.leadingDigitsPatterns().length > 0) {\n\t\t\t// The last leading_digits_pattern is used here, as it is the most detailed\n\t\t\tvar last_leading_digits_pattern = format.leadingDigitsPatterns()[format.leadingDigitsPatterns().length - 1];\n\n\t\t\t// If leading digits don't match then move on to the next phone number format\n\t\t\tif (national_number.search(last_leading_digits_pattern) !== 0) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\n\t\t// Check that the national number matches the phone number format regular expression\n\t\tif (matchesEntirely(national_number, format.pattern())) {\n\t\t\treturn format;\n\t\t}\n\t}\n}\n\n// Removes brackets and replaces dashes with spaces.\n//\n// E.g. \"(999) 111-22-33\" -> \"999 111 22 33\"\n//\n// For some reason Google's metadata contains ` \r\n * Warning: This level might result in lower coverage especially for regions outside of country\r\n * code \"+1\". If you are not sure about which level to use, email the discussion group\r\n * libphonenumber-discuss@googlegroups.com.\r\n */\n EXACT_GROUPING: function EXACT_GROUPING(number, candidate, metadata, regExpCache) {\n var candidateString = candidate.toString();\n\n if (!isValidNumber(number, undefined, metadata) || !containsOnlyValidXChars(number, candidateString, metadata) || containsMoreThanOneSlashInNationalNumber(number, candidateString) || !isNationalPrefixPresentIfRequired(number, metadata)) {\n return false;\n }\n\n return checkNumberGroupingIsValid(number, candidate, metadata, allNumberGroupsAreExactlyPresent, regExpCache);\n }\n};\n\nfunction containsOnlyValidXChars(number, candidate, metadata) {\n // The characters 'x' and 'X' can be (1) a carrier code, in which case they always precede the\n // national significant number or (2) an extension sign, in which case they always precede the\n // extension number. We assume a carrier code is more than 1 digit, so the first case has to\n // have more than 1 consecutive 'x' or 'X', whereas the second case can only have exactly 1 'x'\n // or 'X'. We ignore the character if it appears as the last character of the string.\n for (var index = 0; index < candidate.length - 1; index++) {\n var charAtIndex = candidate.charAt(index);\n\n if (charAtIndex === 'x' || charAtIndex === 'X') {\n var charAtNextIndex = candidate.charAt(index + 1);\n\n if (charAtNextIndex === 'x' || charAtNextIndex === 'X') {\n // This is the carrier code case, in which the 'X's always precede the national\n // significant number.\n index++;\n if (util.isNumberMatch(number, candidate.substring(index)) != MatchType.NSN_MATCH) {\n return false;\n }\n // This is the extension sign case, in which the 'x' or 'X' should always precede the\n // extension number.\n } else if (parseDigits(candidate.substring(index)) !== number.ext) {\n return false;\n }\n }\n }\n\n return true;\n}\n\nfunction isNationalPrefixPresentIfRequired(number, _metadata) {\n // First, check how we deduced the country code. If it was written in international format, then\n // the national prefix is not required.\n if (number.getCountryCodeSource() != 'FROM_DEFAULT_COUNTRY') {\n return true;\n }\n\n var phoneNumberRegion = util.getRegionCodeForCountryCode(number.getCountryCode());\n\n var metadata = util.getMetadataForRegion(phoneNumberRegion);\n if (metadata == null) {\n return true;\n }\n\n // Check if a national prefix should be present when formatting this number.\n var nationalNumber = util.getNationalSignificantNumber(number);\n var formatRule = util.chooseFormattingPatternForNumber(metadata.numberFormats(), nationalNumber);\n\n // To do this, we check that a national prefix formatting rule was present\n // and that it wasn't just the first-group symbol ($1) with punctuation.\n if (formatRule && formatRule.getNationalPrefixFormattingRule().length > 0) {\n if (formatRule.getNationalPrefixOptionalWhenFormatting()) {\n // The national-prefix is optional in these cases, so we don't need to check if it was\n // present.\n return true;\n }\n\n if (PhoneNumberUtil.formattingRuleHasFirstGroupOnly(formatRule.getNationalPrefixFormattingRule())) {\n // National Prefix not needed for this number.\n return true;\n }\n\n // Normalize the remainder.\n var rawInputCopy = PhoneNumberUtil.normalizeDigitsOnly(number.getRawInput());\n\n // Check if we found a national prefix and/or carrier code at the start of the raw input, and\n // return the result.\n return util.maybeStripNationalPrefixAndCarrierCode(rawInputCopy, metadata, null);\n }\n\n return true;\n}\n\nexport function containsMoreThanOneSlashInNationalNumber(number, candidate) {\n var firstSlashInBodyIndex = candidate.indexOf('/');\n if (firstSlashInBodyIndex < 0) {\n // No slashes, this is okay.\n return false;\n }\n\n // Now look for a second one.\n var secondSlashInBodyIndex = candidate.indexOf('/', firstSlashInBodyIndex + 1);\n if (secondSlashInBodyIndex < 0) {\n // Only one slash, this is okay.\n return false;\n }\n\n // If the first slash is after the country calling code, this is permitted.\n var candidateHasCountryCode = number.getCountryCodeSource() === CountryCodeSource.FROM_NUMBER_WITH_PLUS_SIGN || number.getCountryCodeSource() === CountryCodeSource.FROM_NUMBER_WITHOUT_PLUS_SIGN;\n\n if (candidateHasCountryCode && PhoneNumberUtil.normalizeDigitsOnly(candidate.substring(0, firstSlashInBodyIndex)) === String(number.getCountryCode())) {\n // Any more slashes and this is illegal.\n return candidate.slice(secondSlashInBodyIndex + 1).indexOf('/') >= 0;\n }\n\n return true;\n}\n\nfunction checkNumberGroupingIsValid(number, candidate, metadata, checkGroups, regExpCache) {\n var normalizedCandidate = normalizeDigits(candidate, true /* keep non-digits */);\n var formattedNumberGroups = getNationalNumberGroups(metadata, number, null);\n if (checkGroups(metadata, number, normalizedCandidate, formattedNumberGroups)) {\n return true;\n }\n\n // If this didn't pass, see if there are any alternate formats that match, and try them instead.\n var alternateFormats = MetadataManager.getAlternateFormatsForCountry(number.getCountryCode());\n var nationalSignificantNumber = util.getNationalSignificantNumber(number);\n\n if (alternateFormats) {\n for (var _iterator = alternateFormats.numberFormats(), _isArray = Array.isArray(_iterator), _i = 0, _iterator = _isArray ? _iterator : _iterator[Symbol.iterator]();;) {\n var _ref;\n\n if (_isArray) {\n if (_i >= _iterator.length) break;\n _ref = _iterator[_i++];\n } else {\n _i = _iterator.next();\n if (_i.done) break;\n _ref = _i.value;\n }\n\n var alternateFormat = _ref;\n\n if (alternateFormat.leadingDigitsPatterns().length > 0) {\n // There is only one leading digits pattern for alternate formats.\n var leadingDigitsRegExp = regExpCache.getPatternForRegExp('^' + alternateFormat.leadingDigitsPatterns()[0]);\n if (!leadingDigitsRegExp.test(nationalSignificantNumber)) {\n // Leading digits don't match; try another one.\n continue;\n }\n }\n formattedNumberGroups = getNationalNumberGroups(metadata, number, alternateFormat);\n if (checkGroups(metadata, number, normalizedCandidate, formattedNumberGroups)) {\n return true;\n }\n }\n }\n\n return false;\n}\n\n/**\r\n * Helper method to get the national-number part of a number, formatted without any national\r\n * prefix, and return it as a set of digit blocks that would be formatted together following\r\n * standard formatting rules.\r\n */\nfunction getNationalNumberGroups(metadata, number, formattingPattern) {\n if (formattingPattern) {\n // We format the NSN only, and split that according to the separator.\n var nationalSignificantNumber = util.getNationalSignificantNumber(number);\n return util.formatNsnUsingPattern(nationalSignificantNumber, formattingPattern, 'RFC3966', metadata).split('-');\n }\n\n // This will be in the format +CC-DG1-DG2-DGX;ext=EXT where DG1..DGX represents groups of digits.\n var rfc3966Format = formatNumber(number, 'RFC3966', metadata);\n\n // We remove the extension part from the formatted string before splitting it into different\n // groups.\n var endIndex = rfc3966Format.indexOf(';');\n if (endIndex < 0) {\n endIndex = rfc3966Format.length;\n }\n\n // The country-code will have a '-' following it.\n var startIndex = rfc3966Format.indexOf('-') + 1;\n return rfc3966Format.slice(startIndex, endIndex).split('-');\n}\n\nfunction allNumberGroupsAreExactlyPresent(metadata, number, normalizedCandidate, formattedNumberGroups) {\n var candidateGroups = normalizedCandidate.split(NON_DIGITS_PATTERN);\n\n // Set this to the last group, skipping it if the number has an extension.\n var candidateNumberGroupIndex = number.hasExtension() ? candidateGroups.length - 2 : candidateGroups.length - 1;\n\n // First we check if the national significant number is formatted as a block.\n // We use contains and not equals, since the national significant number may be present with\n // a prefix such as a national number prefix, or the country code itself.\n if (candidateGroups.length == 1 || candidateGroups[candidateNumberGroupIndex].contains(util.getNationalSignificantNumber(number))) {\n return true;\n }\n\n // Starting from the end, go through in reverse, excluding the first group, and check the\n // candidate and number groups are the same.\n var formattedNumberGroupIndex = formattedNumberGroups.length - 1;\n while (formattedNumberGroupIndex > 0 && candidateNumberGroupIndex >= 0) {\n if (candidateGroups[candidateNumberGroupIndex] !== formattedNumberGroups[formattedNumberGroupIndex]) {\n return false;\n }\n formattedNumberGroupIndex--;\n candidateNumberGroupIndex--;\n }\n\n // Now check the first group. There may be a national prefix at the start, so we only check\n // that the candidate group ends with the formatted number group.\n return candidateNumberGroupIndex >= 0 && endsWith(candidateGroups[candidateNumberGroupIndex], formattedNumberGroups[0]);\n}\n\nfunction allNumberGroupsRemainGrouped(metadata, number, normalizedCandidate, formattedNumberGroups) {\n var fromIndex = 0;\n if (number.getCountryCodeSource() !== CountryCodeSource.FROM_DEFAULT_COUNTRY) {\n // First skip the country code if the normalized candidate contained it.\n var countryCode = String(number.getCountryCode());\n fromIndex = normalizedCandidate.indexOf(countryCode) + countryCode.length();\n }\n\n // Check each group of consecutive digits are not broken into separate groupings in the\n // {@code normalizedCandidate} string.\n for (var i = 0; i < formattedNumberGroups.length; i++) {\n // Fails if the substring of {@code normalizedCandidate} starting from {@code fromIndex}\n // doesn't contain the consecutive digits in formattedNumberGroups[i].\n fromIndex = normalizedCandidate.indexOf(formattedNumberGroups[i], fromIndex);\n if (fromIndex < 0) {\n return false;\n }\n // Moves {@code fromIndex} forward.\n fromIndex += formattedNumberGroups[i].length();\n if (i == 0 && fromIndex < normalizedCandidate.length()) {\n // We are at the position right after the NDC. We get the region used for formatting\n // information based on the country code in the phone number, rather than the number itself,\n // as we do not need to distinguish between different countries with the same country\n // calling code and this is faster.\n var region = util.getRegionCodeForCountryCode(number.getCountryCode());\n if (util.getNddPrefixForRegion(region, true) != null && Character.isDigit(normalizedCandidate.charAt(fromIndex))) {\n // This means there is no formatting symbol after the NDC. In this case, we only\n // accept the number if there is no formatting symbol at all in the number, except\n // for extensions. This is only important for countries with national prefixes.\n var nationalSignificantNumber = util.getNationalSignificantNumber(number);\n return startsWith(normalizedCandidate.slice(fromIndex - formattedNumberGroups[i].length), nationalSignificantNumber);\n }\n }\n }\n\n // The check here makes sure that we haven't mistakenly already used the extension to\n // match the last group of the subscriber number. Note the extension cannot have\n // formatting in-between digits.\n return normalizedCandidate.slice(fromIndex).contains(number.getExtension());\n}\n//# sourceMappingURL=Leniency.js.map","var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\n// https://medium.com/dsinjs/implementing-lru-cache-in-javascript-94ba6755cda9\n\nvar Node = function Node(key, value) {\n var next = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n var prev = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n _classCallCheck(this, Node);\n\n this.key = key;\n this.value = value;\n this.next = next;\n this.prev = prev;\n};\n\nvar LRUCache = function () {\n //set default limit of 10 if limit is not passed.\n function LRUCache() {\n var limit = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 10;\n\n _classCallCheck(this, LRUCache);\n\n this.size = 0;\n this.limit = limit;\n this.head = null;\n this.tail = null;\n this.cache = {};\n }\n\n // Write Node to head of LinkedList\n // update cache with Node key and Node reference\n\n\n _createClass(LRUCache, [{\n key: \"put\",\n value: function put(key, value) {\n this.ensureLimit();\n\n if (!this.head) {\n this.head = this.tail = new Node(key, value);\n } else {\n var node = new Node(key, value, this.head);\n this.head.prev = node;\n this.head = node;\n }\n\n //Update the cache map\n this.cache[key] = this.head;\n this.size++;\n }\n\n // Read from cache map and make that node as new Head of LinkedList\n\n }, {\n key: \"get\",\n value: function get(key) {\n if (this.cache[key]) {\n var value = this.cache[key].value;\n\n // node removed from it's position and cache\n this.remove(key);\n // write node again to the head of LinkedList to make it most recently used\n this.put(key, value);\n\n return value;\n }\n\n console.log(\"Item not available in cache for key \" + key);\n }\n }, {\n key: \"ensureLimit\",\n value: function ensureLimit() {\n if (this.size === this.limit) {\n this.remove(this.tail.key);\n }\n }\n }, {\n key: \"remove\",\n value: function remove(key) {\n var node = this.cache[key];\n\n if (node.prev !== null) {\n node.prev.next = node.next;\n } else {\n this.head = node.next;\n }\n\n if (node.next !== null) {\n node.next.prev = node.prev;\n } else {\n this.tail = node.prev;\n }\n\n delete this.cache[key];\n this.size--;\n }\n }, {\n key: \"clear\",\n value: function clear() {\n this.head = null;\n this.tail = null;\n this.size = 0;\n this.cache = {};\n }\n\n // // Invokes the callback function with every node of the chain and the index of the node.\n // forEach(fn) {\n // let node = this.head;\n // let counter = 0;\n // while (node) {\n // fn(node, counter);\n // node = node.next;\n // counter++;\n // }\n // }\n\n // // To iterate over LRU with a 'for...of' loop\n // *[Symbol.iterator]() {\n // let node = this.head;\n // while (node) {\n // yield node;\n // node = node.next;\n // }\n // }\n\n }]);\n\n return LRUCache;\n}();\n\nexport default LRUCache;\n//# sourceMappingURL=LRUCache.js.map","var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nimport LRUCache from './LRUCache';\n\n// A cache for frequently used country-specific regular expressions. Set to 32 to cover ~2-3\n// countries being used for the same doc with ~10 patterns for each country. Some pages will have\n// a lot more countries in use, but typically fewer numbers for each so expanding the cache for\n// that use-case won't have a lot of benefit.\n\nvar RegExpCache = function () {\n\tfunction RegExpCache(size) {\n\t\t_classCallCheck(this, RegExpCache);\n\n\t\tthis.cache = new LRUCache(size);\n\t}\n\n\t_createClass(RegExpCache, [{\n\t\tkey: 'getPatternForRegExp',\n\t\tvalue: function getPatternForRegExp(pattern) {\n\t\t\tvar regExp = this.cache.get(pattern);\n\t\t\tif (!regExp) {\n\t\t\t\tregExp = new RegExp('^' + pattern);\n\t\t\t\tthis.cache.put(pattern, regExp);\n\t\t\t}\n\t\t\treturn regExp;\n\t\t}\n\t}]);\n\n\treturn RegExpCache;\n}();\n\nexport default RegExpCache;\n//# sourceMappingURL=RegExpCache.js.map","import PhoneNumberMatcher from './PhoneNumberMatcher';\n\nexport default function findNumbers(text, options, metadata) {\n\tvar matcher = new PhoneNumberMatcher(text, options, metadata);\n\tvar results = [];\n\twhile (matcher.hasNext()) {\n\t\tresults.push(matcher.next());\n\t}\n\treturn results;\n}\n//# sourceMappingURL=findNumbers_.js.map","import _findNumbers from './findNumbers_';\nimport { normalizeArguments } from './parsePhoneNumber';\n\nexport default function findNumbers() {\n\tvar _normalizeArguments = normalizeArguments(arguments),\n\t text = _normalizeArguments.text,\n\t options = _normalizeArguments.options,\n\t metadata = _normalizeArguments.metadata;\n\n\treturn _findNumbers(text, options, metadata);\n}\n//# sourceMappingURL=findNumbers.js.map","import isViablePhoneNumber from './isViablePhoneNumber';\nimport parseNumber from './parse_';\nimport _isValidNumberForRegion from './isValidNumberForRegion_';\n\nexport default function isValidNumberForRegion(number, country, metadata) {\n\tif (typeof number !== 'string') {\n\t\tthrow new TypeError('number must be a string');\n\t}\n\n\tif (typeof country !== 'string') {\n\t\tthrow new TypeError('country must be a string');\n\t}\n\n\t// `parse` extracts phone numbers from raw text,\n\t// therefore it will cut off all \"garbage\" characters,\n\t// while this `validate` function needs to verify\n\t// that the phone number contains no \"garbage\"\n\t// therefore the explicit `isViablePhoneNumber` check.\n\tvar input = void 0;\n\tif (isViablePhoneNumber(number)) {\n\t\tinput = parseNumber(number, { defaultCountry: country }, metadata);\n\t} else {\n\t\tinput = {};\n\t}\n\n\treturn _isValidNumberForRegion(input, country, undefined, metadata);\n}\n//# sourceMappingURL=isValidNumberForRegion.js.map","import { normalizeArguments } from './getNumberType';\nimport _isPossibleNumber from './isPossibleNumber_';\n\n/**\r\n * Checks if a given phone number is possible.\r\n * Which means it only checks phone number length\r\n * and doesn't test any regular expressions.\r\n *\r\n * Examples:\r\n *\r\n * ```js\r\n * isPossibleNumber('+78005553535', metadata)\r\n * isPossibleNumber('8005553535', 'RU', metadata)\r\n * isPossibleNumber('88005553535', 'RU', metadata)\r\n * isPossibleNumber({ phone: '8005553535', country: 'RU' }, metadata)\r\n * ```\r\n */\nexport default function isPossibleNumber() {\n var _normalizeArguments = normalizeArguments(arguments),\n input = _normalizeArguments.input,\n options = _normalizeArguments.options,\n metadata = _normalizeArguments.metadata;\n\n return _isPossibleNumber(input, options, metadata);\n}\n//# sourceMappingURL=isPossibleNumber.js.map","import PhoneNumber from './PhoneNumber';\n\nexport default function getExampleNumber(country, examples, metadata) {\n\tif (examples[country]) {\n\t\treturn new PhoneNumber(country, examples[country], metadata);\n\t}\n}\n//# sourceMappingURL=getExampleNumber.js.map","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nimport parsePhoneNumber from './parsePhoneNumber_';\nimport ParseError from './ParseError';\nimport { isSupportedCountry } from './metadata';\n\nexport default function parsePhoneNumberFromString(text, options, metadata) {\n\t// Validate `defaultCountry`.\n\tif (options && options.defaultCountry && !isSupportedCountry(options.defaultCountry, metadata)) {\n\t\toptions = _extends({}, options, {\n\t\t\tdefaultCountry: undefined\n\t\t});\n\t}\n\t// Parse phone number.\n\ttry {\n\t\treturn parsePhoneNumber(text, options, metadata);\n\t} catch (error) {\n\t\t/* istanbul ignore else */\n\t\tif (error instanceof ParseError) {\n\t\t\t//\n\t\t} else {\n\t\t\tthrow error;\n\t\t}\n\t}\n}\n//# sourceMappingURL=parsePhoneNumberFromString_.js.map","import { normalizeArguments } from './parsePhoneNumber';\nimport parsePhoneNumberFromString_ from './parsePhoneNumberFromString_';\n\nexport default function parsePhoneNumberFromString() {\n\tvar _normalizeArguments = normalizeArguments(arguments),\n\t text = _normalizeArguments.text,\n\t options = _normalizeArguments.options,\n\t metadata = _normalizeArguments.metadata;\n\n\treturn parsePhoneNumberFromString_(text, options, metadata);\n}\n//# sourceMappingURL=parsePhoneNumberFromString.js.map","// This file is a workaround for a bug in web browsers' \"native\"\n// ES6 importing system which is uncapable of importing \"*.json\" files.\n// https://github.com/catamphetamine/libphonenumber-js/issues/239\nexport default {\"version\":\"1.7.28\",\"country_calling_codes\":{\"1\":[\"US\",\"AG\",\"AI\",\"AS\",\"BB\",\"BM\",\"BS\",\"CA\",\"DM\",\"DO\",\"GD\",\"GU\",\"JM\",\"KN\",\"KY\",\"LC\",\"MP\",\"MS\",\"PR\",\"SX\",\"TC\",\"TT\",\"VC\",\"VG\",\"VI\"],\"7\":[\"RU\",\"KZ\"],\"20\":[\"EG\"],\"27\":[\"ZA\"],\"30\":[\"GR\"],\"31\":[\"NL\"],\"32\":[\"BE\"],\"33\":[\"FR\"],\"34\":[\"ES\"],\"36\":[\"HU\"],\"39\":[\"IT\",\"VA\"],\"40\":[\"RO\"],\"41\":[\"CH\"],\"43\":[\"AT\"],\"44\":[\"GB\",\"GG\",\"IM\",\"JE\"],\"45\":[\"DK\"],\"46\":[\"SE\"],\"47\":[\"NO\",\"SJ\"],\"48\":[\"PL\"],\"49\":[\"DE\"],\"51\":[\"PE\"],\"52\":[\"MX\"],\"53\":[\"CU\"],\"54\":[\"AR\"],\"55\":[\"BR\"],\"56\":[\"CL\"],\"57\":[\"CO\"],\"58\":[\"VE\"],\"60\":[\"MY\"],\"61\":[\"AU\",\"CC\",\"CX\"],\"62\":[\"ID\"],\"63\":[\"PH\"],\"64\":[\"NZ\"],\"65\":[\"SG\"],\"66\":[\"TH\"],\"81\":[\"JP\"],\"82\":[\"KR\"],\"84\":[\"VN\"],\"86\":[\"CN\"],\"90\":[\"TR\"],\"91\":[\"IN\"],\"92\":[\"PK\"],\"93\":[\"AF\"],\"94\":[\"LK\"],\"95\":[\"MM\"],\"98\":[\"IR\"],\"211\":[\"SS\"],\"212\":[\"MA\",\"EH\"],\"213\":[\"DZ\"],\"216\":[\"TN\"],\"218\":[\"LY\"],\"220\":[\"GM\"],\"221\":[\"SN\"],\"222\":[\"MR\"],\"223\":[\"ML\"],\"224\":[\"GN\"],\"225\":[\"CI\"],\"226\":[\"BF\"],\"227\":[\"NE\"],\"228\":[\"TG\"],\"229\":[\"BJ\"],\"230\":[\"MU\"],\"231\":[\"LR\"],\"232\":[\"SL\"],\"233\":[\"GH\"],\"234\":[\"NG\"],\"235\":[\"TD\"],\"236\":[\"CF\"],\"237\":[\"CM\"],\"238\":[\"CV\"],\"239\":[\"ST\"],\"240\":[\"GQ\"],\"241\":[\"GA\"],\"242\":[\"CG\"],\"243\":[\"CD\"],\"244\":[\"AO\"],\"245\":[\"GW\"],\"246\":[\"IO\"],\"247\":[\"AC\"],\"248\":[\"SC\"],\"249\":[\"SD\"],\"250\":[\"RW\"],\"251\":[\"ET\"],\"252\":[\"SO\"],\"253\":[\"DJ\"],\"254\":[\"KE\"],\"255\":[\"TZ\"],\"256\":[\"UG\"],\"257\":[\"BI\"],\"258\":[\"MZ\"],\"260\":[\"ZM\"],\"261\":[\"MG\"],\"262\":[\"RE\",\"YT\"],\"263\":[\"ZW\"],\"264\":[\"NA\"],\"265\":[\"MW\"],\"266\":[\"LS\"],\"267\":[\"BW\"],\"268\":[\"SZ\"],\"269\":[\"KM\"],\"290\":[\"SH\",\"TA\"],\"291\":[\"ER\"],\"297\":[\"AW\"],\"298\":[\"FO\"],\"299\":[\"GL\"],\"350\":[\"GI\"],\"351\":[\"PT\"],\"352\":[\"LU\"],\"353\":[\"IE\"],\"354\":[\"IS\"],\"355\":[\"AL\"],\"356\":[\"MT\"],\"357\":[\"CY\"],\"358\":[\"FI\",\"AX\"],\"359\":[\"BG\"],\"370\":[\"LT\"],\"371\":[\"LV\"],\"372\":[\"EE\"],\"373\":[\"MD\"],\"374\":[\"AM\"],\"375\":[\"BY\"],\"376\":[\"AD\"],\"377\":[\"MC\"],\"378\":[\"SM\"],\"380\":[\"UA\"],\"381\":[\"RS\"],\"382\":[\"ME\"],\"383\":[\"XK\"],\"385\":[\"HR\"],\"386\":[\"SI\"],\"387\":[\"BA\"],\"389\":[\"MK\"],\"420\":[\"CZ\"],\"421\":[\"SK\"],\"423\":[\"LI\"],\"500\":[\"FK\"],\"501\":[\"BZ\"],\"502\":[\"GT\"],\"503\":[\"SV\"],\"504\":[\"HN\"],\"505\":[\"NI\"],\"506\":[\"CR\"],\"507\":[\"PA\"],\"508\":[\"PM\"],\"509\":[\"HT\"],\"590\":[\"GP\",\"BL\",\"MF\"],\"591\":[\"BO\"],\"592\":[\"GY\"],\"593\":[\"EC\"],\"594\":[\"GF\"],\"595\":[\"PY\"],\"596\":[\"MQ\"],\"597\":[\"SR\"],\"598\":[\"UY\"],\"599\":[\"CW\",\"BQ\"],\"670\":[\"TL\"],\"672\":[\"NF\"],\"673\":[\"BN\"],\"674\":[\"NR\"],\"675\":[\"PG\"],\"676\":[\"TO\"],\"677\":[\"SB\"],\"678\":[\"VU\"],\"679\":[\"FJ\"],\"680\":[\"PW\"],\"681\":[\"WF\"],\"682\":[\"CK\"],\"683\":[\"NU\"],\"685\":[\"WS\"],\"686\":[\"KI\"],\"687\":[\"NC\"],\"688\":[\"TV\"],\"689\":[\"PF\"],\"690\":[\"TK\"],\"691\":[\"FM\"],\"692\":[\"MH\"],\"800\":[\"001\"],\"808\":[\"001\"],\"850\":[\"KP\"],\"852\":[\"HK\"],\"853\":[\"MO\"],\"855\":[\"KH\"],\"856\":[\"LA\"],\"870\":[\"001\"],\"878\":[\"001\"],\"880\":[\"BD\"],\"881\":[\"001\"],\"882\":[\"001\"],\"883\":[\"001\"],\"886\":[\"TW\"],\"888\":[\"001\"],\"960\":[\"MV\"],\"961\":[\"LB\"],\"962\":[\"JO\"],\"963\":[\"SY\"],\"964\":[\"IQ\"],\"965\":[\"KW\"],\"966\":[\"SA\"],\"967\":[\"YE\"],\"968\":[\"OM\"],\"970\":[\"PS\"],\"971\":[\"AE\"],\"972\":[\"IL\"],\"973\":[\"BH\"],\"974\":[\"QA\"],\"975\":[\"BT\"],\"976\":[\"MN\"],\"977\":[\"NP\"],\"979\":[\"001\"],\"992\":[\"TJ\"],\"993\":[\"TM\"],\"994\":[\"AZ\"],\"995\":[\"GE\"],\"996\":[\"KG\"],\"998\":[\"UZ\"]},\"countries\":{\"AC\":[\"247\",\"00\",\"(?:[01589]\\\\d|[46])\\\\d{4}\",[5,6]],\"AD\":[\"376\",\"00\",\"(?:1|6\\\\d)\\\\d{7}|[136-9]\\\\d{5}\",[6,8,9],[[\"(\\\\d{3})(\\\\d{3})\",\"$1 $2\",[\"[136-9]\"]],[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"1\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"6\"]]]],\"AE\":[\"971\",\"00\",\"(?:[4-7]\\\\d|9[0-689])\\\\d{7}|800\\\\d{2,9}|[2-4679]\\\\d{7}\",[5,6,7,8,9,10,11,12],[[\"(\\\\d{3})(\\\\d{2,9})\",\"$1 $2\",[\"60|8\"]],[\"(\\\\d)(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[236]|[479][2-8]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d)(\\\\d{5})\",\"$1 $2 $3\",[\"[479]\"]],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"5\"],\"0$1\"]],\"0\"],\"AF\":[\"93\",\"00\",\"[2-7]\\\\d{8}\",[9],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[2-7]\"],\"0$1\"]],\"0\"],\"AG\":[\"1\",\"011\",\"(?:268|[58]\\\\d\\\\d|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([457]\\\\d{6})$\",\"268$1\",0,\"268\"],\"AI\":[\"1\",\"011\",\"(?:264|[58]\\\\d\\\\d|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([2457]\\\\d{6})$\",\"264$1\",0,\"264\"],\"AL\":[\"355\",\"00\",\"(?:700\\\\d\\\\d|900)\\\\d{3}|8\\\\d{5,7}|(?:[2-5]|6\\\\d)\\\\d{7}\",[6,7,8,9],[[\"(\\\\d{3})(\\\\d{3,4})\",\"$1 $2\",[\"80|9\"],\"0$1\"],[\"(\\\\d)(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"4[2-6]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[2358][2-5]|4\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{5})\",\"$1 $2\",[\"[23578]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"6\"],\"0$1\"]],\"0\"],\"AM\":[\"374\",\"00\",\"(?:[1-489]\\\\d|55|60|77)\\\\d{6}\",[8],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3\",[\"[89]0\"],\"0 $1\"],[\"(\\\\d{3})(\\\\d{5})\",\"$1 $2\",[\"2|3[12]\"],\"(0$1)\"],[\"(\\\\d{2})(\\\\d{6})\",\"$1 $2\",[\"1|47\"],\"(0$1)\"],[\"(\\\\d{2})(\\\\d{6})\",\"$1 $2\",[\"[3-9]\"],\"0$1\"]],\"0\"],\"AO\":[\"244\",\"00\",\"[29]\\\\d{8}\",[9],[[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[29]\"]]]],\"AR\":[\"54\",\"00\",\"11\\\\d{8}|(?:[2368]|9\\\\d)\\\\d{9}\",[10,11],[[\"(\\\\d{4})(\\\\d{2})(\\\\d{4})\",\"$1 $2-$3\",[\"2(?:2[024-9]|3[0-59]|47|6[245]|9[02-8])|3(?:3[28]|4[03-9]|5[2-46-8]|7[1-578]|8[2-9])\",\"2(?:[23]02|6(?:[25]|4[6-8])|9(?:[02356]|4[02568]|72|8[23]))|3(?:3[28]|4(?:[04679]|3[5-8]|5[4-68]|8[2379])|5(?:[2467]|3[237]|8[2-5])|7[1-578]|8(?:[2469]|3[2578]|5[4-8]|7[36-8]|8[5-8]))|2(?:2[24-9]|3[1-59]|47)\",\"2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3[78]|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8[23])|7[1-578]|8(?:[2469]|3[278]|5[56][46]|86[3-6]))|2(?:2[24-9]|3[1-59]|47)|38(?:[58][78]|7[378])|3(?:4[35][56]|58[45]|8(?:[38]5|54|76))[4-6]\",\"2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5(?:[24-6]|3[2-5]))|72|8[23]))|3(?:3[28]|4(?:[04679]|3(?:5(?:4[0-25689]|[56])|[78])|58|8[2379])|5(?:[2467]|3[237]|8(?:[23]|4(?:[45]|60)|5(?:4[0-39]|5|64)))|7[1-578]|8(?:[2469]|3[278]|54(?:4|5[13-7]|6[89])|86[3-6]))|2(?:2[24-9]|3[1-59]|47)|38(?:[58][78]|7[378])|3(?:454|85[56])[46]|3(?:4(?:36|5[56])|8(?:[38]5|76))[4-6]\"],\"0$1\",1],[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$1 $2-$3\",[\"1\"],\"0$1\",1],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2-$3\",[\"[23]\"],\"0$1\",1],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1-$2-$3\",[\"[68]\"],\"0$1\"],[\"(\\\\d)(\\\\d{4})(\\\\d{2})(\\\\d{4})\",\"$2 15-$3-$4\",[\"9(?:2[2-469]|3[3-578])\",\"9(?:2(?:2[024-9]|3[0-59]|47|6[245]|9[02-8])|3(?:3[28]|4[03-9]|5[2-46-8]|7[1-578]|8[2-9]))\",\"9(?:2(?:[23]02|6(?:[25]|4[6-8])|9(?:[02356]|4[02568]|72|8[23]))|3(?:3[28]|4(?:[04679]|3[5-8]|5[4-68]|8[2379])|5(?:[2467]|3[237]|8[2-5])|7[1-578]|8(?:[2469]|3[2578]|5[4-8]|7[36-8]|8[5-8])))|92(?:2[24-9]|3[1-59]|47)\",\"9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5[2-6])|72|8[23]))|3(?:3[28]|4(?:[04679]|3[78]|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8[23])|7[1-578]|8(?:[2469]|3[278]|5(?:[56][46]|[78])|7[378]|8(?:6[3-6]|[78]))))|92(?:2[24-9]|3[1-59]|47)|93(?:4[35][56]|58[45]|8(?:[38]5|54|76))[4-6]\",\"9(?:2(?:[23]02|6(?:[25]|4(?:64|[78]))|9(?:[02356]|4(?:[0268]|5(?:[24-6]|3[2-5]))|72|8[23]))|3(?:3[28]|4(?:[04679]|3(?:5(?:4[0-25689]|[56])|[78])|5(?:4[46]|8)|8[2379])|5(?:[2467]|3[237]|8(?:[23]|4(?:[45]|60)|5(?:4[0-39]|5|64)))|7[1-578]|8(?:[2469]|3[278]|5(?:4(?:4|5[13-7]|6[89])|[56][46]|[78])|7[378]|8(?:6[3-6]|[78]))))|92(?:2[24-9]|3[1-59]|47)|93(?:4(?:36|5[56])|8(?:[38]5|76))[4-6]\"],\"0$1\",0,\"$1 $2 $3-$4\"],[\"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$2 15-$3-$4\",[\"91\"],\"0$1\",0,\"$1 $2 $3-$4\"],[\"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$2 15-$3-$4\",[\"9\"],\"0$1\",0,\"$1 $2 $3-$4\"]],\"0\",0,\"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)?\",\"9$1\"],\"AS\":[\"1\",\"011\",\"(?:[58]\\\\d\\\\d|684|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([267]\\\\d{6})$\",\"684$1\",0,\"684\"],\"AT\":[\"43\",\"00\",\"1\\\\d{3,12}|2\\\\d{6,12}|43(?:(?:0\\\\d|5[02-9])\\\\d{3,9}|2\\\\d{4,5}|[3467]\\\\d{4}|8\\\\d{4,6}|9\\\\d{4,7})|5\\\\d{4,12}|8\\\\d{7,12}|9\\\\d{8,12}|(?:[367]\\\\d|4[0-24-9])\\\\d{4,11}\",[4,5,6,7,8,9,10,11,12,13],[[\"(\\\\d)(\\\\d{3,12})\",\"$1 $2\",[\"1(?:11|[2-9])\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})\",\"$1 $2\",[\"517\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3,5})\",\"$1 $2\",[\"5[079]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3,10})\",\"$1 $2\",[\"(?:31|4)6|51|6(?:5[0-3579]|[6-9])|7(?:20|32|8)|[89]\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{3,9})\",\"$1 $2\",[\"[2-467]|5[2-6]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"5\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{4})(\\\\d{4,7})\",\"$1 $2 $3\",[\"5\"],\"0$1\"]],\"0\"],\"AU\":[\"61\",\"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\",\"1(?:[0-79]\\\\d{7,8}|8[0-24-9]\\\\d{7})|(?:[2-478]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{4,7}\",[5,6,7,8,9,10],[[\"(\\\\d{2})(\\\\d{3,4})\",\"$1 $2\",[\"16\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{2,4})\",\"$1 $2 $3\",[\"16\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"14|[45]\"],\"0$1\"],[\"(\\\\d)(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"[2378]\"],\"(0$1)\"],[\"(\\\\d{4})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"1(?:30|[89])\"]]],\"0\",0,\"0|(183[12])\",0,0,0,[[\"(?:[237]\\\\d{5}|8(?:51(?:0(?:0[03-9]|[1247]\\\\d|3[2-9]|5[0-8]|6[1-9]|8[0-6])|1(?:1[69]|[23]\\\\d|4[0-4]))|(?:[6-8]\\\\d{3}|9(?:[02-9]\\\\d\\\\d|1(?:[0-57-9]\\\\d|6[0135-9])))\\\\d))\\\\d{3}\",[9]],[\"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\",[9]],[\"180(?:0\\\\d{3}|2)\\\\d{3}\",[7,10]],[\"190[0-26]\\\\d{6}\",[10]],0,0,0,[\"16\\\\d{3,7}\",[5,6,7,8,9]],[\"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\",[9]],[\"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\",[6,8,10]]],\"0011\"],\"AW\":[\"297\",\"00\",\"(?:[25-79]\\\\d\\\\d|800)\\\\d{4}\",[7],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[25-9]\"]]]],\"AX\":[\"358\",\"00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))\",\"2\\\\d{4,9}|35\\\\d{4,5}|(?:60\\\\d\\\\d|800)\\\\d{4,6}|7\\\\d{5,11}|(?:[14]\\\\d|3[0-46-9]|50)\\\\d{4,8}\",[5,6,7,8,9,10,11,12],0,\"0\",0,0,0,0,\"18\",0,\"00\"],\"AZ\":[\"994\",\"00\",\"365\\\\d{6}|(?:[124579]\\\\d|60|88)\\\\d{7}\",[9],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"90\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[12]|365\",\"[12]|365\",\"[12]|365(?:[0-46-9]|5[0-35-9])\"],\"(0$1)\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[3-9]\"],\"0$1\"]],\"0\"],\"BA\":[\"387\",\"00\",\"6\\\\d{8}|(?:[35689]\\\\d|49|70)\\\\d{6}\",[8,9],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"6[1-3]|[7-9]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2-$3\",[\"[3-5]|6[56]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3 $4\",[\"6\"],\"0$1\"]],\"0\"],\"BB\":[\"1\",\"011\",\"(?:246|[58]\\\\d\\\\d|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([2-9]\\\\d{6})$\",\"246$1\",0,\"246\"],\"BD\":[\"880\",\"00\",\"[13469]\\\\d{9}|8[0-79]\\\\d{7,8}|[2-7]\\\\d{8}|[2-9]\\\\d{7}|[3-689]\\\\d{6}|[57-9]\\\\d{5}\",[6,7,8,9,10],[[\"(\\\\d{2})(\\\\d{4,6})\",\"$1-$2\",[\"31[5-7]|[459]1\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3,7})\",\"$1-$2\",[\"3(?:[67]|8[013-9])|4(?:6[168]|7|[89][18])|5(?:6[128]|9)|6(?:28|4[14]|5)|7[2-589]|8(?:0[014-9]|[12])|9[358]|(?:3[2-5]|4[235]|5[2-578]|6[0389]|76|8[3-7]|9[24])1|(?:44|66)[01346-9]\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{3,6})\",\"$1-$2\",[\"[13-9]\"],\"0$1\"],[\"(\\\\d)(\\\\d{7,8})\",\"$1-$2\",[\"2\"],\"0$1\"]],\"0\"],\"BE\":[\"32\",\"00\",\"4\\\\d{8}|[1-9]\\\\d{7}\",[8,9],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3\",[\"(?:80|9)0\"],\"0$1\"],[\"(\\\\d)(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[239]|4[23]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[15-8]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"4\"],\"0$1\"]],\"0\"],\"BF\":[\"226\",\"00\",\"[025-7]\\\\d{7}\",[8],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[025-7]\"]]]],\"BG\":[\"359\",\"00\",\"[2-7]\\\\d{6,7}|[89]\\\\d{6,8}|2\\\\d{5}\",[6,7,8,9],[[\"(\\\\d)(\\\\d)(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"2\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"43[1-6]|70[1-9]\"],\"0$1\"],[\"(\\\\d)(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"2\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{2,3})\",\"$1 $2 $3\",[\"[356]|4[124-7]|7[1-9]|8[1-6]|9[1-7]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3\",[\"(?:70|8)0\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{2})\",\"$1 $2 $3\",[\"43[1-7]|7\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[48]|9[08]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"9\"],\"0$1\"]],\"0\"],\"BH\":[\"973\",\"00\",\"[136-9]\\\\d{7}\",[8],[[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[13679]|8[047]\"]]]],\"BI\":[\"257\",\"00\",\"(?:[267]\\\\d|31)\\\\d{6}\",[8],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[2367]\"]]]],\"BJ\":[\"229\",\"00\",\"[2689]\\\\d{7}\",[8],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[2689]\"]]]],\"BL\":[\"590\",\"00\",\"(?:590|69\\\\d|976)\\\\d{6}\",[9],0,\"0\",0,0,0,0,0,[[\"590(?:2[7-9]|5[12]|87)\\\\d{4}\"],[\"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\"],0,0,0,0,0,0,[\"976[01]\\\\d{5}\"]]],\"BM\":[\"1\",\"011\",\"(?:441|[58]\\\\d\\\\d|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([2-8]\\\\d{6})$\",\"441$1\",0,\"441\"],\"BN\":[\"673\",\"00\",\"[2-578]\\\\d{6}\",[7],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[2-578]\"]]]],\"BO\":[\"591\",\"00(?:1\\\\d)?\",\"(?:[2-467]\\\\d\\\\d|8001)\\\\d{5}\",[8,9],[[\"(\\\\d)(\\\\d{7})\",\"$1 $2\",[\"[23]|4[46]\"]],[\"(\\\\d{8})\",\"$1\",[\"[67]\"]],[\"(\\\\d{3})(\\\\d{2})(\\\\d{4})\",\"$1 $2 $3\",[\"8\"]]],\"0\",0,\"0(1\\\\d)?\"],\"BQ\":[\"599\",\"00\",\"(?:[34]1|7\\\\d)\\\\d{5}\",[7],0,0,0,0,0,0,\"[347]\"],\"BR\":[\"55\",\"00(?:1[245]|2[1-35]|31|4[13]|[56]5|99)\",\"(?:[1-46-9]\\\\d\\\\d|5(?:[0-46-9]\\\\d|5[0-24679]))\\\\d{8}|[1-9]\\\\d{9}|[3589]\\\\d{8}|[34]\\\\d{7}\",[8,9,10,11],[[\"(\\\\d{4})(\\\\d{4})\",\"$1-$2\",[\"300|4(?:0[02]|37)\",\"4(?:02|37)0|[34]00\"]],[\"(\\\\d{3})(\\\\d{2,3})(\\\\d{4})\",\"$1 $2 $3\",[\"(?:[358]|90)0\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$1 $2-$3\",[\"(?:[14689][1-9]|2[12478]|3[1-578]|5[13-5]|7[13-579])[2-57]\"],\"($1)\"],[\"(\\\\d{2})(\\\\d{5})(\\\\d{4})\",\"$1 $2-$3\",[\"[16][1-9]|[2-57-9]\"],\"($1)\"]],\"0\",0,\"0(?:(1[245]|2[1-35]|31|4[13]|[56]5|99)(\\\\d{10,11}))?\",\"$2\"],\"BS\":[\"1\",\"011\",\"(?:242|[58]\\\\d\\\\d|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([3-8]\\\\d{6})$\",\"242$1\",0,\"242\"],\"BT\":[\"975\",\"00\",\"[17]\\\\d{7}|[2-8]\\\\d{6}\",[7,8],[[\"(\\\\d)(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[2-68]|7[246]\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"1[67]|7\"]]]],\"BW\":[\"267\",\"00\",\"90\\\\d{5}|(?:[2-6]|7\\\\d)\\\\d{6}\",[7,8],[[\"(\\\\d{2})(\\\\d{5})\",\"$1 $2\",[\"90\"]],[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[2-6]\"]],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"7\"]]]],\"BY\":[\"375\",\"810\",\"(?:[12]\\\\d|33|44|902)\\\\d{7}|8(?:0[0-79]\\\\d{5,7}|[1-7]\\\\d{9})|8(?:1[0-489]|[5-79]\\\\d)\\\\d{7}|8[1-79]\\\\d{6,7}|8[0-79]\\\\d{5}|8\\\\d{5}\",[6,7,8,9,10,11],[[\"(\\\\d{3})(\\\\d{3})\",\"$1 $2\",[\"800\"],\"8 $1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{2,4})\",\"$1 $2 $3\",[\"800\"],\"8 $1\"],[\"(\\\\d{4})(\\\\d{2})(\\\\d{3})\",\"$1 $2-$3\",[\"1(?:5[169]|6[3-5]|7[179])|2(?:1[35]|2[34]|3[3-5])\",\"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])\"],\"8 0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2-$3-$4\",[\"1(?:[56]|7[467])|2[1-3]\"],\"8 0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2-$3-$4\",[\"[1-4]\"],\"8 0$1\"],[\"(\\\\d{3})(\\\\d{3,4})(\\\\d{4})\",\"$1 $2 $3\",[\"[89]\"],\"8 $1\"]],\"8\",0,\"0|80?\",0,0,0,0,\"8~10\"],\"BZ\":[\"501\",\"00\",\"(?:0800\\\\d|[2-8])\\\\d{6}\",[7,11],[[\"(\\\\d{3})(\\\\d{4})\",\"$1-$2\",[\"[2-8]\"]],[\"(\\\\d)(\\\\d{3})(\\\\d{4})(\\\\d{3})\",\"$1-$2-$3-$4\",[\"0\"]]]],\"CA\":[\"1\",\"011\",\"(?:[2-8]\\\\d|90)\\\\d{8}\",[10],0,\"1\",0,0,0,0,0,[[\"(?: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(?:04|13|39|47)|7(?:0[59]|78|8[02])|8(?:[06]7|19|25|73)|90[25])[2-9]\\\\d{6}\"],[\"\"],[\"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\"],[\"900[2-9]\\\\d{6}\"],[\"(?:5(?:00|2[12]|33|44|66|77|88)|622)[2-9]\\\\d{6}\"],0,0,0,[\"600[2-9]\\\\d{6}\"]]],\"CC\":[\"61\",\"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\",\"1(?:[0-79]\\\\d|8[0-24-9])\\\\d{7}|(?:[148]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{5,7}\",[6,7,8,9,10],0,\"0\",0,\"0|([59]\\\\d{7})$\",\"8$1\",0,0,[[\"8(?:51(?:0(?:02|31|60)|118)|91(?:0(?:1[0-2]|29)|1(?:[28]2|50|79)|2(?:10|64)|3(?:[06]8|22)|4[29]8|62\\\\d|70[23]|959))\\\\d{3}\",[9]],[\"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\",[9]],[\"180(?:0\\\\d{3}|2)\\\\d{3}\",[7,10]],[\"190[0-26]\\\\d{6}\",[10]],0,0,0,0,[\"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\",[9]],[\"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\",[6,8,10]]],\"0011\"],\"CD\":[\"243\",\"00\",\"[189]\\\\d{8}|[1-68]\\\\d{6}\",[7,9],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3\",[\"88\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{5})\",\"$1 $2\",[\"[1-6]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"1\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[89]\"],\"0$1\"]],\"0\"],\"CF\":[\"236\",\"00\",\"(?:[27]\\\\d{3}|8776)\\\\d{4}\",[8],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[278]\"]]]],\"CG\":[\"242\",\"00\",\"222\\\\d{6}|(?:0\\\\d|80)\\\\d{7}\",[9],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"801\"]],[\"(\\\\d)(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"8\"]],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[02]\"]]]],\"CH\":[\"41\",\"00\",\"8\\\\d{11}|[2-9]\\\\d{8}\",[9],[[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"8[047]|90\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[2-79]|81\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4 $5\",[\"8\"],\"0$1\"]],\"0\"],\"CI\":[\"225\",\"00\",\"[02-9]\\\\d{7}\",[8],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[02-9]\"]]]],\"CK\":[\"682\",\"00\",\"[2-578]\\\\d{4}\",[5],[[\"(\\\\d{2})(\\\\d{3})\",\"$1 $2\",[\"[2-578]\"]]]],\"CL\":[\"56\",\"(?:0|1(?:1[0-69]|2[0-57]|5[13-58]|69|7[0167]|8[018]))0\",\"12300\\\\d{6}|6\\\\d{9,10}|[2-9]\\\\d{8}\",[9,10,11],[[\"(\\\\d{5})(\\\\d{4})\",\"$1 $2\",[\"21\"],\"($1)\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"44\"]],[\"(\\\\d)(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"2[23]\"],\"($1)\"],[\"(\\\\d)(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"9[2-9]\"]],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"3[2-5]|[47]|5[1-3578]|6[13-57]|8(?:0[1-9]|[1-9])\"],\"($1)\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"60|8\"]],[\"(\\\\d{4})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"1\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3 $4\",[\"60\"]]]],\"CM\":[\"237\",\"00\",\"(?:[26]\\\\d\\\\d|88)\\\\d{6}\",[8,9],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"88\"]],[\"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4 $5\",[\"[26]\"]]]],\"CN\":[\"86\",\"00|1(?:[12]\\\\d|79|9[0235-7])\\\\d\\\\d00\",\"1[1279]\\\\d{8,9}|2\\\\d{9}(?:\\\\d{2})?|[12]\\\\d{6,7}|86\\\\d{6}|(?:1[03-68]\\\\d|6)\\\\d{7,9}|(?:[3-579]\\\\d|8[0-57-9])\\\\d{6,9}\",[7,8,9,10,11,12],[[\"(\\\\d{2})(\\\\d{5,6})\",\"$1 $2\",[\"(?:10|2[0-57-9])[19]\",\"(?:10|2[0-57-9])(?:10|9[56])\",\"(?:10|2[0-57-9])(?:100|9[56])\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{5,6})\",\"$1 $2\",[\"3(?:[157]|35|49|9[1-68])|4(?:[17]|2[179]|6[47-9]|8[23])|5(?:[1357]|2[37]|4[36]|6[1-46]|80)|6(?:3[1-5]|6[0238]|9[12])|7(?:01|[1579]|2[248]|3[014-9]|4[3-6]|6[023689])|8(?:1[236-8]|2[5-7]|[37]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]|4[13]|5[1-5])|(?:4[35]|59|85)[1-9]\",\"(?:3(?:[157]\\\\d|35|49|9[1-68])|4(?:[17]\\\\d|2[179]|[35][1-9]|6[47-9]|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[1-9]|8[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))[19]\",\"85[23](?:10|95)|(?:3(?:[157]\\\\d|35|49|9[1-68])|4(?:[17]\\\\d|2[179]|[35][1-9]|6[47-9]|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[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:10|9[56])\",\"85[23](?:100|95)|(?:3(?:[157]\\\\d|35|49|9[1-68])|4(?:[17]\\\\d|2[179]|[35][1-9]|6[47-9]|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[36-8]|9[1-8])|9(?:0[1-3689]|1[1-79]|[379]\\\\d|4[13]|5[1-5]))(?:100|9[56])\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"(?:4|80)0\"]],[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"10|2(?:[02-57-9]|1[1-9])\",\"10|2(?:[02-57-9]|1[1-9])\",\"10[0-79]|2(?:[02-57-9]|1[1-79])|(?:10|21)8(?:0[1-9]|[1-9])\"],\"0$1\",1],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"3(?:[3-59]|7[02-68])|4(?:[26-8]|3[3-9]|5[2-9])|5(?:3[03-9]|[468]|7[028]|9[2-46-9])|6|7(?:[0-247]|3[04-9]|5[0-4689]|6[2368])|8(?:[1-358]|9[1-7])|9(?:[013479]|5[1-5])|(?:[34]1|55|79|87)[02-9]\"],\"0$1\",1],[\"(\\\\d{3})(\\\\d{7,8})\",\"$1 $2\",[\"9\"]],[\"(\\\\d{4})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"80\"],\"0$1\",1],[\"(\\\\d{3})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"[3-578]\"],\"0$1\",1],[\"(\\\\d{3})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"1[3-9]\"]],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3 $4\",[\"[12]\"],\"0$1\",1]],\"0\",0,\"0|(1(?:[12]\\\\d|79|9[0235-7])\\\\d\\\\d)\",0,0,0,0,\"00\"],\"CO\":[\"57\",\"00(?:4(?:[14]4|56)|[579])\",\"(?:1\\\\d|3)\\\\d{9}|[124-8]\\\\d{7}\",[8,10,11],[[\"(\\\\d)(\\\\d{7})\",\"$1 $2\",[\"[14][2-9]|[25-8]\"],\"($1)\"],[\"(\\\\d{3})(\\\\d{7})\",\"$1 $2\",[\"3\"]],[\"(\\\\d)(\\\\d{3})(\\\\d{7})\",\"$1-$2-$3\",[\"1\"],\"0$1\",0,\"$1 $2 $3\"]],\"0\",0,\"0([3579]|4(?:[14]4|56))?\"],\"CR\":[\"506\",\"00\",\"(?:8\\\\d|90)\\\\d{8}|[24-8]\\\\d{7}\",[8,10],[[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[24-7]|8[3-9]\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1-$2-$3\",[\"[89]\"]]],0,0,\"(19(?:0[0-2468]|1[09]|20|66|77|99))\"],\"CU\":[\"53\",\"119\",\"[27]\\\\d{6,7}|[34]\\\\d{5,7}|(?:5|8\\\\d\\\\d)\\\\d{7}\",[6,7,8,10],[[\"(\\\\d{2})(\\\\d{4,6})\",\"$1 $2\",[\"2[1-4]|[34]\"],\"(0$1)\"],[\"(\\\\d)(\\\\d{6,7})\",\"$1 $2\",[\"7\"],\"(0$1)\"],[\"(\\\\d)(\\\\d{7})\",\"$1 $2\",[\"5\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{7})\",\"$1 $2\",[\"8\"],\"0$1\"]],\"0\"],\"CV\":[\"238\",\"0\",\"(?:[2-59]\\\\d\\\\d|800)\\\\d{4}\",[7],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3\",[\"[2-589]\"]]]],\"CW\":[\"599\",\"00\",\"(?:[34]1|60|(?:7|9\\\\d)\\\\d)\\\\d{5}\",[7,8],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[3467]\"]],[\"(\\\\d)(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"9[4-8]\"]]],0,0,0,0,0,\"[69]\"],\"CX\":[\"61\",\"001[14-689]|14(?:1[14]|34|4[17]|[56]6|7[47]|88)0011\",\"1(?:[0-79]\\\\d|8[0-24-9])\\\\d{7}|(?:[148]\\\\d\\\\d|550)\\\\d{6}|1\\\\d{5,7}\",[6,7,8,9,10],0,\"0\",0,\"0|([59]\\\\d{7})$\",\"8$1\",0,0,[[\"8(?:51(?:0(?:01|30|59)|117)|91(?:00[6-9]|1(?:[28]1|49|78)|2(?:09|63)|3(?:12|26|75)|4(?:56|97)|64\\\\d|7(?:0[01]|1[0-2])|958))\\\\d{3}\",[9]],[\"483[0-3]\\\\d{5}|4(?:[0-3]\\\\d|4[047-9]|5[0-25-9]|6[06-9]|7[02-9]|8[0-2457-9]|9[0-27-9])\\\\d{6}\",[9]],[\"180(?:0\\\\d{3}|2)\\\\d{3}\",[7,10]],[\"190[0-26]\\\\d{6}\",[10]],0,0,0,0,[\"(?:14(?:5(?:1[0458]|[23][458])|71\\\\d)|550\\\\d\\\\d)\\\\d{4}\",[9]],[\"13(?:00\\\\d{3}|45[0-4])\\\\d{3}|13\\\\d{4}\",[6,8,10]]],\"0011\"],\"CY\":[\"357\",\"00\",\"(?:[279]\\\\d|[58]0)\\\\d{6}\",[8],[[\"(\\\\d{2})(\\\\d{6})\",\"$1 $2\",[\"[257-9]\"]]]],\"CZ\":[\"420\",\"00\",\"(?:[2-578]\\\\d|60)\\\\d{7}|9\\\\d{8,11}\",[9],[[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[2-8]|9[015-7]\"]],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3 $4\",[\"9\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3 $4\",[\"9\"]]]],\"DE\":[\"49\",\"00\",\"[2579]\\\\d{5,14}|49(?:[05]\\\\d{10}|[46][1-8]\\\\d{4,9})|49(?:[0-25]\\\\d|3[1-689]|7[1-7])\\\\d{4,8}|49(?:[0-2579]\\\\d|[34][1-9]|6[0-8])\\\\d{3}|49\\\\d{3,4}|(?:1|[368]\\\\d|4[0-8])\\\\d{3,13}\",[4,5,6,7,8,9,10,11,12,13,14,15],[[\"(\\\\d{2})(\\\\d{3,13})\",\"$1 $2\",[\"3[02]|40|[68]9\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3,12})\",\"$1 $2\",[\"2(?:0[1-389]|1[124]|2[18]|3[14])|3(?:[35-9][15]|4[015])|906|(?:2[4-9]|4[2-9]|[579][1-9]|[68][1-8])1\",\"2(?:0[1-389]|12[0-8])|3(?:[35-9][15]|4[015])|906|2(?:[13][14]|2[18])|(?:2[4-9]|4[2-9]|[579][1-9]|[68][1-8])1\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{2,11})\",\"$1 $2\",[\"[24-6]|3(?:[3569][02-46-9]|4[2-4679]|7[2-467]|8[2-46-8])|70[2-8]|8(?:0[2-9]|[1-8])|90[7-9]|[79][1-9]\",\"[24-6]|3(?:3(?:0[1-467]|2[127-9]|3[124578]|7[1257-9]|8[1256]|9[145])|4(?:2[135]|4[13578]|9[1346])|5(?:0[14]|2[1-3589]|6[1-4]|7[13468]|8[13568])|6(?:2[1-489]|3[124-6]|6[13]|7[12579]|8[1-356]|9[135])|7(?:2[1-7]|4[145]|6[1-5]|7[1-4])|8(?:21|3[1468]|6|7[1467]|8[136])|9(?:0[12479]|2[1358]|4[134679]|6[1-9]|7[136]|8[147]|9[1468]))|70[2-8]|8(?:0[2-9]|[1-8])|90[7-9]|[79][1-9]|3[68]4[1347]|3(?:47|60)[1356]|3(?:3[46]|46|5[49])[1246]|3[4579]3[1357]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"138\"],\"0$1\"],[\"(\\\\d{5})(\\\\d{2,10})\",\"$1 $2\",[\"3\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{5,11})\",\"$1 $2\",[\"181\"],\"0$1\"],[\"(\\\\d{3})(\\\\d)(\\\\d{4,10})\",\"$1 $2 $3\",[\"1(?:3|80)|9\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{7,8})\",\"$1 $2\",[\"1[67]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{7,12})\",\"$1 $2\",[\"8\"],\"0$1\"],[\"(\\\\d{5})(\\\\d{6})\",\"$1 $2\",[\"185\",\"1850\",\"18500\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"7\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{7})\",\"$1 $2\",[\"18[68]\"],\"0$1\"],[\"(\\\\d{5})(\\\\d{6})\",\"$1 $2\",[\"15[0568]\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{7})\",\"$1 $2\",[\"15[1279]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{8})\",\"$1 $2\",[\"18\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{7,8})\",\"$1 $2 $3\",[\"1(?:6[023]|7)\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{2})(\\\\d{7})\",\"$1 $2 $3\",[\"15[279]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{8})\",\"$1 $2 $3\",[\"15\"],\"0$1\"]],\"0\"],\"DJ\":[\"253\",\"00\",\"(?:2\\\\d|77)\\\\d{6}\",[8],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[27]\"]]]],\"DK\":[\"45\",\"00\",\"[2-9]\\\\d{7}\",[8],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[2-9]\"]]]],\"DM\":[\"1\",\"011\",\"(?:[58]\\\\d\\\\d|767|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([2-7]\\\\d{6})$\",\"767$1\",0,\"767\"],\"DO\":[\"1\",\"011\",\"(?:[58]\\\\d\\\\d|900)\\\\d{7}\",[10],0,\"1\",0,0,0,0,\"8001|8[024]9\"],\"DZ\":[\"213\",\"00\",\"(?:[1-4]|[5-79]\\\\d|80)\\\\d{7}\",[8,9],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[1-4]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"9\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[5-8]\"],\"0$1\"]],\"0\"],\"EC\":[\"593\",\"00\",\"1800\\\\d{6,7}|(?:[2-7]|9\\\\d)\\\\d{7}\",[8,9,10,11],[[\"(\\\\d)(\\\\d{3})(\\\\d{4})\",\"$1 $2-$3\",[\"[2-7]\"],\"(0$1)\",0,\"$1-$2-$3\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"9\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"1\"]]],\"0\"],\"EE\":[\"372\",\"00\",\"8\\\\d{9}|[4578]\\\\d{7}|(?:[3-8]\\\\d\\\\d|900)\\\\d{4}\",[7,8,10],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[369]|4[3-8]|5(?:[0-2]|5[0-478]|6[45])|7[1-9]\",\"[369]|4[3-8]|5(?:[02]|1(?:[0-8]|95)|5[0-478]|6(?:4[0-4]|5[1-589]))|7[1-9]\"]],[\"(\\\\d{4})(\\\\d{3,4})\",\"$1 $2\",[\"[45]|8(?:00|[1-4])\",\"[45]|8(?:00[1-9]|[1-4])\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{4})\",\"$1 $2 $3\",[\"7\"]],[\"(\\\\d{4})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"80\"]]]],\"EG\":[\"20\",\"00\",\"[189]\\\\d{8,9}|[24-6]\\\\d{8}|[135]\\\\d{7}\",[8,9,10],[[\"(\\\\d)(\\\\d{7,8})\",\"$1 $2\",[\"[23]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{6,7})\",\"$1 $2\",[\"1[35]|[4-6]|8[2468]|9[235-7]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[189]\"],\"0$1\"]],\"0\"],\"EH\":[\"212\",\"00\",\"[5-8]\\\\d{8}\",[9],0,\"0\",0,0,0,0,\"528[89]\"],\"ER\":[\"291\",\"00\",\"[178]\\\\d{6}\",[7],[[\"(\\\\d)(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[178]\"],\"0$1\"]],\"0\"],\"ES\":[\"34\",\"00\",\"(?:51|[6-9]\\\\d)\\\\d{7}\",[9],[[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[89]00\"]],[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[5-9]\"]]]],\"ET\":[\"251\",\"00\",\"(?:11|[2-59]\\\\d)\\\\d{7}\",[9],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[1-59]\"],\"0$1\"]],\"0\"],\"FI\":[\"358\",\"00|99(?:[01469]|5(?:[14]1|3[23]|5[59]|77|88|9[09]))\",\"[1-35689]\\\\d{4}|7\\\\d{10,11}|(?:[124-7]\\\\d|3[0-46-9])\\\\d{8}|[1-9]\\\\d{5,8}\",[5,6,7,8,9,10,11,12],[[\"(\\\\d)(\\\\d{4,9})\",\"$1 $2\",[\"[2568][1-8]|3(?:0[1-9]|[1-9])|9\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3,7})\",\"$1 $2\",[\"[12]00|[368]|70[07-9]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{4,8})\",\"$1 $2\",[\"[1245]|7[135]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{6,10})\",\"$1 $2\",[\"7\"],\"0$1\"]],\"0\",0,0,0,0,\"1[03-79]|[2-9]\",0,\"00\"],\"FJ\":[\"679\",\"0(?:0|52)\",\"45\\\\d{5}|(?:0800\\\\d|[235-9])\\\\d{6}\",[7,11],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[235-9]|45\"]],[\"(\\\\d{4})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"0\"]]],0,0,0,0,0,0,0,\"00\"],\"FK\":[\"500\",\"00\",\"[2-7]\\\\d{4}\",[5]],\"FM\":[\"691\",\"00\",\"[39]\\\\d{6}\",[7],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[39]\"]]]],\"FO\":[\"298\",\"00\",\"(?:[2-8]\\\\d|90)\\\\d{4}\",[6],[[\"(\\\\d{6})\",\"$1\",[\"[2-9]\"]]],0,0,\"(10(?:01|[12]0|88))\"],\"FR\":[\"33\",\"00\",\"[1-9]\\\\d{8}\",[9],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"8\"],\"0 $1\"],[\"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4 $5\",[\"[1-79]\"],\"0$1\"]],\"0\"],\"GA\":[\"241\",\"00\",\"(?:[067]\\\\d|11)\\\\d{6}|[2-7]\\\\d{6}\",[7,8],[[\"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[2-7]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"11|[67]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"0\"]]]],\"GB\":[\"44\",\"00\",\"[1-357-9]\\\\d{9}|[18]\\\\d{8}|8\\\\d{6}\",[7,9,10],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"800\",\"8001\",\"80011\",\"800111\",\"8001111\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3\",[\"845\",\"8454\",\"84546\",\"845464\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{6})\",\"$1 $2\",[\"800\"],\"0$1\"],[\"(\\\\d{5})(\\\\d{4,5})\",\"$1 $2\",[\"1(?:38|5[23]|69|76|94)\",\"1(?:(?:38|69)7|5(?:24|39)|768|946)\",\"1(?:3873|5(?:242|39[4-6])|(?:697|768)[347]|9467)\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{5,6})\",\"$1 $2\",[\"1(?:[2-69][02-9]|[78])\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"[25]|7(?:0|6[024-9])\",\"[25]|7(?:0|6(?:[04-9]|2[356]))\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{6})\",\"$1 $2\",[\"7\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[1389]\"],\"0$1\"]],\"0\",0,0,0,0,0,[[\"(?:1(?:(?:1(?:3[0-58]|4[0-5]|5[0-26-9]|6[0-4]|[78][0-49])|3(?:0\\\\d|1[0-8]|[25][02-9]|3[02-579]|[468][0-46-9]|7[1-35-79]|9[2-578])|4(?:0[03-9]|[137]\\\\d|[28][02-57-9]|4[02-69]|5[0-8]|[69][0-79])|5(?:0[1-35-9]|[16]\\\\d|2[024-9]|3[015689]|4[02-9]|5[03-9]|7[0-35-9]|8[0-468]|9[0-57-9])|6(?:0[034689]|1\\\\d|2[0-35689]|[38][013-9]|4[1-467]|5[0-69]|6[13-9]|7[0-8]|9[0-24578])|7(?:0[0246-9]|2\\\\d|3[0236-8]|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-57-9]|3[02-578]|4[0-578]|5[124-9]|6[2-69]|7\\\\d|8[02-9]|9[02569])|9(?:0[02-589]|[18]\\\\d|2[02-689]|3[1-57-9]|4[2-9]|5[0-579]|6[2-47-9]|7[0-24578]|9[2-57]))\\\\d\\\\d|2(?:(?:0[024-9]|2[3-9]|3[3-79]|4[1-689]|[58][02-9]|6[0-47-9]|7[013-9]|9\\\\d)\\\\d\\\\d|1(?:[0-7]\\\\d\\\\d|80[04589])))|2(?:0[01378]|3[0189]|4[017]|8[0-46-9]|9[0-2])\\\\d{3})\\\\d{4}|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-47-9]|8[3-5])))|3(?:6(?:38[2-5]|47[23])|8(?:47[04-9]|64[0157-9]))|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[1-3]))|5(?:2(?:4(?:3[2-79]|6\\\\d)|76\\\\d)|6(?:26[06-9]|686))|6(?:06(?:4\\\\d|7[4-79])|295[5-7]|35[34]\\\\d|47(?:24|61)|59(?:5[08]|6[67]|74)|9(?:55[0-4]|77[23]))|7(?:26(?:6[13-9]|7[0-7])|(?:442|688)\\\\d|50(?:2[0-3]|[3-68]2|76))|8(?:27[56]\\\\d|37(?:5[2-5]|8[239])|843[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}\",[9,10]],[\"7(?:457[0-57-9]|700[01]|911[028])\\\\d{5}|7(?:[1-3]\\\\d\\\\d|4(?:[0-46-9]\\\\d|5[0-689])|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(?:[024-9]\\\\d|1[02-9]|3[0-689]))\\\\d{6}\",[10]],[\"80[08]\\\\d{7}|800\\\\d{6}|8001111\"],[\"(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\\\d|8[2-49]))\\\\d{7}|845464\\\\d\",[7,10]],[\"70\\\\d{8}\",[10]],0,[\"(?:3[0347]|55)\\\\d{8}\",[10]],[\"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\",[10]],[\"56\\\\d{8}\",[10]]],0,\" x\"],\"GD\":[\"1\",\"011\",\"(?:473|[58]\\\\d\\\\d|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([2-9]\\\\d{6})$\",\"473$1\",0,\"473\"],\"GE\":[\"995\",\"00\",\"(?:[3-57]\\\\d\\\\d|800)\\\\d{6}\",[9],[[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"70\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"32\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[57]\"]],[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[348]\"],\"0$1\"]],\"0\"],\"GF\":[\"594\",\"00\",\"(?:[56]94|976)\\\\d{6}\",[9],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[569]\"],\"0$1\"]],\"0\"],\"GG\":[\"44\",\"00\",\"(?:1481|[357-9]\\\\d{3})\\\\d{6}|8\\\\d{6}(?:\\\\d{2})?\",[7,9,10],0,\"0\",0,\"0|([25-9]\\\\d{5})$\",\"1481$1\",0,0,[[\"1481[25-9]\\\\d{5}\",[10]],[\"7(?:(?:781|839)\\\\d|911[17])\\\\d{5}\",[10]],[\"80[08]\\\\d{7}|800\\\\d{6}|8001111\"],[\"(?:8(?:4[2-5]|7[0-3])|9(?:[01]\\\\d|8[0-3]))\\\\d{7}|845464\\\\d\",[7,10]],[\"70\\\\d{8}\",[10]],0,[\"(?:3[0347]|55)\\\\d{8}\",[10]],[\"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\",[10]],[\"56\\\\d{8}\",[10]]]],\"GH\":[\"233\",\"00\",\"(?:[235]\\\\d{3}|800)\\\\d{5}\",[8,9],[[\"(\\\\d{3})(\\\\d{5})\",\"$1 $2\",[\"8\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[235]\"],\"0$1\"]],\"0\"],\"GI\":[\"350\",\"00\",\"[256]\\\\d{7}\",[8],[[\"(\\\\d{3})(\\\\d{5})\",\"$1 $2\",[\"2\"]]]],\"GL\":[\"299\",\"00\",\"(?:19|[2-689]\\\\d)\\\\d{4}\",[6],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3\",[\"19|[2-689]\"]]]],\"GM\":[\"220\",\"00\",\"[2-9]\\\\d{6}\",[7],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[2-9]\"]]]],\"GN\":[\"224\",\"00\",\"(?:30|6\\\\d\\\\d|722)\\\\d{6}\",[8,9],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"3\"]],[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[67]\"]]]],\"GP\":[\"590\",\"00\",\"(?:590|69\\\\d|976)\\\\d{6}\",[9],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[569]\"],\"0$1\"]],\"0\",0,0,0,0,0,[[\"590(?:0[1-68]|1[0-2]|2[0-68]|3[1289]|4[0-24-9]|5[3-579]|6[0189]|7[08]|8[0-689]|9\\\\d)\\\\d{4}\"],[\"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\"],0,0,0,0,0,0,[\"976[01]\\\\d{5}\"]]],\"GQ\":[\"240\",\"00\",\"222\\\\d{6}|(?:3\\\\d|55|[89]0)\\\\d{7}\",[9],[[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[235]\"]],[\"(\\\\d{3})(\\\\d{6})\",\"$1 $2\",[\"[89]\"]]]],\"GR\":[\"30\",\"00\",\"5005000\\\\d{3}|(?:[2689]\\\\d|70)\\\\d{8}\",[10],[[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"21|7\"]],[\"(\\\\d{4})(\\\\d{6})\",\"$1 $2\",[\"2(?:2|3[2-57-9]|4[2-469]|5[2-59]|6[2-9]|7[2-69]|8[2-49])|5\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[2689]\"]]]],\"GT\":[\"502\",\"00\",\"(?:1\\\\d{3}|[2-7])\\\\d{7}\",[8,11],[[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[2-7]\"]],[\"(\\\\d{4})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"1\"]]]],\"GU\":[\"1\",\"011\",\"(?:[58]\\\\d\\\\d|671|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([3-9]\\\\d{6})$\",\"671$1\",0,\"671\"],\"GW\":[\"245\",\"00\",\"[49]\\\\d{8}|4\\\\d{6}\",[7,9],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"40\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[49]\"]]]],\"GY\":[\"592\",\"001\",\"(?:862\\\\d|9008)\\\\d{3}|(?:[2-46]\\\\d|77)\\\\d{5}\",[7],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[2-46-9]\"]]]],\"HK\":[\"852\",\"00(?:30|5[09]|[126-9]?)\",\"8[0-46-9]\\\\d{6,7}|9\\\\d{4}(?:\\\\d(?:\\\\d(?:\\\\d{4})?)?)?|(?:[235-79]\\\\d|46)\\\\d{6}\",[5,6,7,8,9,11],[[\"(\\\\d{3})(\\\\d{2,5})\",\"$1 $2\",[\"900\",\"9003\"]],[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[2-7]|8[1-4]|9(?:0[1-9]|[1-8])\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"8\"]],[\"(\\\\d{3})(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3 $4\",[\"9\"]]],0,0,0,0,0,0,0,\"00\"],\"HN\":[\"504\",\"00\",\"8\\\\d{10}|[237-9]\\\\d{7}\",[8,11],[[\"(\\\\d{4})(\\\\d{4})\",\"$1-$2\",[\"[237-9]\"]]]],\"HR\":[\"385\",\"00\",\"(?:[24-69]\\\\d|3[0-79])\\\\d{7}|80\\\\d{5,7}|[1-79]\\\\d{7}|6\\\\d{5,6}\",[6,7,8,9],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2,3})\",\"$1 $2 $3\",[\"6[01]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{2,3})\",\"$1 $2 $3\",[\"8\"],\"0$1\"],[\"(\\\\d)(\\\\d{4})(\\\\d{3})\",\"$1 $2 $3\",[\"1\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[67]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"9\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[2-5]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"8\"],\"0$1\"]],\"0\"],\"HT\":[\"509\",\"00\",\"[2-489]\\\\d{7}\",[8],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{4})\",\"$1 $2 $3\",[\"[2-489]\"]]]],\"HU\":[\"36\",\"00\",\"[2357]\\\\d{8}|[1-9]\\\\d{7}\",[8,9],[[\"(\\\\d)(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"1\"],\"(06 $1)\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[27][2-9]|3[2-7]|4[24-9]|5[2-79]|6|8[2-57-9]|9[2-69]\"],\"(06 $1)\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[2-57-9]\"],\"06 $1\"]],\"06\"],\"ID\":[\"62\",\"00[189]\",\"(?:(?:007803|8\\\\d{4})\\\\d|[1-36])\\\\d{6}|[1-9]\\\\d{8,10}|[2-9]\\\\d{7}\",[7,8,9,10,11,12,13],[[\"(\\\\d)(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"15\"]],[\"(\\\\d{2})(\\\\d{5,9})\",\"$1 $2\",[\"2[124]|[36]1\"],\"(0$1)\"],[\"(\\\\d{3})(\\\\d{5,7})\",\"$1 $2\",[\"800\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{5,8})\",\"$1 $2\",[\"[2-79]\"],\"(0$1)\"],[\"(\\\\d{3})(\\\\d{3,4})(\\\\d{3})\",\"$1-$2-$3\",[\"8[1-35-9]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{6,8})\",\"$1 $2\",[\"1\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"804\"],\"0$1\"],[\"(\\\\d{3})(\\\\d)(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3 $4\",[\"80\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{4})(\\\\d{4,5})\",\"$1-$2-$3\",[\"8\"],\"0$1\"]],\"0\"],\"IE\":[\"353\",\"00\",\"(?:1\\\\d|[2569])\\\\d{6,8}|4\\\\d{6,9}|7\\\\d{8}|8\\\\d{8,9}\",[7,8,9,10],[[\"(\\\\d{2})(\\\\d{5})\",\"$1 $2\",[\"2[24-9]|47|58|6[237-9]|9[35-9]\"],\"(0$1)\"],[\"(\\\\d{3})(\\\\d{5})\",\"$1 $2\",[\"[45]0\"],\"(0$1)\"],[\"(\\\\d)(\\\\d{3,4})(\\\\d{4})\",\"$1 $2 $3\",[\"1\"],\"(0$1)\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[2569]|4[1-69]|7[14]\"],\"(0$1)\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"70\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"81\"],\"(0$1)\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[78]\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"1\"]],[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"4\"],\"(0$1)\"],[\"(\\\\d{2})(\\\\d)(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3 $4\",[\"8\"],\"0$1\"]],\"0\"],\"IL\":[\"972\",\"0(?:0|1[2-9])\",\"1\\\\d{6}(?:\\\\d{3,5})?|[57]\\\\d{8}|[1-489]\\\\d{7}\",[7,8,9,10,11,12],[[\"(\\\\d{4})(\\\\d{3})\",\"$1-$2\",[\"125\"]],[\"(\\\\d{4})(\\\\d{2})(\\\\d{2})\",\"$1-$2-$3\",[\"121\"]],[\"(\\\\d)(\\\\d{3})(\\\\d{4})\",\"$1-$2-$3\",[\"[2-489]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1-$2-$3\",[\"[57]\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{3})(\\\\d{3})\",\"$1-$2-$3\",[\"12\"]],[\"(\\\\d{4})(\\\\d{6})\",\"$1-$2\",[\"159\"]],[\"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1-$2-$3-$4\",[\"1[7-9]\"]],[\"(\\\\d{3})(\\\\d{1,2})(\\\\d{3})(\\\\d{4})\",\"$1-$2 $3-$4\",[\"15\"]]],\"0\"],\"IM\":[\"44\",\"00\",\"1624\\\\d{6}|(?:[3578]\\\\d|90)\\\\d{8}\",[10],0,\"0\",0,\"0|([5-8]\\\\d{5})$\",\"1624$1\",0,\"74576|(?:16|7[56])24\"],\"IN\":[\"91\",\"00\",\"(?:000800|[2-9]\\\\d\\\\d)\\\\d{7}|1\\\\d{7,12}\",[8,9,10,11,12,13],[[\"(\\\\d{8})\",\"$1\",[\"5(?:0|2[23]|3[03]|[67]1|88)\",\"5(?:0|2(?:21|3)|3(?:0|3[23])|616|717|888)\",\"5(?:0|2(?:21|3)|3(?:0|3[23])|616|717|8888)\"],0,1],[\"(\\\\d{4})(\\\\d{4,5})\",\"$1 $2\",[\"180\",\"1800\"],0,1],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"140\"],0,1],[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"11|2[02]|33|4[04]|79[1-7]|80[2-46]\",\"11|2[02]|33|4[04]|79(?:[1-6]|7[19])|80(?:[2-4]|6[0-589])\",\"11|2[02]|33|4[04]|79(?:[124-6]|3(?:[02-9]|1[0-24-9])|7(?:1|9[1-6]))|80(?:[2-4]|6[0-589])\"],\"0$1\",1],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"1(?:2[0-249]|3[0-25]|4[145]|[68]|7[1257])|2(?:1[257]|3[013]|4[01]|5[0137]|6[0158]|78|8[1568])|3(?:26|4[1-3]|5[34]|6[01489]|7[02-46]|8[159])|4(?:1[36]|2[1-47]|5[12]|6[0-26-9]|7[0-24-9]|8[013-57]|9[014-7])|5(?:1[025]|22|[36][25]|4[28]|5[12]|[78]1)|6(?:12|[2-4]1|5[17]|6[13]|80)|7(?:12|3[134]|4[47]|61|88)|8(?:16|2[014]|3[126]|6[136]|7[078]|8[34]|91)|(?:43|59|75)[15]|(?:1[59]|29|67|72)[14]\",\"1(?:2[0-24]|3[0-25]|4[145]|[59][14]|6[1-9]|7[1257]|8[1-57-9])|2(?:1[257]|3[013]|4[01]|5[0137]|6[058]|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]|22|[36][25]|4[28]|[578]1|9[15])|674|7(?:(?:2[14]|3[34]|5[15])[2-6]|61[346]|88[0-8])|8(?:70[2-6]|84[235-7]|91[3-7])|(?:1(?:29|60|8[06])|261|552|6(?:12|[2-47]1|5[17]|6[13]|80)|7(?:12|31|4[47])|8(?:16|2[014]|3[126]|6[136]|7[78]|83))[2-7]\",\"1(?:2[0-24]|3[0-25]|4[145]|[59][14]|6[1-9]|7[1257]|8[1-57-9])|2(?:1[257]|3[013]|4[01]|5[0137]|6[058]|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]|22|[36][25]|4[28]|[578]1|9[15])|6(?:12(?:[2-6]|7[0-8])|74[2-7])|7(?:(?:2[14]|5[15])[2-6]|3171|61[346]|88(?:[2-7]|82))|8(?:70[2-6]|84(?:[2356]|7[19])|91(?:[3-6]|7[19]))|73[134][2-6]|(?:74[47]|8(?:16|2[014]|3[126]|6[136]|7[78]|83))(?:[2-6]|7[19])|(?:1(?:29|60|8[06])|261|552|6(?:[2-4]1|5[17]|6[13]|7(?:1|4[0189])|80)|7(?:12|88[01]))[2-7]\"],\"0$1\",1],[\"(\\\\d{4})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"1(?:[2-479]|5[0235-9])|[2-5]|6(?:1[1358]|2[2457-9]|3[2-5]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1[013-9]|28|3[129]|4[1-35689]|5[29]|6[02-5]|70)|807\",\"1(?:[2-479]|5[0235-9])|[2-5]|6(?:1[1358]|2(?:[2457]|84|95)|3(?:[2-4]|55)|4[235-7]|5[2-689]|6[24578]|7[235689]|8[1-6])|7(?:1(?:[013-8]|9[6-9])|28[6-8]|3(?:17|2[0-49]|9[2-57])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]|8[0-24-7])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4|5[0-367])|70[13-7])|807[19]\",\"1(?:[2-479]|5(?:[0236-9]|5[013-9]))|[2-5]|6(?:2(?:84|95)|355|83)|73179|807(?:1|9[1-3])|(?:1552|6(?:1[1358]|2[2457]|3[2-4]|4[235-7]|5[2-689]|6[24578]|7[235689]|8[124-6])\\\\d|7(?:1(?:[013-8]\\\\d|9[6-9])|28[6-8]|3(?:2[0-49]|9[2-57])|4(?:1[2-4]|[29][0-7]|3[0-8]|[56]\\\\d|8[0-24-7])|5(?:2[1-3]|9[0-6])|6(?:0[5689]|2[5-9]|3[02-8]|4\\\\d|5[0-367])|70[13-7]))[2-7]\"],\"0$1\",1],[\"(\\\\d{5})(\\\\d{5})\",\"$1 $2\",[\"[6-9]\"],\"0$1\",1],[\"(\\\\d{4})(\\\\d{2,4})(\\\\d{4})\",\"$1 $2 $3\",[\"1(?:6|8[06])\",\"1(?:6|8[06]0)\"],0,1],[\"(\\\\d{4})(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3 $4\",[\"18\"],0,1]],\"0\"],\"IO\":[\"246\",\"00\",\"3\\\\d{6}\",[7],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"3\"]]]],\"IQ\":[\"964\",\"00\",\"(?:1|7\\\\d\\\\d)\\\\d{7}|[2-6]\\\\d{7,8}\",[8,9,10],[[\"(\\\\d)(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"1\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[2-6]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"7\"],\"0$1\"]],\"0\"],\"IR\":[\"98\",\"00\",\"[1-9]\\\\d{9}|(?:[1-8]\\\\d\\\\d|9)\\\\d{3,4}\",[4,5,6,7,10],[[\"(\\\\d{4,5})\",\"$1\",[\"96\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{4,5})\",\"$1 $2\",[\"(?:1[137]|2[13-68]|3[1458]|4[145]|5[1468]|6[16]|7[1467]|8[13467])[12689]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"9\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"[1-8]\"],\"0$1\"]],\"0\"],\"IS\":[\"354\",\"00|1(?:0(?:01|[12]0)|100)\",\"(?:38\\\\d|[4-9])\\\\d{6}\",[7,9],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[4-9]\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"3\"]]],0,0,0,0,0,0,0,\"00\"],\"IT\":[\"39\",\"00\",\"0\\\\d{5,10}|3[0-8]\\\\d{7,10}|55\\\\d{8}|8\\\\d{5}(?:\\\\d{2,4})?|(?:1\\\\d|39)\\\\d{7,8}\",[6,7,8,9,10,11],[[\"(\\\\d{2})(\\\\d{4,6})\",\"$1 $2\",[\"0[26]\"]],[\"(\\\\d{3})(\\\\d{3,6})\",\"$1 $2\",[\"0[13-57-9][0159]|8(?:03|4[17]|9[245])\",\"0[13-57-9][0159]|8(?:03|4[17]|9(?:2|[45][0-4]))\"]],[\"(\\\\d{4})(\\\\d{2,6})\",\"$1 $2\",[\"0(?:[13-579][2-46-8]|8[236-8])\"]],[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"894\"]],[\"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\",\"$1 $2 $3\",[\"0[26]|5\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"1[4679]|[38]\"]],[\"(\\\\d{3})(\\\\d{3,4})(\\\\d{4})\",\"$1 $2 $3\",[\"0[13-57-9][0159]\"]],[\"(\\\\d{2})(\\\\d{4})(\\\\d{5})\",\"$1 $2 $3\",[\"0[26]\"]],[\"(\\\\d{4})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"0\"]],[\"(\\\\d{3})(\\\\d{4})(\\\\d{4,5})\",\"$1 $2 $3\",[\"3\"]]],0,0,0,0,0,0,[[\"0669[0-79]\\\\d{1,6}|0(?:1(?:[0159]\\\\d|[27][1-5]|31|4[1-4]|6[1356]|8[2-57])|2\\\\d\\\\d|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])|6(?:[0-57-9]\\\\d|6[0-8])|7(?:[0159]\\\\d|2[12]|3[1-7]|4[2-46]|6[13569]|7[13-6]|8[1-59])|8(?:[0159]\\\\d|2[3-578]|3[1-356]|[6-8][1-5])|9(?:[0159]\\\\d|[238][1-5]|4[12]|6[1-8]|7[1-6]))\\\\d{2,7}\"],[\"3[1-9]\\\\d{8}|3[2-9]\\\\d{7}\",[9,10]],[\"80(?:0\\\\d{3}|3)\\\\d{3}\",[6,9]],[\"(?:0878\\\\d\\\\d|89(?:2|4[5-9]\\\\d))\\\\d{3}|89[45][0-4]\\\\d\\\\d|(?:1(?:44|6[346])|89(?:5[5-9]|9))\\\\d{6}\",[6,8,9,10]],[\"1(?:78\\\\d|99)\\\\d{6}\",[9,10]],0,0,0,[\"55\\\\d{8}\",[10]],[\"84(?:[08]\\\\d{3}|[17])\\\\d{3}\",[6,9]]]],\"JE\":[\"44\",\"00\",\"1534\\\\d{6}|(?:[3578]\\\\d|90)\\\\d{8}\",[10],0,\"0\",0,\"0|([0-24-8]\\\\d{5})$\",\"1534$1\",0,0,[[\"1534[0-24-8]\\\\d{5}\"],[\"7(?:(?:(?:50|82)9|937)\\\\d|7(?:00[378]|97[7-9]))\\\\d{5}\"],[\"80(?:07(?:35|81)|8901)\\\\d{4}\"],[\"(?:8(?:4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|90(?:066[59]|1810|71(?:07|55)))\\\\d{4}\"],[\"701511\\\\d{4}\"],0,[\"(?:3(?:0(?:07(?:35|81)|8901)|3\\\\d{4}|4(?:4(?:4(?:05|42|69)|703)|5(?:041|800))|7(?:0002|1206))|55\\\\d{4})\\\\d{4}\"],[\"76(?:0[0-2]|2[356]|4[0134]|5[49]|6[0-369]|77|81|9[39])\\\\d{6}\"],[\"56\\\\d{8}\"]]],\"JM\":[\"1\",\"011\",\"(?:[58]\\\\d\\\\d|658|900)\\\\d{7}\",[10],0,\"1\",0,0,0,0,\"658|876\"],\"JO\":[\"962\",\"00\",\"900\\\\d{5}|(?:(?:[268]|7\\\\d)\\\\d|32|53)\\\\d{6}\",[8,9],[[\"(\\\\d)(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[2356]|87\"],\"(0$1)\"],[\"(\\\\d{3})(\\\\d{5,6})\",\"$1 $2\",[\"[89]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{7})\",\"$1 $2\",[\"70\"],\"0$1\"],[\"(\\\\d)(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"7\"],\"0$1\"]],\"0\"],\"JP\":[\"81\",\"010\",\"00[1-9]\\\\d{6,14}|[257-9]\\\\d{9}|(?:00|[1-9]\\\\d\\\\d)\\\\d{6}\",[8,9,10,11,12,13,14,15,16,17],[[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1-$2-$3\",[\"(?:12|57|99)0\"],\"0$1\"],[\"(\\\\d{4})(\\\\d)(\\\\d{4})\",\"$1-$2-$3\",[\"1(?:26|3[79]|4[56]|5[4-68]|6[3-5])|499|5(?:76|97)|746|8(?:3[89]|47|51|63)|9(?:49|80|9[16])\",\"1(?:267|3(?:7[247]|9[278])|466|5(?:47|58|64)|6(?:3[245]|48|5[4-68]))|499[2468]|5(?:76|97)9|7468|8(?:3(?:8[78]|96)|477|51[24]|636)|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\",\"1(?:267|3(?:7[247]|9[278])|466|5(?:47|58|64)|6(?:3[245]|48|5[4-68]))|499[2468]|5(?:769|979[2-69])|7468|8(?:3(?:8[78]|96[2457-9])|477|51[24]|636[2-57-9])|9(?:496|802|9(?:1[23]|69))|1(?:45|58)[67]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1-$2-$3\",[\"60\"],\"0$1\"],[\"(\\\\d)(\\\\d{4})(\\\\d{4})\",\"$1-$2-$3\",[\"[36]|4(?:2[09]|7[01])\",\"[36]|4(?:2(?:0|9[02-69])|7(?:0[019]|1))\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1-$2-$3\",[\"1(?:1|5[45]|77|88|9[69])|2(?:2[1-37]|3[0-269]|4[59]|5|6[24]|7[1-358]|8[1369]|9[0-38])|4(?:[28][1-9]|3[0-57]|[45]|6[248]|7[2-579]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-389])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9[2-6])|8(?:2[124589]|3[279]|49|6[0-24-689]|7[0-468]|8[68]|9[019])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9[1-489])\",\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2(?:[127]|3[014-9])|3[0-269]|4[59]|5(?:[0468][01]|[1-3]|5[0-69]|9[19])|62|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17))|4(?:2(?:[13-79]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|8[1-9])|5(?:2|3[045]|4[0-369]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0-2469])|49|6(?:[0-24]|5[0-3589]|9[01459])|7[0-468]|8[68])|9(?:[23][1-9]|4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3[34]|4[0178]))|(?:49|55|83)[29]|(?:264|837)[016-9]|2(?:57|93)[015-9]|(?:47[59]|59[89]|8(?:6[68]|9))[019]\",\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[1-3]|5[0-69]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17))|4(?:2(?:[13-79]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9[0169])|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:8294|96)[1-3]|2(?:57|93)[015-9]|(?:223|8699)[014-9]|(?:48|8292|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\",\"1(?:1|5(?:4[018]|5[017])|77|88|9[69])|2(?:2[127]|3[0-269]|4[59]|5(?:[0468][01]|[1-3]|5[0-69]|7[015-9]|9(?:17|99))|6(?:2|4[016-9])|7(?:[1-35]|8[0189])|8(?:[16]|3[0134]|9[0-5])|9(?:[028]|17|3[015-9]))|4(?:2(?:[13-79]|2[01]|8[014-6])|3[0-57]|[45]|6[248]|7[2-47]|9[29])|5(?:2|3[045]|4[0-369]|5[29]|8[02389]|9[0-3])|7(?:2[02-46-9]|34|[58]|6[0249]|7[57]|9(?:[23]|4[0-59]|5[01569]|6[0167]))|8(?:2(?:[1258]|4[0-39]|9(?:[019]|4[1-3]|6(?:[0-47-9]|5[01346-9])))|3(?:[29]|7(?:[017-9]|6[6-8]))|49|6(?:[0-24]|5(?:[0-389]|5[23])|6(?:[01]|9[178])|9[0145])|7[0-468]|8[68])|9(?:4[15]|5[138]|6[1-3]|7[156]|8[189]|9(?:[1289]|3(?:31|4[357])|4[0178]))|(?:223|8699)[014-9]|(?:48|829(?:2|66)|9[23])[1-9]|(?:47[59]|59[89]|8(?:68|9))[019]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{4})\",\"$1-$2-$3\",[\"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3[3-8]|5[2-9])\",\"[14]|[29][2-9]|5[3-9]|7[2-4679]|8(?:[246-9]|3(?:[3-6][2-9]|7|8[2-5])|5[2-9])\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1-$2-$3\",[\"800\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$1-$2-$3\",[\"[2579]|80\"],\"0$1\"]],\"0\"],\"KE\":[\"254\",\"000\",\"(?:[17]\\\\d\\\\d|900)\\\\d{6}|(?:2|80)0\\\\d{6,7}|[4-6]\\\\d{6,8}\",[7,8,9,10],[[\"(\\\\d{2})(\\\\d{5,7})\",\"$1 $2\",[\"[24-6]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{6})\",\"$1 $2\",[\"[17]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[89]\"],\"0$1\"]],\"0\"],\"KG\":[\"996\",\"00\",\"8\\\\d{9}|(?:[235-8]\\\\d|99)\\\\d{7}\",[9,10],[[\"(\\\\d{4})(\\\\d{5})\",\"$1 $2\",[\"3(?:1[346]|[24-79])\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[235-79]|88\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d)(\\\\d{2,3})\",\"$1 $2 $3 $4\",[\"8\"],\"0$1\"]],\"0\"],\"KH\":[\"855\",\"00[14-9]\",\"1\\\\d{9}|[1-9]\\\\d{7,8}\",[8,9,10],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[1-9]\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"1\"]]],\"0\"],\"KI\":[\"686\",\"00\",\"(?:[37]\\\\d|6[0-79])\\\\d{6}|(?:[2-48]\\\\d|50)\\\\d{3}\",[5,8],0,\"0\"],\"KM\":[\"269\",\"00\",\"[3478]\\\\d{6}\",[7],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3\",[\"[3478]\"]]]],\"KN\":[\"1\",\"011\",\"(?:[58]\\\\d\\\\d|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([2-7]\\\\d{6})$\",\"869$1\",0,\"869\"],\"KP\":[\"850\",\"00|99\",\"85\\\\d{6}|(?:19\\\\d|2)\\\\d{7}\",[8,10],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"8\"],\"0$1\"],[\"(\\\\d)(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"2\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"1\"],\"0$1\"]],\"0\"],\"KR\":[\"82\",\"00(?:[125689]|3(?:[46]5|91)|7(?:00|27|3|55|6[126]))\",\"00[1-9]\\\\d{8,11}|(?:[12]|5\\\\d{3})\\\\d{7}|[13-6]\\\\d{9}|(?:[1-6]\\\\d|80)\\\\d{7}|[3-6]\\\\d{4,5}|(?:00|7)0\\\\d{8}\",[5,6,8,9,10,11,12,13,14],[[\"(\\\\d{2})(\\\\d{3,4})\",\"$1-$2\",[\"(?:3[1-3]|[46][1-4]|5[1-5])1\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{4})\",\"$1-$2\",[\"1\"]],[\"(\\\\d)(\\\\d{3,4})(\\\\d{4})\",\"$1-$2-$3\",[\"2\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1-$2-$3\",[\"60|8\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\",\"$1-$2-$3\",[\"[1346]|5[1-5]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$1-$2-$3\",[\"[57]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{5})(\\\\d{4})\",\"$1-$2-$3\",[\"5\"],\"0$1\"]],\"0\",0,\"0(8(?:[1-46-8]|5\\\\d\\\\d))?\"],\"KW\":[\"965\",\"00\",\"(?:18|[2569]\\\\d\\\\d)\\\\d{5}\",[7,8],[[\"(\\\\d{4})(\\\\d{3,4})\",\"$1 $2\",[\"[169]|2(?:[235]|4[1-35-9])|52\"]],[\"(\\\\d{3})(\\\\d{5})\",\"$1 $2\",[\"[25]\"]]]],\"KY\":[\"1\",\"011\",\"(?:345|[58]\\\\d\\\\d|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([2-9]\\\\d{6})$\",\"345$1\",0,\"345\"],\"KZ\":[\"7\",\"810\",\"33622\\\\d{5}|(?:7\\\\d|80)\\\\d{8}\",[10],0,\"8\",0,0,0,0,\"33|7\",0,\"8~10\"],\"LA\":[\"856\",\"00\",\"(?:2\\\\d|3)\\\\d{8}|(?:[235-8]\\\\d|41)\\\\d{6}\",[8,9,10],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"2[13]|3[14]|[4-8]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3 $4\",[\"3\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3 $4\",[\"2\"],\"0$1\"]],\"0\"],\"LB\":[\"961\",\"00\",\"[7-9]\\\\d{7}|[13-9]\\\\d{6}\",[7,8],[[\"(\\\\d)(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[13-69]|7(?:[2-57]|62|8[0-7]|9[04-9])|8[02-9]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[7-9]\"]]],\"0\"],\"LC\":[\"1\",\"011\",\"(?:[58]\\\\d\\\\d|758|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([2-7]\\\\d{6})$\",\"758$1\",0,\"758\"],\"LI\":[\"423\",\"00\",\"90\\\\d{5}|(?:[2378]|6\\\\d\\\\d)\\\\d{6}\",[7,9],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3\",[\"[237-9]\"]],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"69\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"6\"]]],\"0\",0,\"0|(1001)\"],\"LK\":[\"94\",\"00\",\"(?:[1-7]\\\\d|[89]1)\\\\d{7}\",[9],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"7\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[1-689]\"],\"0$1\"]],\"0\"],\"LR\":[\"231\",\"00\",\"(?:2|33|5\\\\d|77|88)\\\\d{7}|[45]\\\\d{6}\",[7,8,9],[[\"(\\\\d)(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[45]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"2\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[3578]\"],\"0$1\"]],\"0\"],\"LS\":[\"266\",\"00\",\"(?:[256]\\\\d\\\\d|800)\\\\d{5}\",[8],[[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[2568]\"]]]],\"LT\":[\"370\",\"00\",\"(?:[3469]\\\\d|52|[78]0)\\\\d{6}\",[8],[[\"(\\\\d)(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"52[0-79]\"],\"(8-$1)\",1],[\"(\\\\d{3})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3\",[\"[7-9]\"],\"8 $1\",1],[\"(\\\\d{2})(\\\\d{6})\",\"$1 $2\",[\"37|4(?:[15]|6[1-8])\"],\"(8-$1)\",1],[\"(\\\\d{3})(\\\\d{5})\",\"$1 $2\",[\"[3-6]\"],\"(8-$1)\",1]],\"8\",0,\"[08]\"],\"LU\":[\"352\",\"00\",\"35[013-9]\\\\d{4,8}|6\\\\d{8}|35\\\\d{2,4}|(?:[2457-9]\\\\d|3[0-46-9])\\\\d{2,9}\",[4,5,6,7,8,9,10,11],[[\"(\\\\d{2})(\\\\d{3})\",\"$1 $2\",[\"2(?:0[2-689]|[2-9])|[3-57]|8(?:0[2-9]|[13-9])|9(?:0[89]|[2-579])\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3\",[\"2(?:0[2-689]|[2-9])|[3-57]|8(?:0[2-9]|[13-9])|9(?:0[89]|[2-579])\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3\",[\"20[2-689]\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,2})\",\"$1 $2 $3 $4\",[\"2(?:[0367]|4[3-8])\"]],[\"(\\\\d{3})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3\",[\"80[01]|90[015]\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3 $4\",[\"20\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"6\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,2})\",\"$1 $2 $3 $4 $5\",[\"2(?:[0367]|4[3-8])\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{1,5})\",\"$1 $2 $3 $4\",[\"[3-57]|8[13-9]|9(?:0[89]|[2-579])|(?:2|80)[2-9]\"]]],0,0,\"(15(?:0[06]|1[12]|[35]5|4[04]|6[26]|77|88|99)\\\\d)\"],\"LV\":[\"371\",\"00\",\"(?:[268]\\\\d|90)\\\\d{6}\",[8],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[269]|8[01]\"]]]],\"LY\":[\"218\",\"00\",\"[2-9]\\\\d{8}\",[9],[[\"(\\\\d{2})(\\\\d{7})\",\"$1-$2\",[\"[2-9]\"],\"0$1\"]],\"0\"],\"MA\":[\"212\",\"00\",\"[5-8]\\\\d{8}\",[9],[[\"(\\\\d{5})(\\\\d{4})\",\"$1-$2\",[\"5(?:29|38)\",\"5(?:29|38)[89]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"5[45]\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{5})\",\"$1-$2\",[\"5(?:2[2-489]|3[5-9]|9)|892\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{7})\",\"$1-$2\",[\"8\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{6})\",\"$1-$2\",[\"[5-7]\"],\"0$1\"]],\"0\",0,0,0,0,0,[[\"5(?:29|38)[89]0\\\\d{4}|5(?:2(?:[015-7]\\\\d|2[2-9]|3[2-578]|4[2-46-8]|8[235-7]|90)|3(?:[0-4]\\\\d|[57][2-9]|6[2-8]|80|9[3-9])|(?:4[067]|5[03])\\\\d)\\\\d{5}\"],[\"(?:6(?:[0-79]\\\\d|8[0-247-9])|7(?:0[06-8]|6[1267]|7[0-27]))\\\\d{6}\"],[\"80\\\\d{7}\"],[\"89\\\\d{7}\"],0,0,0,0,[\"592(?:4[0-2]|93)\\\\d{4}\"]]],\"MC\":[\"377\",\"00\",\"870\\\\d{5}|(?:[349]|6\\\\d)\\\\d{7}\",[8,9],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"4\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[39]\"]],[\"(\\\\d)(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4 $5\",[\"6\"],\"0$1\"]],\"0\"],\"MD\":[\"373\",\"00\",\"(?:[235-7]\\\\d|[89]0)\\\\d{6}\",[8],[[\"(\\\\d{3})(\\\\d{5})\",\"$1 $2\",[\"[89]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"22|3\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3\",[\"[25-7]\"],\"0$1\"]],\"0\"],\"ME\":[\"382\",\"00\",\"(?:20|[3-79]\\\\d)\\\\d{6}|80\\\\d{6,7}\",[8,9],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[2-9]\"],\"0$1\"]],\"0\"],\"MF\":[\"590\",\"00\",\"(?:590|69\\\\d|976)\\\\d{6}\",[9],0,\"0\",0,0,0,0,0,[[\"590(?:0[079]|[14]3|[27][79]|30|5[0-268]|87)\\\\d{4}\"],[\"69(?:0\\\\d\\\\d|1(?:2[29]|3[0-5]))\\\\d{4}\"],0,0,0,0,0,0,[\"976[01]\\\\d{5}\"]]],\"MG\":[\"261\",\"00\",\"[23]\\\\d{8}\",[9],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{3})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[23]\"],\"0$1\"]],\"0\",0,\"0|([24-9]\\\\d{6})$\",\"20$1\"],\"MH\":[\"692\",\"011\",\"329\\\\d{4}|(?:[256]\\\\d|45)\\\\d{5}\",[7],[[\"(\\\\d{3})(\\\\d{4})\",\"$1-$2\",[\"[2-6]\"]]],\"1\"],\"MK\":[\"389\",\"00\",\"[2-578]\\\\d{7}\",[8],[[\"(\\\\d)(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"2\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[347]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d)(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[58]\"],\"0$1\"]],\"0\"],\"ML\":[\"223\",\"00\",\"(?:[246-9]\\\\d|50)\\\\d{6}\",[8],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[24-9]\"]]]],\"MM\":[\"95\",\"00\",\"1\\\\d{5,7}|95\\\\d{6}|(?:[4-7]|9[0-46-9])\\\\d{6,8}|(?:2|8\\\\d)\\\\d{5,8}\",[6,7,8,9,10],[[\"(\\\\d)(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3\",[\"16|2\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3\",[\"[45]|6(?:0[23]|[1-689]|7[235-7])|7(?:[0-4]|5[2-7])|8[1-6]\"],\"0$1\"],[\"(\\\\d)(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[12]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[4-7]|8[1-35]\"],\"0$1\"],[\"(\\\\d)(\\\\d{3})(\\\\d{4,6})\",\"$1 $2 $3\",[\"9(?:2[0-4]|[35-9]|4[137-9])\"],\"0$1\"],[\"(\\\\d)(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"2\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"8\"],\"0$1\"],[\"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3 $4\",[\"92\"],\"0$1\"],[\"(\\\\d)(\\\\d{5})(\\\\d{4})\",\"$1 $2 $3\",[\"9\"],\"0$1\"]],\"0\"],\"MN\":[\"976\",\"001\",\"[12]\\\\d{7,9}|[57-9]\\\\d{7}\",[8,9,10],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{4})\",\"$1 $2 $3\",[\"[12]1\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[57-9]\"]],[\"(\\\\d{3})(\\\\d{5,6})\",\"$1 $2\",[\"[12]2[1-3]\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{5,6})\",\"$1 $2\",[\"[12](?:27|3[2-8]|4[2-68]|5[1-4689])\",\"[12](?:27|3[2-8]|4[2-68]|5[1-4689])[0-3]\"],\"0$1\"],[\"(\\\\d{5})(\\\\d{4,5})\",\"$1 $2\",[\"[12]\"],\"0$1\"]],\"0\"],\"MO\":[\"853\",\"00\",\"(?:28|[68]\\\\d)\\\\d{6}\",[8],[[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[268]\"]]]],\"MP\":[\"1\",\"011\",\"[58]\\\\d{9}|(?:67|90)0\\\\d{7}\",[10],0,\"1\",0,\"1|([2-9]\\\\d{6})$\",\"670$1\",0,\"670\"],\"MQ\":[\"596\",\"00\",\"69\\\\d{7}|(?:59|97)6\\\\d{6}\",[9],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[569]\"],\"0$1\"]],\"0\"],\"MR\":[\"222\",\"00\",\"(?:[2-4]\\\\d\\\\d|800)\\\\d{5}\",[8],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[2-48]\"]]]],\"MS\":[\"1\",\"011\",\"66449\\\\d{5}|(?:[58]\\\\d\\\\d|900)\\\\d{7}\",[10],0,\"1\",0,\"1|(4\\\\d{6})$\",\"664$1\",0,\"664\"],\"MT\":[\"356\",\"00\",\"3550\\\\d{4}|(?:[2579]\\\\d\\\\d|800)\\\\d{5}\",[8],[[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[2357-9]\"]]]],\"MU\":[\"230\",\"0(?:0|[24-7]0|3[03])\",\"(?:[2-468]|5\\\\d)\\\\d{6}\",[7,8],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[2-46]|8[013]\"]],[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"5\"]]],0,0,0,0,0,0,0,\"020\"],\"MV\":[\"960\",\"0(?:0|19)\",\"(?:800|9[0-57-9]\\\\d)\\\\d{7}|[34679]\\\\d{6}\",[7,10],[[\"(\\\\d{3})(\\\\d{4})\",\"$1-$2\",[\"[3467]|9[13-9]\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[89]\"]]],0,0,0,0,0,0,0,\"00\"],\"MW\":[\"265\",\"00\",\"1\\\\d{6}(?:\\\\d{2})?|(?:[23]1|77|88|99)\\\\d{7}\",[7,9],[[\"(\\\\d)(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"1[2-9]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"2\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"3\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[17-9]\"],\"0$1\"]],\"0\"],\"MX\":[\"52\",\"0[09]\",\"(?:1(?:[01467]\\\\d|[2359][1-9]|8[1-79])|[2-9]\\\\d)\\\\d{8}\",[10,11],[[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"33|5[56]|81\"],0,1],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[2-9]\"],0,1],[\"(\\\\d)(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$2 $3 $4\",[\"1(?:33|5[56]|81)\"],0,1],[\"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$2 $3 $4\",[\"1\"],0,1]],\"01\",0,\"0(?:[12]|4[45])|1\",0,0,0,0,\"00\"],\"MY\":[\"60\",\"00\",\"1\\\\d{8,9}|(?:3\\\\d|[4-9])\\\\d{7}\",[8,9,10],[[\"(\\\\d)(\\\\d{3})(\\\\d{4})\",\"$1-$2 $3\",[\"[4-79]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1-$2 $3\",[\"1(?:[02469]|[37][2-9]|8[1-9])|8\"],\"0$1\"],[\"(\\\\d)(\\\\d{4})(\\\\d{4})\",\"$1-$2 $3\",[\"3\"],\"0$1\"],[\"(\\\\d)(\\\\d{3})(\\\\d{2})(\\\\d{4})\",\"$1-$2-$3-$4\",[\"1[36-8]\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1-$2 $3\",[\"15\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$1-$2 $3\",[\"1\"],\"0$1\"]],\"0\"],\"MZ\":[\"258\",\"00\",\"(?:2|8\\\\d)\\\\d{7}\",[8,9],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"2|8[2-7]\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"8\"]]]],\"NA\":[\"264\",\"00\",\"[68]\\\\d{7,8}\",[8,9],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"88\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"6\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"87\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"8\"],\"0$1\"]],\"0\"],\"NC\":[\"687\",\"00\",\"[2-57-9]\\\\d{5}\",[6],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1.$2.$3\",[\"[2-57-9]\"]]]],\"NE\":[\"227\",\"00\",\"[0289]\\\\d{7}\",[8],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"08\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[089]|2[01]\"]]]],\"NF\":[\"672\",\"00\",\"[13]\\\\d{5}\",[6],[[\"(\\\\d{2})(\\\\d{4})\",\"$1 $2\",[\"1\"]],[\"(\\\\d)(\\\\d{5})\",\"$1 $2\",[\"3\"]]],0,0,\"([0-258]\\\\d{4})$\",\"3$1\"],\"NG\":[\"234\",\"009\",\"(?:[124-7]|9\\\\d{3})\\\\d{6}|[1-9]\\\\d{7}|[78]\\\\d{9,13}\",[7,8,10,11,12,13,14],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3\",[\"78\"],\"0$1\"],[\"(\\\\d)(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[12]|9(?:0[3-9]|[1-9])\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{2,3})\",\"$1 $2 $3\",[\"[3-7]|8[2-9]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[7-9]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{4})(\\\\d{4,5})\",\"$1 $2 $3\",[\"[78]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{5})(\\\\d{5,6})\",\"$1 $2 $3\",[\"[78]\"],\"0$1\"]],\"0\"],\"NI\":[\"505\",\"00\",\"(?:1800|[25-8]\\\\d{3})\\\\d{4}\",[8],[[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[125-8]\"]]]],\"NL\":[\"31\",\"00\",\"(?:[124-7]\\\\d\\\\d|3(?:[02-9]\\\\d|1[0-8]))\\\\d{6}|[89]\\\\d{6,9}|1\\\\d{4,5}\",[5,6,7,8,9,10],[[\"(\\\\d{3})(\\\\d{4,7})\",\"$1 $2\",[\"[89]0\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{7})\",\"$1 $2\",[\"66\"],\"0$1\"],[\"(\\\\d)(\\\\d{8})\",\"$1 $2\",[\"6\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"1[16-8]|2[259]|3[124]|4[17-9]|5[124679]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[1-57-9]\"],\"0$1\"]],\"0\"],\"NO\":[\"47\",\"00\",\"(?:0|[2-9]\\\\d{3})\\\\d{4}\",[5,8],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3\",[\"[489]|5[89]\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[235-7]\"]]],0,0,0,0,0,\"[02-689]|7[0-8]\"],\"NP\":[\"977\",\"00\",\"9\\\\d{9}|[1-9]\\\\d{7}\",[8,10],[[\"(\\\\d)(\\\\d{7})\",\"$1-$2\",[\"1[2-6]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{6})\",\"$1-$2\",[\"[1-8]|9(?:[1-579]|6[2-6])\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{7})\",\"$1-$2\",[\"9\"]]],\"0\"],\"NR\":[\"674\",\"00\",\"(?:444|55\\\\d|888)\\\\d{4}\",[7],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[458]\"]]]],\"NU\":[\"683\",\"00\",\"(?:[47]|888\\\\d)\\\\d{3}\",[4,7],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"8\"]]]],\"NZ\":[\"64\",\"0(?:0|161)\",\"[28]\\\\d{7,9}|[346]\\\\d{7}|(?:508|[79]\\\\d)\\\\d{6,7}\",[8,9,10],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3\",[\"[89]0\"],\"0$1\"],[\"(\\\\d)(\\\\d{3})(\\\\d{4})\",\"$1-$2 $3\",[\"24|[346]|7[2-57-9]|9[2-9]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"2(?:10|74)|[59]|80\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3,4})(\\\\d{4})\",\"$1 $2 $3\",[\"2[028]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,5})\",\"$1 $2 $3\",[\"2(?:[169]|7[0-35-9])|7|86\"],\"0$1\"]],\"0\",0,0,0,0,0,0,\"00\"],\"OM\":[\"968\",\"00\",\"(?:[279]\\\\d{3}|500)\\\\d{4}|8007\\\\d{4,5}\",[7,8,9],[[\"(\\\\d{3})(\\\\d{4,6})\",\"$1 $2\",[\"[58]\"]],[\"(\\\\d{2})(\\\\d{6})\",\"$1 $2\",[\"2\"]],[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[79]\"]]]],\"PA\":[\"507\",\"00\",\"(?:[1-57-9]|6\\\\d)\\\\d{6}\",[7,8],[[\"(\\\\d{3})(\\\\d{4})\",\"$1-$2\",[\"[1-57-9]\"]],[\"(\\\\d{4})(\\\\d{4})\",\"$1-$2\",[\"6\"]]]],\"PE\":[\"51\",\"19(?:1[124]|77|90)00\",\"(?:[14-8]|9\\\\d)\\\\d{7}\",[8,9],[[\"(\\\\d{3})(\\\\d{5})\",\"$1 $2\",[\"80\"],\"(0$1)\"],[\"(\\\\d)(\\\\d{7})\",\"$1 $2\",[\"1\"],\"(0$1)\"],[\"(\\\\d{2})(\\\\d{6})\",\"$1 $2\",[\"[4-8]\"],\"(0$1)\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"9\"]]],\"0\",0,0,0,0,0,0,0,\" Anexo \"],\"PF\":[\"689\",\"00\",\"[48]\\\\d{7}|4\\\\d{5}\",[6,8],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3\",[\"44\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[48]\"]]]],\"PG\":[\"675\",\"00|140[1-3]\",\"(?:180|[78]\\\\d{3})\\\\d{4}|(?:[2-589]\\\\d|64)\\\\d{5}\",[7,8],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"18|[2-69]|85\"]],[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[78]\"]]],0,0,0,0,0,0,0,\"00\"],\"PH\":[\"63\",\"00\",\"1800\\\\d{7,9}|(?:2|[89]\\\\d{4})\\\\d{5}|[2-8]\\\\d{8}|[28]\\\\d{7}\",[6,8,9,10,11,12,13],[[\"(\\\\d)(\\\\d{5})\",\"$1 $2\",[\"2\"],\"(0$1)\"],[\"(\\\\d)(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"2\"],\"(0$1)\"],[\"(\\\\d{4})(\\\\d{4,6})\",\"$1 $2\",[\"3(?:23|39|46)|4(?:2[3-6]|[35]9|4[26]|76)|544|88[245]|(?:52|64|86)2\",\"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]))\"],\"(0$1)\"],[\"(\\\\d{5})(\\\\d{4})\",\"$1 $2\",[\"346|4(?:27|9[35])|883\",\"3469|4(?:279|9(?:30|56))|8834\"],\"(0$1)\"],[\"(\\\\d)(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"2\"],\"(0$1)\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[3-7]|8[2-8]\"],\"(0$1)\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[89]\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"1\"]],[\"(\\\\d{4})(\\\\d{1,2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3 $4\",[\"1\"]]],\"0\"],\"PK\":[\"92\",\"00\",\"122\\\\d{6}|[24-8]\\\\d{10,11}|9(?:[013-9]\\\\d{8,10}|2(?:[01]\\\\d\\\\d|2(?:[025-8]\\\\d|1[01]))\\\\d{7})|(?:[2-8]\\\\d{3}|92(?:[0-7]\\\\d|8[1-9]))\\\\d{6}|[24-9]\\\\d{8}|[89]\\\\d{7}\",[8,9,10,11,12],[[\"(\\\\d{3})(\\\\d{3})(\\\\d{2})\",\"$1 $2 $3\",[\"[89]0\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{5})\",\"$1 $2\",[\"1\"]],[\"(\\\\d{2})(\\\\d{7,8})\",\"$1 $2\",[\"(?:2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91)[2-9]\"],\"(0$1)\"],[\"(\\\\d{3})(\\\\d{6,7})\",\"$1 $2\",[\"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(?:2[2-8]|3[27-9]|4[2-6]|6[3569]|9[25-8])\",\"9(?:2[3-8]|98)|(?: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(?:22|3[27-9]|4[2-6]|6[3569]|9[25-7]))[2-9]\"],\"(0$1)\"],[\"(\\\\d{5})(\\\\d{5})\",\"$1 $2\",[\"58\"],\"(0$1)\"],[\"(\\\\d{3})(\\\\d{7})\",\"$1 $2\",[\"3\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3 $4\",[\"2[125]|4[0-246-9]|5[1-35-7]|6[1-8]|7[14]|8[16]|91\"],\"(0$1)\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3 $4\",[\"[24-9]\"],\"(0$1)\"]],\"0\"],\"PL\":[\"48\",\"00\",\"[1-57-9]\\\\d{6}(?:\\\\d{2})?|6\\\\d{5,8}\",[6,7,8,9],[[\"(\\\\d{5})\",\"$1\",[\"19\"]],[\"(\\\\d{3})(\\\\d{3})\",\"$1 $2\",[\"11|64\"]],[\"(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\"$1 $2 $3\",[\"(?: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])1\",\"(?: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])19\"]],[\"(\\\\d{3})(\\\\d{2})(\\\\d{2,3})\",\"$1 $2 $3\",[\"64\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"39|45|5[0137]|6[0469]|7[02389]|8[08]\"]],[\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"1[2-8]|[2-8]|9[145]\"]]]],\"PM\":[\"508\",\"00\",\"[45]\\\\d{5}\",[6],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3\",[\"[45]\"],\"0$1\"]],\"0\"],\"PR\":[\"1\",\"011\",\"(?:[589]\\\\d\\\\d|787)\\\\d{7}\",[10],0,\"1\",0,0,0,0,\"787|939\"],\"PS\":[\"970\",\"00\",\"[2489]2\\\\d{6}|(?:1\\\\d|5)\\\\d{8}\",[8,9,10],[[\"(\\\\d)(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[2489]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"5\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"1\"]]],\"0\"],\"PT\":[\"351\",\"00\",\"(?:[26-9]\\\\d|30)\\\\d{7}\",[9],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"2[12]\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[236-9]\"]]]],\"PW\":[\"680\",\"01[12]\",\"(?:[25-8]\\\\d\\\\d|345|488|900)\\\\d{4}\",[7],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[2-9]\"]]]],\"PY\":[\"595\",\"00\",\"59\\\\d{4,6}|(?:[2-46-9]\\\\d|5[0-8])\\\\d{4,7}\",[6,7,8,9],[[\"(\\\\d{3})(\\\\d{3,6})\",\"$1 $2\",[\"[2-9]0\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{5})\",\"$1 $2\",[\"[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36]\"],\"(0$1)\"],[\"(\\\\d{3})(\\\\d{4,5})\",\"$1 $2\",[\"2[279]|3[13-5]|4[359]|5|6[347]|7[46-8]|85\"],\"(0$1)\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[26]1|3[289]|4[1246-8]|7[1-3]|8[1-36]\"],\"(0$1)\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"87\"]],[\"(\\\\d{3})(\\\\d{6})\",\"$1 $2\",[\"9\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[2-8]\"],\"0$1\"]],\"0\"],\"QA\":[\"974\",\"00\",\"[2-7]\\\\d{7}|(?:2\\\\d\\\\d|800)\\\\d{4}\",[7,8],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"2[126]|8\"]],[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[2-7]\"]]]],\"RE\":[\"262\",\"00\",\"9769\\\\d{5}|(?:26|[68]\\\\d)\\\\d{7}\",[9],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[2689]\"],\"0$1\"]],\"0\",0,0,0,0,\"26[23]|69|[89]\"],\"RO\":[\"40\",\"00\",\"(?:[237]\\\\d|[89]0)\\\\d{7}|[23]\\\\d{5}\",[6,9],[[\"(\\\\d{3})(\\\\d{3})\",\"$1 $2\",[\"2[3-6]\",\"2[3-6]\\\\d9\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{4})\",\"$1 $2\",[\"219|31\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[23]1\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[237-9]\"],\"0$1\"]],\"0\",0,0,0,0,0,0,0,\" int \"],\"RS\":[\"381\",\"00\",\"38[02-9]\\\\d{6,9}|6\\\\d{7,9}|90\\\\d{4,8}|38\\\\d{5,6}|(?:7\\\\d\\\\d|800)\\\\d{3,9}|(?:[12]\\\\d|3[0-79])\\\\d{5,10}\",[6,7,8,9,10,11,12],[[\"(\\\\d{3})(\\\\d{3,9})\",\"$1 $2\",[\"(?:2[389]|39)0|[7-9]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{5,10})\",\"$1 $2\",[\"[1-36]\"],\"0$1\"]],\"0\"],\"RU\":[\"7\",\"810\",\"[347-9]\\\\d{9}\",[10],[[\"(\\\\d{4})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"7(?:1[0-8]|2[1-9])\",\"7(?:1(?:[0-6]2|7|8[27])|2(?:1[23]|[2-9]2))\",\"7(?:1(?:[0-6]2|7|8[27])|2(?:13[03-69]|62[013-9]))|72[1-57-9]2\"],\"8 ($1)\",1],[\"(\\\\d{5})(\\\\d)(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"7(?:1[0-68]|2[1-9])\",\"7(?:1(?:[06][3-6]|[18]|2[35]|[3-5][3-5])|2(?:[13][3-5]|[24-689]|7[457]))\",\"7(?:1(?:0(?:[356]|4[023])|[18]|2(?:3[013-9]|5)|3[45]|43[013-79]|5(?:3[1-8]|4[1-7]|5)|6(?:3[0-35-9]|[4-6]))|2(?:1(?:3[178]|[45])|[24-689]|3[35]|7[457]))|7(?:14|23)4[0-8]|71(?:33|45)[1-79]\"],\"8 ($1)\",1],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"7\"],\"8 ($1)\",1],[\"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2-$3-$4\",[\"[3489]\"],\"8 ($1)\",1]],\"8\",0,0,0,0,\"3[04-689]|[489]\",0,\"8~10\"],\"RW\":[\"250\",\"00\",\"(?:06|[27]\\\\d\\\\d|[89]00)\\\\d{6}\",[8,9],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"0\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"2\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[7-9]\"],\"0$1\"]],\"0\"],\"SA\":[\"966\",\"00\",\"92\\\\d{7}|(?:[15]|8\\\\d)\\\\d{8}\",[9,10],[[\"(\\\\d{4})(\\\\d{5})\",\"$1 $2\",[\"9\"]],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"1\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"5\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"81\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"8\"]]],\"0\"],\"SB\":[\"677\",\"0[01]\",\"(?:[1-6]|[7-9]\\\\d\\\\d)\\\\d{4}\",[5,7],[[\"(\\\\d{2})(\\\\d{5})\",\"$1 $2\",[\"7|8[4-9]|9(?:[1-8]|9[0-8])\"]]]],\"SC\":[\"248\",\"010|0[0-2]\",\"8000\\\\d{3}|(?:[249]\\\\d|64)\\\\d{5}\",[7],[[\"(\\\\d)(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[246]\"]]],0,0,0,0,0,0,0,\"00\"],\"SD\":[\"249\",\"00\",\"[19]\\\\d{8}\",[9],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[19]\"],\"0$1\"]],\"0\"],\"SE\":[\"46\",\"00\",\"(?:[26]\\\\d\\\\d|9)\\\\d{9}|[1-9]\\\\d{8}|[1-689]\\\\d{7}|[1-4689]\\\\d{6}|2\\\\d{5}\",[6,7,8,9,10],[[\"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})\",\"$1-$2 $3\",[\"20\"],\"0$1\",0,\"$1 $2 $3\"],[\"(\\\\d{3})(\\\\d{4})\",\"$1-$2\",[\"9(?:00|39|44)\"],\"0$1\",0,\"$1 $2\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{2})\",\"$1-$2 $3\",[\"[12][136]|3[356]|4[0246]|6[03]|90[1-9]\"],\"0$1\",0,\"$1 $2 $3\"],[\"(\\\\d)(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\",\"$1-$2 $3 $4\",[\"8\"],\"0$1\",0,\"$1 $2 $3 $4\"],[\"(\\\\d{3})(\\\\d{2,3})(\\\\d{2})\",\"$1-$2 $3\",[\"1[2457]|2(?:[247-9]|5[0138])|3[0247-9]|4[1357-9]|5[0-35-9]|6(?:[125689]|4[02-57]|7[0-2])|9(?:[125-8]|3[02-5]|4[0-3])\"],\"0$1\",0,\"$1 $2 $3\"],[\"(\\\\d{3})(\\\\d{2,3})(\\\\d{3})\",\"$1-$2 $3\",[\"9(?:00|39|44)\"],\"0$1\",0,\"$1 $2 $3\"],[\"(\\\\d{2})(\\\\d{2,3})(\\\\d{2})(\\\\d{2})\",\"$1-$2 $3 $4\",[\"1[013689]|2[0136]|3[1356]|4[0246]|54|6[03]|90[1-9]\"],\"0$1\",0,\"$1 $2 $3 $4\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1-$2 $3 $4\",[\"7\"],\"0$1\",0,\"$1 $2 $3 $4\"],[\"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{2})\",\"$1-$2 $3 $4\",[\"8\"],\"0$1\",0,\"$1 $2 $3 $4\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1-$2 $3 $4\",[\"[13-5]|2(?:[247-9]|5[0138])|6(?:[124-689]|7[0-2])|9(?:[125-8]|3[02-5]|4[0-3])\"],\"0$1\",0,\"$1 $2 $3 $4\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{3})\",\"$1-$2 $3 $4\",[\"9\"],\"0$1\",0,\"$1 $2 $3 $4\"],[\"(\\\\d{3})(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1-$2 $3 $4 $5\",[\"[26]\"],\"0$1\",0,\"$1 $2 $3 $4 $5\"]],\"0\"],\"SG\":[\"65\",\"0[0-3]\\\\d\",\"(?:(?:1\\\\d|8)\\\\d\\\\d|7000)\\\\d{7}|[3689]\\\\d{7}\",[8,10,11],[[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[369]|8[1-9]\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"8\"]],[\"(\\\\d{4})(\\\\d{4})(\\\\d{3})\",\"$1 $2 $3\",[\"7\"]],[\"(\\\\d{4})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"1\"]]]],\"SH\":[\"290\",\"00\",\"(?:[256]\\\\d|8)\\\\d{3}\",[4,5],0,0,0,0,0,0,\"[256]\"],\"SI\":[\"386\",\"00|10(?:22|66|88|99)\",\"[1-7]\\\\d{7}|8\\\\d{4,7}|90\\\\d{4,6}\",[5,6,7,8],[[\"(\\\\d{2})(\\\\d{3,6})\",\"$1 $2\",[\"8[09]|9\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{5})\",\"$1 $2\",[\"59|8\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[37][01]|4[0139]|51|6\"],\"0$1\"],[\"(\\\\d)(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[1-57]\"],\"(0$1)\"]],\"0\",0,0,0,0,0,0,\"00\"],\"SJ\":[\"47\",\"00\",\"0\\\\d{4}|(?:[4589]\\\\d|79)\\\\d{6}\",[5,8],0,0,0,0,0,0,\"79\"],\"SK\":[\"421\",\"00\",\"[2-689]\\\\d{8}|[2-59]\\\\d{6}|[2-5]\\\\d{5}\",[6,7,9],[[\"(\\\\d)(\\\\d{2})(\\\\d{3,4})\",\"$1 $2 $3\",[\"21\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{2})(\\\\d{2,3})\",\"$1 $2 $3\",[\"[3-5][1-8]1\",\"[3-5][1-8]1[67]\"],\"0$1\"],[\"(\\\\d)(\\\\d{3})(\\\\d{3})(\\\\d{2})\",\"$1/$2 $3 $4\",[\"2\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[689]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1/$2 $3 $4\",[\"[3-5]\"],\"0$1\"]],\"0\"],\"SL\":[\"232\",\"00\",\"(?:[2378]\\\\d|99)\\\\d{6}\",[8],[[\"(\\\\d{2})(\\\\d{6})\",\"$1 $2\",[\"[237-9]\"],\"(0$1)\"]],\"0\"],\"SM\":[\"378\",\"00\",\"(?:0549|[5-7]\\\\d)\\\\d{6}\",[8,10],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[5-7]\"]],[\"(\\\\d{4})(\\\\d{6})\",\"$1 $2\",[\"0\"]]],0,0,\"([89]\\\\d{5})$\",\"0549$1\"],\"SN\":[\"221\",\"00\",\"(?:[378]\\\\d{4}|93330)\\\\d{4}\",[9],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"8\"]],[\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[379]\"]]]],\"SO\":[\"252\",\"00\",\"[346-9]\\\\d{8}|[12679]\\\\d{7}|(?:[1-4]\\\\d|59)\\\\d{5}|[1348]\\\\d{5}\",[6,7,8,9],[[\"(\\\\d{2})(\\\\d{4})\",\"$1 $2\",[\"8[125]\"]],[\"(\\\\d{6})\",\"$1\",[\"[134]\"]],[\"(\\\\d)(\\\\d{6})\",\"$1 $2\",[\"1|2[0-79]|3[0-46-8]|4[0-7]|59\"]],[\"(\\\\d)(\\\\d{7})\",\"$1 $2\",[\"24|[67]\"]],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[348]|64|79[0-8]|90\"]],[\"(\\\\d{2})(\\\\d{5,7})\",\"$1 $2\",[\"1|28|6[1-35-9]|799|9[2-9]\"]]],\"0\"],\"SR\":[\"597\",\"00\",\"(?:[2-5]|68|[78]\\\\d)\\\\d{5}\",[6,7],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1-$2-$3\",[\"56\"]],[\"(\\\\d{3})(\\\\d{3})\",\"$1-$2\",[\"[2-5]\"]],[\"(\\\\d{3})(\\\\d{4})\",\"$1-$2\",[\"[6-8]\"]]]],\"SS\":[\"211\",\"00\",\"[19]\\\\d{8}\",[9],[[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[19]\"],\"0$1\"]],\"0\"],\"ST\":[\"239\",\"00\",\"(?:22|9\\\\d)\\\\d{5}\",[7],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[29]\"]]]],\"SV\":[\"503\",\"00\",\"[267]\\\\d{7}|[89]00\\\\d{4}(?:\\\\d{4})?\",[7,8,11],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[89]\"]],[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[267]\"]],[\"(\\\\d{3})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"[89]\"]]]],\"SX\":[\"1\",\"011\",\"7215\\\\d{6}|(?:[58]\\\\d\\\\d|900)\\\\d{7}\",[10],0,\"1\",0,\"1|(5\\\\d{6})$\",\"721$1\",0,\"721\"],\"SY\":[\"963\",\"00\",\"[1-39]\\\\d{8}|[1-5]\\\\d{7}\",[8,9],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[1-5]\"],\"0$1\",1],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"9\"],\"0$1\",1]],\"0\"],\"SZ\":[\"268\",\"00\",\"0800\\\\d{4}|(?:[237]\\\\d|900)\\\\d{6}\",[8,9],[[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[0237]\"]],[\"(\\\\d{5})(\\\\d{4})\",\"$1 $2\",[\"9\"]]]],\"TA\":[\"290\",\"00\",\"8\\\\d{3}\",[4],0,0,0,0,0,0,\"8\"],\"TC\":[\"1\",\"011\",\"(?:[58]\\\\d\\\\d|649|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([2-479]\\\\d{6})$\",\"649$1\",0,\"649\"],\"TD\":[\"235\",\"00|16\",\"(?:22|[69]\\\\d|77)\\\\d{6}\",[8],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[2679]\"]]],0,0,0,0,0,0,0,\"00\"],\"TG\":[\"228\",\"00\",\"[279]\\\\d{7}\",[8],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[279]\"]]]],\"TH\":[\"66\",\"00[1-9]\",\"1\\\\d{8,9}|(?:[2-57]|[689]\\\\d)\\\\d{7}\",[8,9,10],[[\"(\\\\d)(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"2\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"14|[3-9]\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"1\"]]],\"0\"],\"TJ\":[\"992\",\"810\",\"(?:00|[3-59]\\\\d|77|88)\\\\d{7}\",[9],[[\"(\\\\d{6})(\\\\d)(\\\\d{2})\",\"$1 $2 $3\",[\"331\",\"3317\"],0,1],[\"(\\\\d{3})(\\\\d{2})(\\\\d{4})\",\"$1 $2 $3\",[\"[34]7|91[78]\"],0,1],[\"(\\\\d{4})(\\\\d)(\\\\d{4})\",\"$1 $2 $3\",[\"3\"],0,1],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[0457-9]\"],0,1]],\"8\",0,0,0,0,0,0,\"8~10\"],\"TK\":[\"690\",\"00\",\"[2-47]\\\\d{3,6}\",[4,5,6,7]],\"TL\":[\"670\",\"00\",\"7\\\\d{7}|(?:[2-47]\\\\d|[89]0)\\\\d{5}\",[7,8],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[2-489]|70\"]],[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"7\"]]]],\"TM\":[\"993\",\"810\",\"[1-6]\\\\d{7}\",[8],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2-$3-$4\",[\"12\"],\"(8 $1)\"],[\"(\\\\d{3})(\\\\d)(\\\\d{2})(\\\\d{2})\",\"$1 $2-$3-$4\",[\"[1-5]\"],\"(8 $1)\"],[\"(\\\\d{2})(\\\\d{6})\",\"$1 $2\",[\"6\"],\"8 $1\"]],\"8\",0,0,0,0,0,0,\"8~10\"],\"TN\":[\"216\",\"00\",\"[2-57-9]\\\\d{7}\",[8],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[2-57-9]\"]]]],\"TO\":[\"676\",\"00\",\"(?:0800|[5-8]\\\\d{3})\\\\d{3}|[2-8]\\\\d{4}\",[5,7],[[\"(\\\\d{2})(\\\\d{3})\",\"$1-$2\",[\"[2-4]|50|6[09]|7[0-24-69]|8[05]\"]],[\"(\\\\d{4})(\\\\d{3})\",\"$1 $2\",[\"0\"]],[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[5-8]\"]]]],\"TR\":[\"90\",\"00\",\"(?:[2-58]\\\\d\\\\d|900)\\\\d{7}|4\\\\d{6}\",[7,10],[[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"512|8[0589]|90\"],\"0$1\",1],[\"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"5(?:[0-59]|61)\",\"5(?:[0-59]|616)\",\"5(?:[0-59]|6161)\"],\"0$1\",1],[\"(\\\\d{3})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[24][1-8]|3[1-9]\"],\"(0$1)\",1]],\"0\"],\"TT\":[\"1\",\"011\",\"(?:[58]\\\\d\\\\d|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([2-46-8]\\\\d{6})$\",\"868$1\",0,\"868\"],\"TV\":[\"688\",\"00\",\"(?:2|7\\\\d\\\\d|90)\\\\d{4}\",[5,6,7]],\"TW\":[\"886\",\"0(?:0[25-79]|19)\",\"[2-689]\\\\d{8}|7\\\\d{9,10}|[2-8]\\\\d{7}|2\\\\d{6}\",[7,8,9,10,11],[[\"(\\\\d{2})(\\\\d)(\\\\d{4})\",\"$1 $2 $3\",[\"202\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[258]0\"],\"0$1\"],[\"(\\\\d)(\\\\d{3,4})(\\\\d{4})\",\"$1 $2 $3\",[\"[23568]|4(?:0[02-48]|[1-47-9])|7[1-9]\",\"[23568]|4(?:0[2-48]|[1-47-9])|(?:400|7)[1-9]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[49]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{4})(\\\\d{4,5})\",\"$1 $2 $3\",[\"7\"],\"0$1\"]],\"0\",0,0,0,0,0,0,0,\"#\"],\"TZ\":[\"255\",\"00[056]\",\"(?:[26-8]\\\\d|41|90)\\\\d{7}\",[9],[[\"(\\\\d{3})(\\\\d{2})(\\\\d{4})\",\"$1 $2 $3\",[\"[89]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[24]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[67]\"],\"0$1\"]],\"0\"],\"UA\":[\"380\",\"00\",\"[89]\\\\d{9}|[3-9]\\\\d{8}\",[9,10],[[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"6[12][29]|(?:3[1-8]|4[136-8]|5[12457]|6[49])2|(?:56|65)[24]\",\"6[12][29]|(?:35|4[1378]|5[12457]|6[49])2|(?:56|65)[24]|(?:3[1-46-8]|46)2[013-9]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"4[45][0-5]|5(?:0|6[37])|6(?:[12][018]|[36-8])|7|89|9[1-9]|(?:48|57)[0137-9]\",\"4[45][0-5]|5(?:0|6(?:3[14-7]|7))|6(?:[12][018]|[36-8])|7|89|9[1-9]|(?:48|57)[0137-9]\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{5})\",\"$1 $2\",[\"[3-6]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[89]\"],\"0$1\"]],\"0\",0,0,0,0,0,0,\"0~0\"],\"UG\":[\"256\",\"00[057]\",\"800\\\\d{6}|(?:[29]0|[347]\\\\d)\\\\d{7}\",[9],[[\"(\\\\d{4})(\\\\d{5})\",\"$1 $2\",[\"202\",\"2024\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{6})\",\"$1 $2\",[\"[27-9]|4(?:6[45]|[7-9])\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{7})\",\"$1 $2\",[\"[34]\"],\"0$1\"]],\"0\"],\"US\":[\"1\",\"011\",\"[2-9]\\\\d{9}\",[10],[[\"(\\\\d{3})(\\\\d{3})(\\\\d{4})\",\"($1) $2-$3\",[\"[2-9]\"],0,1,\"$1-$2-$3\"]],\"1\",0,0,0,0,0,[[\"(?:2(?:0[1-35-9]|1[02-9]|2[03-589]|3[149]|4[08]|5[1-46]|6[0279]|7[0269]|8[13])|3(?:0[1-57-9]|1[02-9]|2[0135]|3[0-24679]|4[167]|5[12]|6[014]|8[056])|4(?:0[124-9]|1[02-579]|2[3-5]|3[0245]|4[0235]|58|6[39]|7[0589]|8[04])|5(?:0[1-57-9]|1[0235-8]|20|3[0149]|4[01]|5[19]|6[1-47]|7[013-5]|8[056])|6(?:0[1-35-9]|1[024-9]|2[03689]|[34][016]|5[017]|6[0-279]|78|8[0-29])|7(?:0[1-46-8]|1[2-9]|2[04-7]|3[1247]|4[037]|5[47]|6[02359]|7[02-59]|8[156])|8(?:0[1-68]|1[02-8]|2[08]|3[0-28]|4[3578]|5[046-9]|6[02-5]|7[028])|9(?:0[1346-9]|1[02-9]|2[0589]|3[0146-8]|4[0179]|5[12469]|7[0-389]|8[04-69]))[2-9]\\\\d{6}\"],[\"\"],[\"8(?:00|33|44|55|66|77|88)[2-9]\\\\d{6}\"],[\"900[2-9]\\\\d{6}\"],[\"5(?:00|2[12]|33|44|66|77|88)[2-9]\\\\d{6}\"],0,[\"710[2-9]\\\\d{6}\"]]],\"UY\":[\"598\",\"0(?:0|1[3-9]\\\\d)\",\"(?:[249]\\\\d\\\\d|80)\\\\d{5}|9\\\\d{6}\",[7,8],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"8|90\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"9\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{4})\",\"$1 $2\",[\"[24]\"]]],\"0\",0,0,0,0,0,0,\"00\",\" int. \"],\"UZ\":[\"998\",\"810\",\"[679]\\\\d{8}\",[9],[[\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[679]\"],\"8 $1\"]],\"8\",0,0,0,0,0,0,\"8~10\"],\"VA\":[\"39\",\"00\",\"0\\\\d{5,10}|3[0-8]\\\\d{7,10}|55\\\\d{8}|8\\\\d{5}(?:\\\\d{2,4})?|(?:1\\\\d|39)\\\\d{7,8}\",[6,7,8,9,10,11],0,0,0,0,0,0,\"06698\"],\"VC\":[\"1\",\"011\",\"(?:[58]\\\\d\\\\d|784|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([2-7]\\\\d{6})$\",\"784$1\",0,\"784\"],\"VE\":[\"58\",\"00\",\"[89]00\\\\d{7}|(?:[24]\\\\d|50)\\\\d{8}\",[10],[[\"(\\\\d{3})(\\\\d{7})\",\"$1-$2\",[\"[24589]\"],\"0$1\"]],\"0\"],\"VG\":[\"1\",\"011\",\"(?:284|[58]\\\\d\\\\d|900)\\\\d{7}\",[10],0,\"1\",0,\"1|([2-578]\\\\d{6})$\",\"284$1\",0,\"284\"],\"VI\":[\"1\",\"011\",\"[58]\\\\d{9}|(?:34|90)0\\\\d{7}\",[10],0,\"1\",0,\"1|([2-9]\\\\d{6})$\",\"340$1\",0,\"340\"],\"VN\":[\"84\",\"00\",\"[12]\\\\d{9}|[135-9]\\\\d{8}|[16]\\\\d{7}|[16-8]\\\\d{6}\",[7,8,9,10],[[\"(\\\\d{2})(\\\\d{5})\",\"$1 $2\",[\"80\"],\"0$1\",1],[\"(\\\\d{4})(\\\\d{4,6})\",\"$1 $2\",[\"1\"],0,1],[\"(\\\\d{2})(\\\\d{3})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3 $4\",[\"[69]\"],\"0$1\",1],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[3578]\"],\"0$1\",1],[\"(\\\\d{2})(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\",[\"2[48]\"],\"0$1\",1],[\"(\\\\d{3})(\\\\d{4})(\\\\d{3})\",\"$1 $2 $3\",[\"2\"],\"0$1\",1]],\"0\"],\"VU\":[\"678\",\"00\",\"(?:[23]\\\\d|[48]8)\\\\d{3}|(?:[57]\\\\d|90)\\\\d{5}\",[5,7],[[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"[579]\"]]]],\"WF\":[\"681\",\"00\",\"(?:[45]0|68|72|8\\\\d)\\\\d{4}\",[6],[[\"(\\\\d{2})(\\\\d{2})(\\\\d{2})\",\"$1 $2 $3\",[\"[4-8]\"]]]],\"WS\":[\"685\",\"0\",\"[2-6]\\\\d{4}|8\\\\d{5}(?:\\\\d{4})?|[78]\\\\d{6}\",[5,6,7,10],[[\"(\\\\d{5})\",\"$1\",[\"[2-6]\"]],[\"(\\\\d{3})(\\\\d{3,7})\",\"$1 $2\",[\"8\"]],[\"(\\\\d{2})(\\\\d{5})\",\"$1 $2\",[\"7\"]]]],\"XK\":[\"383\",\"00\",\"[23]\\\\d{7,8}|(?:4\\\\d\\\\d|[89]00)\\\\d{5}\",[8,9],[[\"(\\\\d{3})(\\\\d{5})\",\"$1 $2\",[\"[89]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[2-4]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[23]\"],\"0$1\"]],\"0\"],\"YE\":[\"967\",\"00\",\"(?:1|7\\\\d)\\\\d{7}|[1-7]\\\\d{6}\",[7,8,9],[[\"(\\\\d)(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"[1-6]|7[24-68]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"7\"],\"0$1\"]],\"0\"],\"YT\":[\"262\",\"00\",\"80\\\\d{7}|(?:26|63)9\\\\d{6}\",[9],0,\"0\",0,0,0,0,\"269|63\"],\"ZA\":[\"27\",\"00\",\"[1-9]\\\\d{8}|8\\\\d{4,7}\",[5,6,7,8,9],[[\"(\\\\d{2})(\\\\d{3,4})\",\"$1 $2\",[\"8[1-4]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{2,3})\",\"$1 $2 $3\",[\"8[1-4]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"860\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"[1-9]\"],\"0$1\"]],\"0\"],\"ZM\":[\"260\",\"00\",\"(?:63|80)0\\\\d{6}|(?:21|[79]\\\\d)\\\\d{7}\",[9],[[\"(\\\\d{3})(\\\\d{3})(\\\\d{3})\",\"$1 $2 $3\",[\"[28]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{7})\",\"$1 $2\",[\"[79]\"],\"0$1\"]],\"0\"],\"ZW\":[\"263\",\"00\",\"2(?:[0-57-9]\\\\d{6,8}|6[0-24-9]\\\\d{6,7})|[38]\\\\d{9}|[35-8]\\\\d{8}|[3-6]\\\\d{7}|[1-689]\\\\d{6}|[1-3569]\\\\d{5}|[1356]\\\\d{4}\",[5,6,7,8,9,10],[[\"(\\\\d{3})(\\\\d{3,5})\",\"$1 $2\",[\"2(?:0[45]|2[278]|[49]8)|3(?:[09]8|17)|6(?:[29]8|37|75)|[23][78]|(?:33|5[15]|6[68])[78]\"],\"0$1\"],[\"(\\\\d)(\\\\d{3})(\\\\d{2,4})\",\"$1 $2 $3\",[\"[49]\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{4})\",\"$1 $2\",[\"80\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{7})\",\"$1 $2\",[\"24|8[13-59]|(?:2[05-79]|39|5[45]|6[15-8])2\",\"2(?:02[014]|4|[56]20|[79]2)|392|5(?:42|525)|6(?:[16-8]21|52[013])|8[13-59]\"],\"(0$1)\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{4})\",\"$1 $2 $3\",[\"7\"],\"0$1\"],[\"(\\\\d{3})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"2(?:1[39]|2[0157]|[378]|[56][14])|3(?:12|29)\",\"2(?:1[39]|2[0157]|[378]|[56][14])|3(?:123|29)\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{6})\",\"$1 $2\",[\"8\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3,5})\",\"$1 $2\",[\"1|2(?:0[0-36-9]|12|29|[56])|3(?:1[0-689]|[24-6])|5(?:[0236-9]|1[2-4])|6(?:[013-59]|7[0-46-9])|(?:33|55|6[68])[0-69]|(?:29|3[09]|62)[0-79]\"],\"0$1\"],[\"(\\\\d{2})(\\\\d{3})(\\\\d{3,4})\",\"$1 $2 $3\",[\"29[013-9]|39|54\"],\"0$1\"],[\"(\\\\d{4})(\\\\d{3,5})\",\"$1 $2\",[\"(?:25|54)8\",\"258|5483\"],\"0$1\"]],\"0\"],\"001\":[\"979\",0,\"\\\\d{9}\",[9],[[\"(\\\\d)(\\\\d{4})(\\\\d{4})\",\"$1 $2 $3\"]]]}}","// This is a legacy function.\n// Use `findNumbers()` instead.\n\nimport _findPhoneNumbers, { searchPhoneNumbers as _searchPhoneNumbers } from './findPhoneNumbers_';\nimport { normalizeArguments } from './parsePhoneNumber';\n\nexport default function findPhoneNumbers() {\n\tvar _normalizeArguments = normalizeArguments(arguments),\n\t text = _normalizeArguments.text,\n\t options = _normalizeArguments.options,\n\t metadata = _normalizeArguments.metadata;\n\n\treturn _findPhoneNumbers(text, options, metadata);\n}\n\n/**\r\n * @return ES6 `for ... of` iterator.\r\n */\nexport function searchPhoneNumbers() {\n\tvar _normalizeArguments2 = normalizeArguments(arguments),\n\t text = _normalizeArguments2.text,\n\t options = _normalizeArguments2.options,\n\t metadata = _normalizeArguments2.metadata;\n\n\treturn _searchPhoneNumbers(text, options, metadata);\n}\n//# sourceMappingURL=findPhoneNumbers.js.map","import _isValidNumber from './validate_';\nimport { normalizeArguments } from './getNumberType';\n\n// Finds out national phone number type (fixed line, mobile, etc)\nexport default function isValidNumber() {\n\tvar _normalizeArguments = normalizeArguments(arguments),\n\t input = _normalizeArguments.input,\n\t options = _normalizeArguments.options,\n\t metadata = _normalizeArguments.metadata;\n\n\treturn _isValidNumber(input, options, metadata);\n}\n//# sourceMappingURL=validate.js.map","var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nvar _slicedToArray = function () { function sliceIterator(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"]) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; } return function (arr, i) { if (Array.isArray(arr)) { return arr; } else if (Symbol.iterator in Object(arr)) { return sliceIterator(arr, i); } else { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); } }; }();\n\nimport _formatNumber from './format_';\nimport parse from './parse_';\n\nexport default function formatNumber() {\n\tvar _normalizeArguments = normalizeArguments(arguments),\n\t input = _normalizeArguments.input,\n\t format = _normalizeArguments.format,\n\t options = _normalizeArguments.options,\n\t metadata = _normalizeArguments.metadata;\n\n\treturn _formatNumber(input, format, options, metadata);\n}\n\n// Sort out arguments\nfunction normalizeArguments(args) {\n\tvar _Array$prototype$slic = Array.prototype.slice.call(args),\n\t _Array$prototype$slic2 = _slicedToArray(_Array$prototype$slic, 5),\n\t arg_1 = _Array$prototype$slic2[0],\n\t arg_2 = _Array$prototype$slic2[1],\n\t arg_3 = _Array$prototype$slic2[2],\n\t arg_4 = _Array$prototype$slic2[3],\n\t arg_5 = _Array$prototype$slic2[4];\n\n\tvar input = void 0;\n\tvar format = void 0;\n\tvar options = void 0;\n\tvar metadata = void 0;\n\n\t// Sort out arguments.\n\n\t// If the phone number is passed as a string.\n\t// `format('8005553535', ...)`.\n\tif (typeof arg_1 === 'string') {\n\t\t// If country code is supplied.\n\t\t// `format('8005553535', 'RU', 'NATIONAL', [options], metadata)`.\n\t\tif (typeof arg_3 === 'string') {\n\t\t\tformat = arg_3;\n\n\t\t\tif (arg_5) {\n\t\t\t\toptions = arg_4;\n\t\t\t\tmetadata = arg_5;\n\t\t\t} else {\n\t\t\t\tmetadata = arg_4;\n\t\t\t}\n\n\t\t\tinput = parse(arg_1, { defaultCountry: arg_2, extended: true }, metadata);\n\t\t}\n\t\t// Just an international phone number is supplied\n\t\t// `format('+78005553535', 'NATIONAL', [options], metadata)`.\n\t\telse {\n\t\t\t\tif (typeof arg_2 !== 'string') {\n\t\t\t\t\tthrow new Error('`format` argument not passed to `formatNumber(number, format)`');\n\t\t\t\t}\n\n\t\t\t\tformat = arg_2;\n\n\t\t\t\tif (arg_4) {\n\t\t\t\t\toptions = arg_3;\n\t\t\t\t\tmetadata = arg_4;\n\t\t\t\t} else {\n\t\t\t\t\tmetadata = arg_3;\n\t\t\t\t}\n\n\t\t\t\tinput = parse(arg_1, { extended: true }, metadata);\n\t\t\t}\n\t}\n\t// If the phone number is passed as a parsed number object.\n\t// `format({ phone: '8005553535', country: 'RU' }, 'NATIONAL', [options], metadata)`.\n\telse if (is_object(arg_1)) {\n\t\t\tinput = arg_1;\n\t\t\tformat = arg_2;\n\n\t\t\tif (arg_4) {\n\t\t\t\toptions = arg_3;\n\t\t\t\tmetadata = arg_4;\n\t\t\t} else {\n\t\t\t\tmetadata = arg_3;\n\t\t\t}\n\t\t} else throw new TypeError('A phone number must either be a string or an object of shape { phone, [country] }.');\n\n\t// Legacy lowercase formats.\n\tif (format === 'International') {\n\t\tformat = 'INTERNATIONAL';\n\t} else if (format === 'National') {\n\t\tformat = 'NATIONAL';\n\t}\n\n\treturn {\n\t\tinput: input,\n\t\tformat: format,\n\t\toptions: options,\n\t\tmetadata: metadata\n\t};\n}\n\n// Babel transforms `typeof` into some \"branches\"\n// so istanbul will show this as \"branch not covered\".\n/* istanbul ignore next */\nvar is_object = function is_object(_) {\n\treturn (typeof _ === 'undefined' ? 'undefined' : _typeof(_)) === 'object';\n};\n//# sourceMappingURL=format.js.map","import _parseNumber from './parse_';\nimport { normalizeArguments } from './parsePhoneNumber';\n\n// `options`:\n// {\n// country:\n// {\n// restrict - (a two-letter country code)\n// the phone number must be in this country\n//\n// default - (a two-letter country code)\n// default country to use for phone number parsing and validation\n// (if no country code could be derived from the phone number)\n// }\n// }\n//\n// Returns `{ country, number }`\n//\n// Example use cases:\n//\n// ```js\n// parse('8 (800) 555-35-35', 'RU')\n// parse('8 (800) 555-35-35', 'RU', metadata)\n// parse('8 (800) 555-35-35', { country: { default: 'RU' } })\n// parse('8 (800) 555-35-35', { country: { default: 'RU' } }, metadata)\n// parse('+7 800 555 35 35')\n// parse('+7 800 555 35 35', metadata)\n// ```\n//\nexport default function parseNumber() {\n\tvar _normalizeArguments = normalizeArguments(arguments),\n\t text = _normalizeArguments.text,\n\t options = _normalizeArguments.options,\n\t metadata = _normalizeArguments.metadata;\n\n\treturn _parseNumber(text, options, metadata);\n}\n//# sourceMappingURL=parse.js.map","// Copy-pasted from:\n// https://github.com/substack/semver-compare/blob/master/index.js\n//\n// Inlining this function because some users reported issues with\n// importing from `semver-compare` in a browser with ES6 \"native\" modules.\nexport default function cmp(a, b) {\n var pa = a.split('.');\n var pb = b.split('.');\n for (var i = 0; i < 3; i++) {\n var na = Number(pa[i]);\n var nb = Number(pb[i]);\n if (na > nb) return 1;\n if (nb > na) return -1;\n if (!isNaN(na) && isNaN(nb)) return 1;\n if (isNaN(na) && !isNaN(nb)) return -1;\n }\n return 0;\n};\n//# sourceMappingURL=semver-compare.js.map","// Deprecated.\r\n// Use `libphonenumber-js/min` or `libphonenumber-js/max` or `libphonenumber-js/core` instead.\r\n\r\n// Importing from `.json.js` a workaround for a bug in web browsers' \"native\"\r\n// ES6 importing system which is uncapable of importing \"*.json\" files.\r\n// https://github.com/catamphetamine/libphonenumber-js/issues/239\r\nimport metadata from './metadata.min.json.js'\r\n\r\nimport parsePhoneNumberCustom from './es6/parsePhoneNumber'\r\nimport parsePhoneNumberFromStringCustom from './es6/parsePhoneNumberFromString'\r\n\r\nimport parseNumberCustom from './es6/parse'\r\nimport formatNumberCustom from './es6/format'\r\nimport getNumberTypeCustom from './es6/getNumberType'\r\nimport getExampleNumberCustom from './es6/getExampleNumber'\r\nimport isPossibleNumberCustom from './es6/isPossibleNumber'\r\nimport isValidNumberCustom from './es6/validate'\r\nimport isValidNumberForRegionCustom from './es6/isValidNumberForRegion'\r\n\r\n// Deprecated\r\nimport findPhoneNumbersCustom, { searchPhoneNumbers as searchPhoneNumbersCustom } from './es6/findPhoneNumbers'\r\nimport { PhoneNumberSearch as PhoneNumberSearchCustom } from './es6/findPhoneNumbers_'\r\n\r\nimport findNumbersCustom from './es6/findNumbers'\r\nimport searchNumbersCustom from './es6/searchNumbers'\r\nimport PhoneNumberMatcherCustom from './es6/PhoneNumberMatcher'\r\n\r\nimport AsYouTypeCustom from './es6/AsYouType'\r\n\r\nimport getCountryCallingCodeCustom from './es6/getCountryCallingCode'\r\nimport getCountriesCustom from './es6/getCountries'\r\nexport { default as Metadata } from './es6/metadata'\r\nimport { getExtPrefix as getExtPrefixCustom, isSupportedCountry as isSupportedCountryCustom } from './es6/metadata'\r\nimport { parseRFC3966 as parseRFC3966Custom, formatRFC3966 as formatRFC3966Custom } from './es6/RFC3966'\r\nimport formatIncompletePhoneNumberCustom from './es6/formatIncompletePhoneNumber'\r\nexport { default as parseIncompletePhoneNumber, parsePhoneNumberCharacter } from './es6/parseIncompletePhoneNumber'\r\n// Deprecated: remove DIGITS export in 2.0.0.\r\n// (it was used in `react-phone-number-input`)\r\nexport { DIGITS, default as parseDigits } from './es6/parseDigits'\r\nexport { default as ParseError } from './es6/ParseError'\r\n\r\nexport function parsePhoneNumber()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn parsePhoneNumberCustom.apply(this, parameters)\r\n}\r\n\r\nexport function parsePhoneNumberFromString()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn parsePhoneNumberFromStringCustom.apply(this, parameters)\r\n}\r\n\r\nexport function parseNumber()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn parseNumberCustom.apply(this, parameters)\r\n}\r\n\r\n// Deprecated: remove `parse()` export in 2.0.0.\r\n// (renamed to `parseNumber()`)\r\nexport function parse()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn parseNumberCustom.apply(this, parameters)\r\n}\r\n\r\nexport function formatNumber()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn formatNumberCustom.apply(this, parameters)\r\n}\r\n\r\n// Deprecated: remove `format()` export in 2.0.0.\r\n// (renamed to `formatNumber()`)\r\nexport function format()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn formatNumberCustom.apply(this, parameters)\r\n}\r\n\r\nexport function getNumberType()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn getNumberTypeCustom.apply(this, parameters)\r\n}\r\n\r\nexport function getExampleNumber()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn getExampleNumberCustom.apply(this, parameters)\r\n}\r\n\r\nexport function isPossibleNumber()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn isPossibleNumberCustom.apply(this, parameters)\r\n}\r\n\r\nexport function isValidNumber()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn isValidNumberCustom.apply(this, parameters)\r\n}\r\n\r\nexport function isValidNumberForRegion()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn isValidNumberForRegionCustom.apply(this, parameters)\r\n}\r\n\r\n// Deprecated.\r\nexport function findPhoneNumbers()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn findPhoneNumbersCustom.apply(this, parameters)\r\n}\r\n\r\n// Deprecated.\r\nexport function searchPhoneNumbers()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn searchPhoneNumbersCustom.apply(this, parameters)\r\n}\r\n\r\n// Deprecated.\r\nexport function PhoneNumberSearch(text, options)\r\n{\r\n\tPhoneNumberSearchCustom.call(this, text, options, metadata)\r\n}\r\n\r\n// Deprecated.\r\nPhoneNumberSearch.prototype = Object.create(PhoneNumberSearchCustom.prototype, {})\r\nPhoneNumberSearch.prototype.constructor = PhoneNumberSearch\r\n\r\nexport function findNumbers()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn findNumbersCustom.apply(this, parameters)\r\n}\r\n\r\nexport function searchNumbers()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn searchNumbersCustom.apply(this, parameters)\r\n}\r\n\r\nexport function PhoneNumberMatcher(text, options)\r\n{\r\n\tPhoneNumberMatcherCustom.call(this, text, options, metadata)\r\n}\r\n\r\nPhoneNumberMatcher.prototype = Object.create(PhoneNumberMatcherCustom.prototype, {})\r\nPhoneNumberMatcher.prototype.constructor = PhoneNumberMatcher\r\n\r\nexport function AsYouType(country)\r\n{\r\n\tAsYouTypeCustom.call(this, country, metadata)\r\n}\r\n\r\nAsYouType.prototype = Object.create(AsYouTypeCustom.prototype, {})\r\nAsYouType.prototype.constructor = AsYouType\r\n\r\nexport function isSupportedCountry()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn isSupportedCountryCustom.apply(this, parameters)\r\n}\r\n\r\nexport function getExtPrefix()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn getExtPrefixCustom.apply(this, parameters)\r\n}\r\n\r\nexport function parseRFC3966()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn parseRFC3966Custom.apply(this, parameters)\r\n}\r\n\r\nexport function formatRFC3966()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn formatRFC3966Custom.apply(this, parameters)\r\n}\r\n\r\nexport function formatIncompletePhoneNumber()\r\n{\r\n\tvar parameters = Array.prototype.slice.call(arguments)\r\n\tparameters.push(metadata)\r\n\treturn formatIncompletePhoneNumberCustom.apply(this, parameters)\r\n}\r\n\r\n// Deprecated: remove this in 2.0.0 and make `custom.js` in ES6\r\n// (the old `custom.js` becomes `custom.commonjs.js`).\r\nexport { default as parseCustom } from './es6/parse'\r\nexport { default as formatCustom } from './es6/format'\r\nexport { default as isValidNumberCustom } from './es6/validate'\r\nexport { default as findPhoneNumbersCustom } from './es6/findPhoneNumbers'\r\nexport { searchPhoneNumbers as searchPhoneNumbersCustom } from './es6/findPhoneNumbers'\r\nexport { PhoneNumberSearch as PhoneNumberSearchCustom } from './es6/findPhoneNumbers_'\r\nexport { default as getNumberTypeCustom } from './es6/getNumberType'\r\nexport { default as getCountryCallingCodeCustom } from './es6/getCountryCallingCode'\r\n\r\nexport\r\n{\r\n\tdefault as AsYouTypeCustom,\r\n\t// Deprecated: `DIGIT_PLACEHOLDER` was used by `react-phone-number-input`.\r\n\t// Seems to be not used anymore.\r\n\tDIGIT_PLACEHOLDER\r\n}\r\nfrom './es6/AsYouType'\r\n\r\nexport function getCountries()\r\n{\r\n\treturn getCountriesCustom(metadata)\r\n}\r\n\r\nexport function getCountryCallingCode(country)\r\n{\r\n\treturn getCountryCallingCodeCustom(country, metadata)\r\n}\r\n\r\n// `getPhoneCode` name is deprecated, use `getCountryCallingCode` instead.\r\nexport function getPhoneCode(country)\r\n{\r\n\treturn getCountryCallingCode(country)\r\n}\r\n\r\n// `getPhoneCodeCustom` name is deprecated, use `getCountryCallingCodeCustom` instead.\r\nexport function getPhoneCodeCustom(country, metadata)\r\n{\r\n\treturn getCountryCallingCodeCustom(country, metadata)\r\n}"],"sourceRoot":""}Computing Complete Answers to Queries in the Presence of Limited Access Patterns.\r\n * Chen Li. VLDB J. 12(3): 211-227 (2003).
\r\n *\r\n * The string \"211-227 (2003)\" is not a telephone number.\r\n */\nvar PUB_PAGES = /\\d{1,5}-+\\d{1,5}\\s{0,4}\\(\\d{1,4}/;\n\nexport default function isValidCandidate(candidate, offset, text, leniency) {\n\t// Check the candidate doesn't contain any formatting\n\t// which would indicate that it really isn't a phone number.\n\tif (!MATCHING_BRACKETS_ENTIRE.test(candidate) || PUB_PAGES.test(candidate)) {\n\t\treturn;\n\t}\n\n\t// If leniency is set to VALID or stricter, we also want to skip numbers that are surrounded\n\t// by Latin alphabetic characters, to skip cases like abc8005001234 or 8005001234def.\n\tif (leniency !== 'POSSIBLE') {\n\t\t// If the candidate is not at the start of the text,\n\t\t// and does not start with phone-number punctuation,\n\t\t// check the previous character.\n\t\tif (offset > 0 && !LEAD_CLASS_LEADING.test(candidate)) {\n\t\t\tvar previousChar = text[offset - 1];\n\t\t\t// We return null if it is a latin letter or an invalid punctuation symbol.\n\t\t\tif (isInvalidPunctuationSymbol(previousChar) || isLatinLetter(previousChar)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\n\t\tvar lastCharIndex = offset + candidate.length;\n\t\tif (lastCharIndex < text.length) {\n\t\t\tvar nextChar = text[lastCharIndex];\n\t\t\tif (isInvalidPunctuationSymbol(nextChar) || isLatinLetter(nextChar)) {\n\t\t\t\treturn false;\n\t\t\t}\n\t\t}\n\t}\n\n\treturn true;\n}\n//# sourceMappingURL=isValidCandidate.js.map","// Matches strings that look like dates using \"/\" as a separator.\n// Examples: 3/10/2011, 31/10/96 or 08/31/95.\nvar SLASH_SEPARATED_DATES = /(?:(?:[0-3]?\\d\\/[01]?\\d)|(?:[01]?\\d\\/[0-3]?\\d))\\/(?:[12]\\d)?\\d{2}/;\n\n// Matches timestamps.\n// Examples: \"2012-01-02 08:00\".\n// Note that the reg-ex does not include the\n// trailing \":\\d\\d\" -- that is covered by TIME_STAMPS_SUFFIX.\nvar TIME_STAMPS = /[12]\\d{3}[-/]?[01]\\d[-/]?[0-3]\\d +[0-2]\\d$/;\nvar TIME_STAMPS_SUFFIX_LEADING = /^:[0-5]\\d/;\n\nexport default function isValidPreCandidate(candidate, offset, text) {\n\t// Skip a match that is more likely to be a date.\n\tif (SLASH_SEPARATED_DATES.test(candidate)) {\n\t\treturn false;\n\t}\n\n\t// Skip potential time-stamps.\n\tif (TIME_STAMPS.test(candidate)) {\n\t\tvar followingText = text.slice(offset + candidate.length);\n\t\tif (TIME_STAMPS_SUFFIX_LEADING.test(followingText)) {\n\t\t\treturn false;\n\t\t}\n\t}\n\n\treturn true;\n}\n//# sourceMappingURL=isValidPreCandidate.js.map","import { trimAfterFirstMatch } from './util';\n\n// Regular expression of characters typically used to start a second phone number for the purposes\n// of parsing. This allows us to strip off parts of the number that are actually the start of\n// another number, such as for: (530) 583-6985 x302/x2303 -> the second extension here makes this\n// actually two phone numbers, (530) 583-6985 x302 and (530) 583-6985 x2303. We remove the second\n// extension so that the first number is parsed correctly.\n//\n// Matches a slash (\\ or /) followed by a space followed by an `x`.\n//\nvar SECOND_NUMBER_START_PATTERN = /[\\\\/] *x/;\n\nexport default function parsePreCandidate(candidate) {\n\t// Check for extra numbers at the end.\n\t// TODO: This is the place to start when trying to support extraction of multiple phone number\n\t// from split notations (+41 79 123 45 67 / 68).\n\treturn trimAfterFirstMatch(SECOND_NUMBER_START_PATTERN, candidate);\n}\n//# sourceMappingURL=parsePreCandidate.js.map","var _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// This is a legacy function.\n// Use `findNumbers()` instead.\n\nimport { PLUS_CHARS, VALID_PUNCTUATION, VALID_DIGITS, WHITESPACE } from './constants';\n\nimport { EXTN_PATTERNS_FOR_PARSING } from './extension';\n\nimport parse from './parse_';\n\nimport parsePreCandidate from './findNumbers/parsePreCandidate';\nimport isValidPreCandidate from './findNumbers/isValidPreCandidate';\nimport isValidCandidate from './findNumbers/isValidCandidate';\n\n// Copy-pasted from `./parse.js`.\nvar VALID_PHONE_NUMBER = '[' + PLUS_CHARS + ']{0,1}' + '(?:' + '[' + VALID_PUNCTUATION + ']*' + '[' + VALID_DIGITS + ']' + '){3,}' + '[' + VALID_PUNCTUATION + VALID_DIGITS + ']*';\n\nvar WHITESPACE_IN_THE_BEGINNING_PATTERN = new RegExp('^[' + WHITESPACE + ']+');\nvar PUNCTUATION_IN_THE_END_PATTERN = new RegExp('[' + VALID_PUNCTUATION + ']+$');\n\n// // Regular expression for getting opening brackets for a valid number\n// // found using `PHONE_NUMBER_START_PATTERN` for prepending those brackets to the number.\n// const BEFORE_NUMBER_DIGITS_PUNCTUATION = new RegExp('[' + OPENING_BRACKETS + ']+' + '[' + WHITESPACE + ']*' + '$')\n\nvar VALID_PRECEDING_CHARACTER_PATTERN = /[^a-zA-Z0-9]/;\n\nexport default function findPhoneNumbers(text, options, metadata) {\n\t/* istanbul ignore if */\n\tif (options === undefined) {\n\t\toptions = {};\n\t}\n\n\tvar search = new PhoneNumberSearch(text, options, metadata);\n\tvar phones = [];\n\twhile (search.hasNext()) {\n\t\tphones.push(search.next());\n\t}\n\treturn phones;\n}\n\n/**\r\n * @return ES6 `for ... of` iterator.\r\n */\nexport function searchPhoneNumbers(text, options, metadata) {\n\t/* istanbul ignore if */\n\tif (options === undefined) {\n\t\toptions = {};\n\t}\n\n\tvar search = new PhoneNumberSearch(text, options, metadata);\n\n\treturn _defineProperty({}, Symbol.iterator, function () {\n\t\treturn {\n\t\t\tnext: function next() {\n\t\t\t\tif (search.hasNext()) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tdone: false,\n\t\t\t\t\t\tvalue: search.next()\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\tdone: true\n\t\t\t\t};\n\t\t\t}\n\t\t};\n\t});\n}\n\n/**\r\n * Extracts a parseable phone number including any opening brackets, etc.\r\n * @param {string} text - Input.\r\n * @return {object} `{ ?number, ?startsAt, ?endsAt }`.\r\n */\nexport var PhoneNumberSearch = function () {\n\tfunction PhoneNumberSearch(text) {\n\t\tvar options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\t\tvar metadata = arguments[2];\n\n\t\t_classCallCheck(this, PhoneNumberSearch);\n\n\t\tthis.state = 'NOT_READY';\n\n\t\tthis.text = text;\n\t\tthis.options = options;\n\t\tthis.metadata = metadata;\n\n\t\tthis.regexp = new RegExp(VALID_PHONE_NUMBER +\n\t\t// Phone number extensions\n\t\t'(?:' + EXTN_PATTERNS_FOR_PARSING + ')?', 'ig');\n\n\t\t// this.searching_from = 0\n\t}\n\t// Iteration tristate.\n\n\n\t_createClass(PhoneNumberSearch, [{\n\t\tkey: 'find',\n\t\tvalue: function find() {\n\t\t\tvar matches = this.regexp.exec(this.text);\n\n\t\t\tif (!matches) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tvar number = matches[0];\n\t\t\tvar startsAt = matches.index;\n\n\t\t\tnumber = number.replace(WHITESPACE_IN_THE_BEGINNING_PATTERN, '');\n\t\t\tstartsAt += matches[0].length - number.length;\n\t\t\t// Fixes not parsing numbers with whitespace in the end.\n\t\t\t// Also fixes not parsing numbers with opening parentheses in the end.\n\t\t\t// https://github.com/catamphetamine/libphonenumber-js/issues/252\n\t\t\tnumber = number.replace(PUNCTUATION_IN_THE_END_PATTERN, '');\n\n\t\t\tnumber = parsePreCandidate(number);\n\n\t\t\tvar result = this.parseCandidate(number, startsAt);\n\n\t\t\tif (result) {\n\t\t\t\treturn result;\n\t\t\t}\n\n\t\t\t// Tail recursion.\n\t\t\t// Try the next one if this one is not a valid phone number.\n\t\t\treturn this.find();\n\t\t}\n\t}, {\n\t\tkey: 'parseCandidate',\n\t\tvalue: function parseCandidate(number, startsAt) {\n\t\t\tif (!isValidPreCandidate(number, startsAt, this.text)) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// Don't parse phone numbers which are non-phone numbers\n\t\t\t// due to being part of something else (e.g. a UUID).\n\t\t\t// https://github.com/catamphetamine/libphonenumber-js/issues/213\n\t\t\t// Copy-pasted from Google's `PhoneNumberMatcher.js` (`.parseAndValidate()`).\n\t\t\tif (!isValidCandidate(number, startsAt, this.text, this.options.extended ? 'POSSIBLE' : 'VALID')) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\t// // Prepend any opening brackets left behind by the\n\t\t\t// // `PHONE_NUMBER_START_PATTERN` regexp.\n\t\t\t// const text_before_number = text.slice(this.searching_from, startsAt)\n\t\t\t// const full_number_starts_at = text_before_number.search(BEFORE_NUMBER_DIGITS_PUNCTUATION)\n\t\t\t// if (full_number_starts_at >= 0)\n\t\t\t// {\n\t\t\t// \tnumber = text_before_number.slice(full_number_starts_at) + number\n\t\t\t// \tstartsAt = full_number_starts_at\n\t\t\t// }\n\t\t\t//\n\t\t\t// this.searching_from = matches.lastIndex\n\n\t\t\tvar result = parse(number, this.options, this.metadata);\n\n\t\t\tif (!result.phone) {\n\t\t\t\treturn;\n\t\t\t}\n\n\t\t\tresult.startsAt = startsAt;\n\t\t\tresult.endsAt = startsAt + number.length;\n\n\t\t\treturn result;\n\t\t}\n\t}, {\n\t\tkey: 'hasNext',\n\t\tvalue: function hasNext() {\n\t\t\tif (this.state === 'NOT_READY') {\n\t\t\t\tthis.last_match = this.find();\n\n\t\t\t\tif (this.last_match) {\n\t\t\t\t\tthis.state = 'READY';\n\t\t\t\t} else {\n\t\t\t\t\tthis.state = 'DONE';\n\t\t\t\t}\n\t\t\t}\n\n\t\t\treturn this.state === 'READY';\n\t\t}\n\t}, {\n\t\tkey: 'next',\n\t\tvalue: function next() {\n\t\t\t// Check the state and find the next match as a side-effect if necessary.\n\t\t\tif (!this.hasNext()) {\n\t\t\t\tthrow new Error('No next element');\n\t\t\t}\n\n\t\t\t// Don't retain that memory any longer than necessary.\n\t\t\tvar result = this.last_match;\n\t\t\tthis.last_match = null;\n\t\t\tthis.state = 'NOT_READY';\n\t\t\treturn result;\n\t\t}\n\t}]);\n\n\treturn PhoneNumberSearch;\n}();\n//# sourceMappingURL=findPhoneNumbers_.js.map","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nimport parseNumber from './parse_';\n\nexport default function parsePhoneNumber(text, options, metadata) {\n\treturn parseNumber(text, _extends({}, options, { v2: true }), metadata);\n}\n//# sourceMappingURL=parsePhoneNumber_.js.map","import isValidNumber from './validate_';\n\n/**\r\n * Checks if a given phone number is valid within a given region.\r\n * Is just an alias for `phoneNumber.isValid() && phoneNumber.country === country`.\r\n * https://github.com/googlei18n/libphonenumber/blob/master/FAQ.md#when-should-i-use-isvalidnumberforregion\r\n */\nexport default function isValidNumberForRegion(input, country) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var metadata = arguments[3];\n\n return input.country === country && isValidNumber(input, options, metadata);\n}\n//# sourceMappingURL=isValidNumberForRegion_.js.map","import Metadata from './metadata';\nimport { VALID_DIGITS } from './constants';\n\nvar CAPTURING_DIGIT_PATTERN = new RegExp('([' + VALID_DIGITS + '])');\n\n/**\r\n * Pattern that makes it easy to distinguish whether a region has a single\r\n * international dialing prefix or not. If a region has a single international\r\n * prefix (e.g. 011 in USA), it will be represented as a string that contains\r\n * a sequence of ASCII digits, and possibly a tilde, which signals waiting for\r\n * the tone. If there are multiple available international prefixes in a\r\n * region, they will be represented as a regex string that always contains one\r\n * or more characters that are not ASCII digits or a tilde.\r\n */\nvar SINGLE_IDD_PREFIX = /^[\\d]+(?:[~\\u2053\\u223C\\uFF5E][\\d]+)?$/;\n\n// For regions that have multiple IDD prefixes\n// a preferred IDD prefix is returned.\nexport function getIDDPrefix(country, metadata) {\n\tvar countryMetadata = new Metadata(metadata);\n\tcountryMetadata.country(country);\n\n\tif (SINGLE_IDD_PREFIX.test(countryMetadata.IDDPrefix())) {\n\t\treturn countryMetadata.IDDPrefix();\n\t}\n\n\treturn countryMetadata.defaultIDDPrefix();\n}\n\nexport function stripIDDPrefix(number, country, metadata) {\n\tif (!country) {\n\t\treturn;\n\t}\n\n\t// Check if the number is IDD-prefixed.\n\n\tvar countryMetadata = new Metadata(metadata);\n\tcountryMetadata.country(country);\n\n\tvar IDDPrefixPattern = new RegExp(countryMetadata.IDDPrefix());\n\n\tif (number.search(IDDPrefixPattern) !== 0) {\n\t\treturn;\n\t}\n\n\t// Strip IDD prefix.\n\tnumber = number.slice(number.match(IDDPrefixPattern)[0].length);\n\n\t// Some kind of a weird edge case.\n\t// No explanation from Google given.\n\tvar matchedGroups = number.match(CAPTURING_DIGIT_PATTERN);\n\t/* istanbul ignore next */\n\tif (matchedGroups && matchedGroups[1] != null && matchedGroups[1].length > 0) {\n\t\tif (matchedGroups[1] === '0') {\n\t\t\treturn;\n\t\t}\n\t}\n\n\treturn number;\n}\n//# sourceMappingURL=IDD.js.map","// Deprecated. Import from 'metadata.js' directly instead.\nexport { getCountryCallingCode as default } from './metadata';\n//# sourceMappingURL=getCountryCallingCode.js.map","import AsYouType from './AsYouType';\n\n/**\r\n * Formats a (possibly incomplete) phone number.\r\n * The phone number can be either in E.164 format\r\n * or in a form of national number digits.\r\n * @param {string} value - A possibly incomplete phone number. Either in E.164 format or in a form of national number digits.\r\n * @param {string?} country - Two-letter (\"ISO 3166-1 alpha-2\") country code.\r\n * @return {string} Formatted (possibly incomplete) phone number.\r\n */\nexport default function formatIncompletePhoneNumber(value, country, metadata) {\n if (!metadata) {\n metadata = country;\n country = undefined;\n }\n return new AsYouType(country, metadata).input(value);\n}\n//# sourceMappingURL=formatIncompletePhoneNumber.js.map","import Metadata from './metadata';\n\nexport default function getCountries(metadata) {\n\treturn new Metadata(metadata).getCountries();\n}\n//# sourceMappingURL=getCountries.js.map","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { normalizeArguments } from './parsePhoneNumber';\nimport PhoneNumberMatcher from './PhoneNumberMatcher';\n\n/**\r\n * @return ES6 `for ... of` iterator.\r\n */\nexport default function searchNumbers() {\n\tvar _normalizeArguments = normalizeArguments(arguments),\n\t text = _normalizeArguments.text,\n\t options = _normalizeArguments.options,\n\t metadata = _normalizeArguments.metadata;\n\n\tvar matcher = new PhoneNumberMatcher(text, options, metadata);\n\n\treturn _defineProperty({}, Symbol.iterator, function () {\n\t\treturn {\n\t\t\tnext: function next() {\n\t\t\t\tif (matcher.hasNext()) {\n\t\t\t\t\treturn {\n\t\t\t\t\t\tdone: false,\n\t\t\t\t\t\tvalue: matcher.next()\n\t\t\t\t\t};\n\t\t\t\t}\n\t\t\t\treturn {\n\t\t\t\t\tdone: true\n\t\t\t\t};\n\t\t\t}\n\t\t};\n\t});\n}\n//# sourceMappingURL=searchNumbers.js.map","import isValidNumber from '../validate_';\nimport parseDigits from '../parseDigits';\n\nimport { startsWith, endsWith } from './util';\n\n/**\r\n * Leniency when finding potential phone numbers in text segments\r\n * The levels here are ordered in increasing strictness.\r\n */\nexport default {\n /**\r\n * Phone numbers accepted are \"possible\", but not necessarily \"valid\".\r\n */\n POSSIBLE: function POSSIBLE(number, candidate, metadata) {\n return true;\n },\n\n\n /**\r\n * Phone numbers accepted are \"possible\" and \"valid\".\r\n * Numbers written in national format must have their national-prefix\r\n * present if it is usually written for a number of this type.\r\n */\n VALID: function VALID(number, candidate, metadata) {\n if (!isValidNumber(number, undefined, metadata) || !containsOnlyValidXChars(number, candidate.toString(), metadata)) {\n return false;\n }\n\n // Skipped for simplicity.\n // return isNationalPrefixPresentIfRequired(number, metadata)\n return true;\n },\n\n\n /**\r\n * Phone numbers accepted are \"valid\" and\r\n * are grouped in a possible way for this locale. For example, a US number written as\r\n * \"65 02 53 00 00\" and \"650253 0000\" are not accepted at this leniency level, whereas\r\n * \"650 253 0000\", \"650 2530000\" or \"6502530000\" are.\r\n * Numbers with more than one '/' symbol in the national significant number\r\n * are also dropped at this level.\r\n *\r\n * Warning: This level might result in lower coverage especially for regions outside of\r\n * country code \"+1\". If you are not sure about which level to use,\r\n * email the discussion group libphonenumber-discuss@googlegroups.com.\r\n */\n STRICT_GROUPING: function STRICT_GROUPING(number, candidate, metadata, regExpCache) {\n var candidateString = candidate.toString();\n\n if (!isValidNumber(number, undefined, metadata) || !containsOnlyValidXChars(number, candidateString, metadata) || containsMoreThanOneSlashInNationalNumber(number, candidateString) || !isNationalPrefixPresentIfRequired(number, metadata)) {\n return false;\n }\n\n return checkNumberGroupingIsValid(number, candidate, metadata, allNumberGroupsRemainGrouped, regExpCache);\n },\n\n\n /**\r\n * Phone numbers accepted are {@linkplain PhoneNumberUtil#isValidNumber(PhoneNumber) valid} and\r\n * are grouped in the same way that we would have formatted it, or as a single block. For\r\n * example, a US number written as \"650 2530000\" is not accepted at this leniency level, whereas\r\n * \"650 253 0000\" or \"6502530000\" are.\r\n * Numbers with more than one '/' symbol are also dropped at this level.\r\n *