Metadata update v7.0.3
[platform/upstream/libphonenumber.git] / resources / PhoneNumberMetadata.xml
index b382f3d..8e73406 100644 (file)
          -->
     <territory id="AR" countryCode="54" internationalPrefix="00" nationalPrefix="0"
        nationalPrefixForParsing="
-         0?(?:
-           (11|
+         0?(?:(
+            11|
             2(?:
               2(?:
                 02?|
                8[2578]
              )|
              4(?:
-               0[124-9]|
+               0[0-24-9]|
                [12]|
                3[5-8]?|
                4[24-7]|
              )|
              6[24]|
              7(?:
+               [069]|
                1[1568]|
                2[15]|
                3[145]|
                4[13]|
                5[14-8]|
-               [069]|
                7[2-57]|
                8[126]
              )|
                9[124]
              )
            )
-         )?15
-       )?"
+         )?15)?"
        nationalPrefixTransformRule="9$1" nationalPrefixFormattingRule="$NP$FG"
        mobileNumberPortableRegion="true">
       <references>
         <!-- On the following link, click on Indicativos Interurbanos to access detailed
              information. -->
         <sourceUrl>http://www.cnc.gov.ar/infotecnica/numeracion/Index.asp</sourceUrl>
+        <!-- Download XLS spreadsheet from "Númeración Geográfica" link on following page: -->
+        <sourceUrl>http://www.cnc.gob.ar/asignaciones-a-la-fecha_p445</sourceUrl>
         <sourceUrl>http://en.wikipedia.org/wiki/+54</sourceUrl>
       </references>
       <availableFormats>
           <intlFormat>$1 $2 $3-$4</intlFormat>
         </numberFormat>
         <numberFormat pattern="(9)(\d{3})(\d{3})(\d{4})">
-          <!-- Some 4-digit area codes actually are caught by this rule. Preference is given however
-               to the 3-digit area codes, since they are considerably larger communities. -->
+          <!-- The regular expressions below were generated semi-automatically from data extracted
+               from the XLS spreadsheet downloaded from the "Númeración Geográfica" link cited
+               above. Each pattern captures all 3-3-4 prefixes for its length, but may also capture
+               some 4-2-4 cases.
+
+               In cases where a range contains both 3-3-4 and 4-2-4 prefixes, the most commonly used
+               one should be considered the default.
+               * If there are more distinct 4-2-4 prefixes, then the regular expression should
+                 INCLUDE only the explicitly mentioned 3-3-4 prefixes.
+               * If there are more distinct 3-3-4 prefixes, then the regular expression should
+                 EXCLUDE only the explicitly mentioned 4-2-4 prefixes.
+               This should help maximize the chances of new ranges automatically being assigned to
+               the right form.
+
+               In the final (most specific) regular expression, the few remaining ambiguous cases
+               are decided by comparing usage counts. Any manual edits to these expressions not
+               reflected in the XLS spreadsheet must be clearly called out below:
+
+               Added Manually as 3-3-4 format:
+               * 2981 (General Roca, Río Negro) : Numbers found online suggest 3-3-4
+
+               See also:
+               https://github.com/googlei18n/libphonenumber/issues/611
+               https://github.com/googlei18n/libphonenumber/issues/559
+               -->
+          <!-- Do NOT copy this into the section below. Removing the leading '9' will make it match
+               only 2 digits and the first <leadingDigits> section must always match 3 digits. -->
           <leadingDigits>
             9(?:
               2[234689]|
               3[3-8]
             )
           </leadingDigits>
+          <!-- If modified, copy this expression into the section below, minus the leading '9' -->
           <leadingDigits>
             9(?:
               2(?:
               )|
               3(?:
                 36|
-                4[12358]|
+                4[1-358]|
                 5[138]|
                 6[24]|
                 7[069]|
               )
             )
           </leadingDigits>
-          <!-- We exclude here several 294X four-digit area codes: 2940, 2942, 2945, 2946 and 2948,
-               2983, and several 38[3578]X four-digit area codes. -->
+          <!-- Note that some patterns appear as both 3 and 4 digit area codes. In these cases
+               (to avoid going to 6 digits of discrimination) we simply pick the one with the
+               most uses. Patterns excluded from this expression will be treated as 4-2-4:
+               - XXXX (usage count as 3-digit code:usage count as 4-digit code)
+               - 2646 (7:15)   - excluded
+               - 3435 (39:63)  - excluded
+               - 3436 (16:54)  - excluded
+               - 3454 (90:48)
+               - 3455 (13:94)  - excluded
+               - 3456 (3:93)   - excluded
+               - 3584 (143:65)
+               - 3585 (21:42)  - excluded
+               - 3854 (115:73)
+               - 3855 (76:40)
+               - 3856 (19:44)  - excluded
+               - 3876 (56:99)  - excluded
+               - 3885 (120:45)
+               - 3886 (3:137)  - excluded
+               -->
+          <!-- If modified, copy this expression into the section below, minus the leading '9' -->
           <leadingDigits>
             9(?:
               2(?:
-                2[013]|
-                3[067]|
+                2(?:
+                  0[013-9]|
+                  [13]
+                )|
+                3(?:
+                  0[013-9]|
+                  [67]
+                )|
                 49|
-                6[01346]|
-                80|
+                6(?:
+                  [0136]|
+                  4[0-59]
+                )|
+                8|
                 9(?:
-                  [179]|
-                  4[13479]|
-                  8[0-24-9]
+                  [19]|
+                  44|
+                  7[013-9]|
+                  8[14]
                 )
               )|
               3(?:
                 36|
-                4[12358]|
+                4(?:
+                  [12]|
+                  [358]4
+                )|
                 5(?:
-                  [18]|
-                  3[014-689]
+                  1|
+                  3[0-24-689]|
+                  8[46]
                 )|
-                6[24]|
+                6|
                 7[069]|
                 8(?:
                   [01]|
-                  3[013469]|
-                  5[0-39]|
-                  7[0-2459]|
-                  8[0-49]
+                  34|
+                  [578][45]
                 )
               )
             )
         </numberFormat>
         <!-- These patterns are a copy of the mobile patterns with the leading 9 removed. -->
         <numberFormat pattern="(\d{3})(\d{3})(\d{4})" nationalPrefixOptionalWhenFormatting="true">
+          <!-- Never modify this manually, always copy from above and remove leading '9' -->
           <leadingDigits>
             2(?:
               2[013]|
             )|
             3(?:
               36|
-              4[12358]|
+              4[1-358]|
               5[138]|
               6[24]|
               7[069]|
               8[013578]
             )
           </leadingDigits>
-          <!-- Several 294X four-digit area codes exist: 2940, 2942, 2945, 2946 and 2948. -->
+          <!-- Never modify this manually, always copy from above and remove leading '9' -->
           <leadingDigits>
             2(?:
-              2[013]|
-              3[067]|
+              2(?:
+                0[013-9]|
+                [13]
+              )|
+              3(?:
+                0[013-9]|
+                [67]
+              )|
               49|
-              6[01346]|
-              80|
+              6(?:
+                [0136]|
+                4[0-59]
+              )|
+              8|
               9(?:
-                [17-9]|
-                4[13479]
+                [19]|
+                44|
+                7[013-9]|
+                8[14]
               )
             )|
             3(?:
               36|
-              4[12358]|
+              4(?:
+                [12]|
+                [358]4
+              )|
               5(?:
-                [18]|
-                3[0-689]
+                1|
+                3[0-24-689]|
+                8[46]
               )|
-              6[24]|
+              6|
               7[069]|
               8(?:
                 [01]|
-                3[013469]|
-                5[0-39]|
-                7[0-2459]|
-                8[0-49]
+                34|
+                [578][45]
               )
             )
           </leadingDigits>
       </fixedLine>
       <mobile>
         <!-- Includes MobileSat and Thuraya satellite services. According to the wikipedia page,
-             other ranges 14[1-3] are not currently used. -->
+             other ranges 14[1-3] are not currently used. Note CC and CX should be updated as well
+             if this pattern changes. -->
         <nationalNumberPattern>
           14(?:
             5\d|
             4[47-9]|
             5[0-25-9]|
             6[6-9]|
-            7[0457-9]|
+            7[03-9]|
             8[17-9]|
             9[017-9]
           )\d{6}
       <references>
         <sourceUrl>http://www.itu.int/oth/T0202000012/en</sourceUrl>
         <sourceUrl>http://en.wikipedia.org/wiki/Telephone_numbers_in_Bangladesh</sourceUrl>
-        <sourceUrl>http://www.btrc.gov.bd/engineering/national_numbering_plan_2005.pdf</sourceUrl>
+        <sourceUrl>http://www.btrc.gov.bd/sites/default/files/national_numbering_plan_2005_0.pdf</sourceUrl>
       </references>
       <availableFormats>
         <numberFormat pattern="(2)(\d{7})">
               5[5-7]|
               6[0167]|
               7[15]|
-              8[016-8]
+              8[0146-8]
             )
           )\d{4}|
           3(?:
         <nationalNumberPattern>
           (?:
             1(?:
-              3[13-6]|
+              3[1356]|
               6[0156]|
               7\d
             )\d|
                 0\d|
                 3[12]|
                 44|
-                88
+                7[7-9]
               )|
               9[69][69]
             )|
             7(?:
-              7\d{2}|
-              178
+              1(?:
+                11|
+                78
+              )|
+              7\d{2}
             )
           )\d{4}
         </nationalNumberPattern>
           (?:
             3(?:
               [1-4679]\d|
-              5[0135]|
-              8[0-48]
+              5[013569]|
+              8[0-47-9]
             )\d|
             6(?:
               3(?:
               )|
               6(?:
                 [69]\d|
-                3[03-9]
+                3[03-9]|
+                7[0-6]
               )
             )
           )\d{4}
       </references>
       <availableFormats>
         <numberFormat
-          pattern="([27]\d)(\d{2})(\d{2})(\d{2})">
+          pattern="(\d{2})(\d{2})(\d{2})(\d{2})">
           <format>$1 $2 $3 $4</format>
         </numberFormat>
       </availableFormats>
       <generalDesc>
-        <nationalNumberPattern>[27]\d{7}</nationalNumberPattern>
+        <nationalNumberPattern>[267]\d{7}</nationalNumberPattern>
         <possibleNumberPattern>\d{8}</possibleNumberPattern>
       </generalDesc>
       <fixedLine>
              satellite phones. -->
         <nationalNumberPattern>
           (?:
-            29|
+            [26]9|
             7[14-9]
           )\d{6}
         </nationalNumberPattern>
         <possibleNumberPattern>\d{10}</possibleNumberPattern>
         <exampleNumber>9021234567</exampleNumber>
       </premiumRate>
+      <voip>
+        <!-- 249 prefix for Beltelcom's Maxiphone added based on online info. -->
+        <nationalNumberPattern>249\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>249123456</exampleNumber>
+      </voip>
     </territory>
 
     <!-- Belize -->
       <!-- Mobile, toll free, premium rate, personal number and VOIP copied from Australia. -->
       <mobile>
         <nationalNumberPattern>
+          14(?:
+            5\d|
+            71
+          )\d{5}|
           4(?:
             [0-2]\d|
             3[0-57-9]|
             4[47-9]|
-            5[0-37-9]|
+            5[0-25-9]|
             6[6-9]|
-            7[07-9]|
-            8[7-9]
+            7[03-9]|
+            8[17-9]|
+            9[017-9]
           )\d{6}
         </nationalNumberPattern>
         <possibleNumberPattern>\d{9}</possibleNumberPattern>
              successfully delivered. Supported by numbers found on the internet. The prefix 56 was
              assigned to MTN in July 2013:
              http://www.atci.ci/images/stories/pdf/decisions-dg/decision_002.pdf
+             The prefix 75 is from an open-source bug report.
              50 has been removed since Warid seems to have stopped operation in Côte d'Ivoire. -->
           <nationalNumberPattern>
           (?:
             4[0-24-9]|
             5[4-9]|
             6[015-79]|
-            77
+            7[578]
           )\d{6}
         </nationalNumberPattern>
         <exampleNumber>01234567</exampleNumber>
     <territory id="CM" countryCode="237" internationalPrefix="00">
       <references>
         <sourceUrl>http://www.itu.int/oth/T0202000024/en</sourceUrl>
+        <sourceUrl>http://www.itu.int/dms_pub/itu-t/opb/sp/T-SP-OB.1063-2014-OAS-PDF-E.pdf</sourceUrl>
       </references>
       <availableFormats>
-        <!-- Formatting on the internet is consistently with the first 2 extracted, and usually in
-             the same format as France (all 2 digit groups) so we use this instead of the guidance
-             of the national numbering plan (which has 1 3 2 2 and 4 4 as its two formatting
-             examples.) -->
+        <!-- Formatting in the ITU update document aligns with formatting online (all 2 digit
+             groups). For the new number format with 9 digits the first digit has it's own group.
+             -->
+        <numberFormat pattern="([26])(\d{2})(\d{2})(\d{2})(\d{2})">
+          <leadingDigits>[26]</leadingDigits>
+          <format>$1 $2 $3 $4 $5</format>
+        </numberFormat>
         <numberFormat pattern="([2357-9]\d)(\d{2})(\d{2})(\d{2})">
           <leadingDigits>
             [23579]|
         </numberFormat>
       </availableFormats>
       <generalDesc>
-        <nationalNumberPattern>[2357-9]\d{7}</nationalNumberPattern>
-        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <nationalNumberPattern>[235-9]\d{7,8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8,9}</possibleNumberPattern>
       </generalDesc>
       <fixedLine>
-        <!-- Technically, the numbers are required only to start with a 2 or a 3, but all numbers at
-             the moment start with 22 or 33 since they have been migrated from seven digit numbers
-             beginning with these numbers. This rule should be relaxed if/when we start getting
-             numbers beginning in other ways. -->
+        <!-- Temporarily allow both old (22|33) and new 2(22|33) format. -->
+        <!-- CDMA numbers are described in a subcategory to fixed line numbers in the ITU update
+             document, so those prefixes are added to fixed line (24[23]). -->
         <nationalNumberPattern>
+          2(?:
+             22|
+             33|
+             4[23]
+          )\d{6}|
           (?:
             22|
             33
           )\d{6}
         </nationalNumberPattern>
-        <exampleNumber>22123456</exampleNumber>
+        <exampleNumber>222123456</exampleNumber>
       </fixedLine>
       <mobile>
-        <!-- Mobile numbers beginning with 5 were found online. -->
-        <nationalNumberPattern>[579]\d{7}</nationalNumberPattern>
-        <exampleNumber>71234567</exampleNumber>
+        <!-- Temporarily allow both old [579]\d{7} and new 6[5-79]\d{7} format. -->
+        <nationalNumberPattern>
+          6[5-79]\d{7}|
+          [579]\d{7}
+        </nationalNumberPattern>
+        <exampleNumber>671234567</exampleNumber>
       </mobile>
       <tollFree>
         <nationalNumberPattern>800\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
         <exampleNumber>80012345</exampleNumber>
       </tollFree>
       <premiumRate>
              with 88 (usually 880). No information can be found as to whether these are premium rate
              or shared cost. -->
         <nationalNumberPattern>88\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
         <exampleNumber>88012345</exampleNumber>
       </premiumRate>
     </territory>
 
     <!-- China -->
-    <territory id="CN" countryCode="86" internationalPrefix="(1[1279]\d{3})?00"
+    <!-- The international/national prefix patterns must not collide with valid prefixes such
+         as 170, 176, 177 and 178. 179XX00 is a valid calling prefix, see: www.chahaoba.com/179 -->
+    <territory id="CN" countryCode="86" internationalPrefix="(1(?:[129]\d{3}|79\d{2}))?00"
                preferredInternationalPrefix="00" nationalPrefix="0"
-               nationalPrefixForParsing="(1[1279]\d{3})|0">
+               nationalPrefixForParsing="(1(?:[129]\d{3}|79\d{2}))|0">
       <references>
         <sourceUrl>http://www.itu.int/oth/T020200002B/en</sourceUrl>
       </references>
               91
             )|
             8(?:
-              71|
+              [57]1|
               98
             )
           </leadingDigits>
               1[236-8]|
               2[5-7]|
               3|
-              5[1-9]|
+              5[4-9]|
               7[02-9]|
               8[3678]|
               9[1-7]
           <leadingDigits>10800</leadingDigits>
           <format>$1 $2 $3</format>
         </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{7,8})">
+          <leadingDigits>950</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
       </availableFormats>
       <generalDesc>
         <nationalNumberPattern>
           [1-7]\d{6,11}|
           8[0-357-9]\d{6,9}|
-          9\d{7,9}
+          9\d{7,10}
         </nationalNumberPattern>
         <possibleNumberPattern>\d{4,12}</possibleNumberPattern>
       </generalDesc>
             (?:
               10
             )?8
-          )00\d{7}
+          )00\d{7}|
+          950\d{7,8}
         </nationalNumberPattern>
         <possibleNumberPattern>\d{10,12}</possibleNumberPattern>
         <exampleNumber>4001234567</exampleNumber>
               91
             )|
             8(?:
-              71|
+              [57]1|
               98
             )
           )(?:
               1[236-8]|
               2[5-7]|
               3\d|
-              5[1-9]|
+              5[4-9]|
               7[02-9]|
               8[3678]|
               9[1-7]
              based on online searches. -->
         <nationalNumberPattern>
           400\d{7}|
+          950\d{7,8}|
           (?:
             10|
             2[0-57-9]|
               1[236-8]|
               2[5-7]|
               [37]\d|
-              5[1-9]|
+              5[14-9]|
               8[3678]|
               9[1-8]
             )|
             )
           )96\d{3,4}
         </nationalNumberPattern>
-        <possibleNumberPattern>\d{7,10}</possibleNumberPattern>
+        <possibleNumberPattern>\d{7,11}</possibleNumberPattern>
         <exampleNumber>4001234567</exampleNumber>
       </sharedCost>
     </territory>
       <!-- Mobile, toll free, premium rate, personal number and VOIP copied from Australia. -->
       <mobile>
         <nationalNumberPattern>
+          14(?:
+            5\d|
+            71
+          )\d{5}|
           4(?:
             [0-2]\d|
             3[0-57-9]|
             4[47-9]|
-            5[0-37-9]|
+            5[0-25-9]|
             6[6-9]|
-            7[07-9]|
-            8[7-9]
+            7[03-9]|
+            8[17-9]|
+            9[017-9]
           )\d{6}
         </nationalNumberPattern>
         <possibleNumberPattern>\d{9}</possibleNumberPattern>
       </fixedLine>
       <mobile>
         <!-- Adding 65 and 78 from numbers found online. Also, prefix 670 is added since the carrier
-             Mobilis Algeria provided it, and 54 for Nedjma. Prefixes 67[1-3] were also added for
+             Mobilis Algeria provided it, and 54 for Nedjma. Prefixes 67[1-4] were also added for
              Mobilis Algeria based on evidence found online. -->
         <nationalNumberPattern>
           (?:
           )\d{7}|
           6(?:
             [569]\d|
-            7[0-3]
+            7[0-4]
           )\d{6}
         </nationalNumberPattern>
         <possibleNumberPattern>\d{9}</possibleNumberPattern>
         <exampleNumber>8002123</exampleNumber>
       </noInternationalDialling>
       <fixedLine>
-        <!-- Supporting eFax numbers here as well. -->
         <nationalNumberPattern>
           (?:
             3[23589]|
-            4(?:
-              0\d|
-              [3-8]
-            )|
+            4[3-8]|
             6\d|
             7[1-9]|
             88
           )\d{5}
         </nationalNumberPattern>
-        <possibleNumberPattern>\d{7,8}</possibleNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
         <exampleNumber>3212345</exampleNumber>
       </fixedLine>
       <mobile>
         <exampleNumber>80012345</exampleNumber>
       </tollFree>
       <premiumRate>
-        <nationalNumberPattern>900\d{4}</nationalNumberPattern>
-        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+        <!-- Supporting eFax numbers here as well. We aren't sure the exact cost, but have
+             had user reports that they are expensive to dial. -->
+        <nationalNumberPattern>
+          (?:
+            40\d{2}|
+            900
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,8}</possibleNumberPattern>
         <exampleNumber>9001234</exampleNumber>
       </premiumRate>
       <personalNumber>
         <nationalNumberPattern>
           6(?:
             0[0-8]|
-            [12-7]\d|
-            8[01]|
-            9[2457-9]
+            [12-79]\d|
+            8[01]
           )\d{6}
         </nationalNumberPattern>
         <exampleNumber>650123456</exampleNumber>
             2[034678]\d|
             5(?:
               [047]\d|
-              54
+              5[3-6]|
+              6[01]
             )
           )\d{6}
         </nationalNumberPattern>
           <format>$1 $2</format>
         </numberFormat>
         <numberFormat nationalPrefixFormattingRule="($NP$FG)"
-          pattern="(\d{3})(\d{5,7})">
+          pattern="(\d{3})(\d{5,8})">
           <leadingDigits>
             [4579]|
             2[035-9]|
              Where known, fixed mobile prefixes have been represented as Mobile. -->
         <!-- Very short (5/6 digit) local numbers in Jakarta seem to be special cases for various
              well known companies (Mc Donalds, KFC etc...). Some of these are listed in:
-             http://cms.binus.edu/datapage/file/io/Spring2014SE/International_Student_Handbook_BINUS.pdf -->
+             http://cms.binus.edu/datapage/file/io/Spring2014SE/International_Student_Handbook_BINUS.pdf
+             There seem to be numbers of this length for area code 22 as well based on numbers found
+             online. -->
         <nationalNumberPattern>
           2(?:
             1(?:
               500\d{3}|
               9\d{6}
             )|
-            [24]\d{7,8}
+            2\d{6,8}|
+            4\d{7,8}
           )|
           (?:
             2(?:
               4[1-6]
             )|
             7(?:
-              1[1-46-9]|
+              1[1-9]|
               2[14-9]|
               [36]\d|
               4[1-8]|
             )
           )\d{5,8}
         </nationalNumberPattern>
-        <possibleNumberPattern>\d{5,10}</possibleNumberPattern>
+        <possibleNumberPattern>\d{5,11}</possibleNumberPattern>
         <exampleNumber>612345678</exampleNumber>
       </fixedLine>
       <mobile>
          <numberFormat pattern="(\d{5})(\d{5})">
            <leadingDigits>
              7(?:
-               0[2-8]|
+               0[2-9]|
                2[0579]|
                3[057-9]|
                4[0-389]|
              7(?:
                0(?:
                  2[2-9]|
-                 [3-7]|
-                 8[0-7]
+                 [3-8]|
+                 9[0-8]
                )|
                2(?:
                  0[04-9]|
                2[1-47]|
                3[15]|
                5[12]|
-               6[126-9]|
+               6[0-26-9]|
                7[0-24-9]|
                8[013-57]|
                9[014-7]
               2[1-47]|
               3[15]|
               5[12]|
-              6[126-9]|
+              6[0-26-9]|
               7[0-24-9]|
               8[013-57]|
               9[014-7]
              numbers. It seems almost impossible to know for some of these numbers whether they are
              land-line or mobile, since the ranges overlap. Extra prefixes added: 7601, 768[567],
              7695, 8299, 8309. New prefixes were also added based on the document provided from
-             mobile carriers: https://code.google.com/p/libphonenumber/issues/detail?id=260 -->
+             mobile carriers: https://github.com/googlei18n/libphonenumber/issues/260 -->
         <nationalNumberPattern>
           (?:
             7(?:
               0(?:
                 2[2-9]|
-                [3-7]\d|
-                8[0-7]
+                [3-8]\d|
+                9[0-8]
               )|
               2(?:
                 0[04-9]|
           <leadingDigits>21</leadingDigits>
           <format>$1 $2</format>
         </numberFormat>
-        <numberFormat pattern="(2[15])(\d{3})(\d{3,4})">
-          <leadingDigits>
-            2(?:
-              1|
-              5[0-47-9]
-            )
-          </leadingDigits>
-          <format>$1 $2 $3</format>
-        </numberFormat>
         <numberFormat pattern="(\d{2})(\d{4})(\d{4})">
-          <leadingDigits>
-            2[156]|
-            31|
-            51|
-            71|
-            86
-          </leadingDigits>
+          <leadingDigits>[1-8]</leadingDigits>
           <format>$1 $2 $3</format>
         </numberFormat>
         <numberFormat pattern="(\d{3})(\d{3})(\d{3,4})">
-          <leadingDigits>
-            [13-9]|
-            2[02-47-9]
-          </leadingDigits>
+          <leadingDigits>9</leadingDigits>
           <format>$1 $2 $3</format>
         </numberFormat>
         <numberFormat pattern="(\d{3})(\d{2})(\d{2,3})">
-          <leadingDigits>
-            [13-9]|
-            2[02-47-9]
-          </leadingDigits>
+          <leadingDigits>9</leadingDigits>
           <format>$1 $2 $3</format>
         </numberFormat>
         <numberFormat pattern="(\d{3})(\d{3})">
-          <leadingDigits>
-            [13-9]|
-            2[02-47-9]
-          </leadingDigits>
+          <leadingDigits>9</leadingDigits>
           <format>$1 $2</format>
         </numberFormat>
       </availableFormats>
       <generalDesc>
         <nationalNumberPattern>
-          [14-8]\d{6,9}|
-          [23]\d{4,9}|
+          [1-8]\d{9}|
           9(?:
             [0-4]\d{8}|
             9\d{2,8}
         <possibleNumberPattern>\d{4,10}</possibleNumberPattern>
       </generalDesc>
       <fixedLine>
-        <!-- We are following the more specific lengths specified in the communication in the ITU
-             doc of 26.VIII.2012, rather than the brief summary lengths (which actually contradict).
-             The prefixes have been verified by looking at the Persian telecommunications site.
-             22[189], 29[12] have become 21, as part of the shift to unify prefixes. 746 was also
-             found on the website http://www.tct.ir/?siteid=1&pageid=410&siteid=1 but this seems
-             to be a typo. -->
+        <!-- In Summer 2014 Iran unified all fixed phone numbers in the following way:
+             Each province is assigned a two digit prefix (except for North Khorasan which has 3).
+             Within each province, all numbers are exactly eight digits.  The expression below is
+             organized by province.  For each province we accept all eight-digit combinations.
+
+             11 Mazandaran
+             13 Gilan
+             17 Golestan
+             21 Tehran
+             23 Semnan
+             24 Zanjan
+             25 Qom
+             26 Alborz
+             28 Qazvin
+             31 Isfahan
+             34 Kerman
+             35 Yazd
+             38 Chahar Mahaal and Bakhtiari
+             41 East Azerbaijan
+             44 West Azerbaijan
+             45 Ardabil
+             51 Razavi Khorasan
+             54 Sistan and Baluchestan
+             56 South Khorasan
+             57 North Khorasan (Extras)
+             58 North Khorasan
+             61 Khuzestan
+             64 North Khorasan (Extras)
+             66 Lorestan
+             71 Fars
+             74 Kohgiluyeh and Boyer-Ahmad
+             76 Hormozgan
+             77 Bushehr
+             81 Hamadan
+             83 Kermanshah
+             84 Ilam
+             86 Markazi
+             87 Kurdistan
+             -->
         <nationalNumberPattern>
-          1(?:
-            [13-589][12]|
-            [27][1-4]
-          )\d{7}|
-          2(?:
-            1\d{3,8}|
-            3[12]\d{7}|
-            4(?:
-              1\d{4,7}|
-              2\d{7}
-            )|
-            53\d{7}|
-            6\d{8}|
-            7[34]\d{7}|
-            [89][12]\d{7}
-          )|
-          3(?:
-            1[2-5]\d{7}|
-            2[1-4]\d{7}|
-            3(?:
-              [125]\d{7}|
-              4\d{6,7}
-            )|
-            4(?:
-              1\d{6,7}
-              [24-9]\d{7}
-            )|
-            5(?:
-              1\d{4,7}|
-              [23]\d{7}
-            )|
-            [6-9][12]\d{7}
-          )|
-          4(?:
-            [135-9][12]\d{7}|
-            2[1-467]\d{7}|
-            4(?:
-              1\d{4,7}|
-              [2-4]\d{7}
-            )
-          )|
-          5(?:
-            1[2-5]\d{7}|
-            2[89]\d{7}|
-            3[1-5]\d{7}|
-            4(?:
-              1\d{4,7}|
-              [2-8]\d{7}
-            )|
-            [5-7][12]\d{7}|
-            8[1245]\d{7}
-          )|
-          6(?:
-            1(?:
-              1\d{6,7}|
-              2\d{7}
-            )|
-            [347-9][12]\d{7}|
-            5(?:
-              1\d{7}|
-              2\d{6,7}
-            )|
-            6[1-6]\d{7}
-          )|
-          7(?:
-            1[2-5]|
-            2[1289]|
-            [3589][12]|
-            4[1-4]|
-            6[1-6]|
-            7[1-3]
-          )\d{7}|
-          8(?:
-            [145][12]|
-            3[124578]|
-            6[2-6]|
-            7[1245]
-          )\d{7}
+          (?:
+            1[137]|
+            2[13-68]|
+            3[1458]|
+            4[145]|
+            5[146-8]|
+            6[146]|
+            7[1467]|
+            8[13467]
+          )\d{8}
         </nationalNumberPattern>
-        <possibleNumberPattern>\d{5,10}</possibleNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
         <exampleNumber>2123456789</exampleNumber>
       </fixedLine>
       <mobile>
       </fixedLine>
       <mobile>
         <!-- Adding 27, 28, 299, 31, 508, 527 and 566 as extra prefixes, as they have been found to
-             be valid by sending SMSs and looking at online number lookup sites.
+             be valid by sending SMSs and looking at online number lookup sites. Also added 50[3-79]
+             as we have found information online that the 50[3-9] range has been assigned to Digicel.
 
              Numbers have been found online for the following ranges 29x, 53x, 54x, 55x, 56x.
              Most have mobile numbers online so we have put them under mobile but is possible
             2[1789]\d|
             [348]\d{2}|
             5(?:
-              08|
+              0[3-9]|
               27|
               6[0-24-9]|
               [3-578]\d
           <leadingDigits>
             1(?:
               5[46-9]|
-              6[04678]
+              6[04678]|
+              8[0579]
             )
           </leadingDigits>
           <leadingDigits>
                 6[16]|
                 70|
                 88
+              )|
+              8(?:
+                00|
+                55|
+                77|
+                99
               )
             )
           </leadingDigits>
       <mobile>
         <nationalNumberPattern>1[0-26-9]\d{7,8}</nationalNumberPattern>
         <possibleNumberPattern>\d{9,10}</possibleNumberPattern>
-        <exampleNumber>1023456789</exampleNumber>
+        <exampleNumber>1000000000</exampleNumber>
       </mobile>
       <pager>
         <nationalNumberPattern>15\d{7,8}</nationalNumberPattern>
         <exampleNumber>7012345678</exampleNumber>
       </voip>
       <uan>
+        <!-- Prefix 18 added from numbers found online. -->
         <nationalNumberPattern>
           1(?:
             5(?:
               6[16]|
               70|
               88
+            )|
+            8(?:
+              00|
+              55|
+              77|
+              99
             )
           )\d{4}
         </nationalNumberPattern>
           (?:
             5(?:
               [05]\d|
-              1[0-6]
+              1[0-7]
             )|
             6(?:
               0[034679]|
               55|
               6[069]|
               [79]\d|
-              8[089]
+              8[07-9]
             )
           )\d{5}
         </nationalNumberPattern>
         <exampleNumber>7123456789</exampleNumber>
       </fixedLine>
       <mobile>
-        <!-- Added 776, apparently assigned to Beeline, and 747 for Tele2. -->
+        <!-- Added 708 for Altel, 776 for Beeline, 747 for Tele2. -->
         <nationalNumberPattern>
           7(?:
-            0[01257]|
+            0[012578]|
             47|
             6[02-4]|
             7[15-8]|
         <exampleNumber>21212862</exampleNumber>
       </fixedLine>
       <mobile>
-        <!-- Adding 202[89], 205[89], 207[68] and 209[57] from numbers found online. -->
+        <!-- Adding 202[89], 205[89], 207[68] and 209[15-7] from numbers found online. -->
         <nationalNumberPattern>
           20(?:
             2[2389]|
             5[4-689]|
             7[6-8]|
-            9[57-9]
+            9[15-9]
           )\d{6}
         </nationalNumberPattern>
         <possibleNumberPattern>\d{10}</possibleNumberPattern>
         <possibleNumberPattern>\d{4,11}</possibleNumberPattern>
       </generalDesc>
       <fixedLine>
-        <!-- Note that numbers starting with 2[367] can be a maximum of 10 digits - all others a
-             maximum of 11. -->
+        <!-- Even though 20 is listed in the fixed-line plan, other documentation clarify that it is
+             for VOIP. Furthermore, even though the plan says that numbers beginning with 2[346-8]
+             must be exactly 8 digits, from information found online it seems that they can actually
+             be 6 or 7 digits long. -->
         <nationalNumberPattern>
           (?:
             2(?:
-              2\d{1,2}|
-              3[2-9]|
-              [67]\d|
-              4[1-8]\d?|
-              5[1-5]\d?|
-              9[0-24-9]\d?
+              [259]\d{2,9}|
+              [346-8]\d{4,6}
             )|
-            3(?:
-              [059][05-9]|
-              [13]\d|
-              [26][015-9]|
-              4[0-26-9]|
-              7[0-389]|
-              8[08]
-            )\d?|
-            4\d{2,3}|
-            5(?:
-              [01458]\d|
-              [27][0-69]|
-              3[0-3]|
-              [69][0-7]
-            )\d?|
-            7(?:
-              1[019]|
-              2[05-9]|
-              3[05]|
-              [45][07-9]|
-              [679][089]|
-              8[06-9]
-            )\d?|
-            8(?:
-              0[2-9]|
-              1[0-36-9]|
-              3[3-9]|
-              [469]9|
-              [58][7-9]|
-              7[89]
-            )\d?|
-            9(?:
-              0[89]|
-              2[0-49]|
-              37|
-              49|
-              5[0-27-9]|
-              7[7-9]|
-              9[0-478]
-            )\d?
-          )\d{1,7}
+            (?:
+              [3457]\d{2}|
+              8(?:
+                0[2-9]|
+                [13-9]\d
+              )|
+              9(?:
+                0[89]|
+                [2-579]\d
+              )
+            )\d{1,8}
+          )
         </nationalNumberPattern>
         <exampleNumber>27123456</exampleNumber>
       </fixedLine>
       <mobile>
-        <nationalNumberPattern>
-          6(?:
-            [269][18]|
-            71
-          )\d{6}
-        </nationalNumberPattern>
+        <nationalNumberPattern>6[2679][18]\d{6}</nationalNumberPattern>
         <possibleNumberPattern>\d{9}</possibleNumberPattern>
         <exampleNumber>628123456</exampleNumber>
       </mobile>
       </fixedLine>
       <!-- Also duplicated in Western Sahara, please ensure you update both. -->
       <mobile>
-        <!-- http://www.anrt.ma/sites/default/files/Blocs_de_numeros_par_operateur.pdf -->
+        <!-- http://www.anrt.ma/sites/default/files/Blocs_de_numeros_par_operateur.pdf
+             Prefixes 69[0136] added based on numbers found online. -->
         <nationalNumberPattern>
           6(?:
             0[0-8]|
-            [12-7]\d|
-            8[01]|
-            9[2457-9]
+            [12-79]\d|
+            8[01]
           )\d{6}
         </nationalNumberPattern>
         <exampleNumber>650123456</exampleNumber>
       <availableFormats>
         <!-- Following formatting found online rather than in the ITU document example. -->
         <numberFormat pattern="(\d{2})(\d{2})(\d{2})(\d{2})" nationalPrefixFormattingRule="$FG">
-          <leadingDigits>[89]</leadingDigits>
+          <leadingDigits>9</leadingDigits>
           <format>$1 $2 $3 $4</format>
         </numberFormat>
         <numberFormat pattern="(\d{2})(\d{3})(\d{3})">
           <leadingDigits>6</leadingDigits>
           <format>$1 $2 $3 $4 $5</format>
         </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{3})(\d{2})" nationalPrefixFormattingRule="$FG">
+          <leadingDigits>8</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
       </availableFormats>
       <generalDesc>
         <nationalNumberPattern>[4689]\d{7,8}</nationalNumberPattern>
       </noInternationalDialling>
       <fixedLine>
         <!-- Restricted to this as no numbers with the prefix of 91, 95 or 96 have been found. -->
-        <nationalNumberPattern>9[2-47-9]\d{6}</nationalNumberPattern>
+        <nationalNumberPattern>
+          870\d{5}|
+          9[2-47-9]\d{6}
+        </nationalNumberPattern>
         <possibleNumberPattern>\d{8}</possibleNumberPattern>
         <exampleNumber>99123456</exampleNumber>
       </fixedLine>
         <!-- 4X mobile numbers are actually used by Kosovo. -->
         <nationalNumberPattern>
           6\d{8}|
-          4\d{7}
+          4(?:
+            4\d|
+            5[2-9]
+          )\d{5}
         </nationalNumberPattern>
         <exampleNumber>612345678</exampleNumber>
       </mobile>
       <tollFree>
-        <nationalNumberPattern>
-          (?:
-            8\d|
-            90
-          )\d{6}
-        </nationalNumberPattern>
+        <nationalNumberPattern>90\d{6}</nationalNumberPattern>
         <possibleNumberPattern>\d{8}</possibleNumberPattern>
         <exampleNumber>90123456</exampleNumber>
       </tollFree>
     </territory>
 
     <!-- Montenegro -->
+    <!-- According to EKIP, the detailed phone number assignments are published on their
+         website (regulation:
+         http://www.ekip.me/download/Law%20on%20Electronic%20Communications%20(updated)%204.9.2013%20(1)nova%20verzija.pdf
+         ). Thus ITU updates always need to be combined with the information at the below ekip.me source URL. -->
     <territory id="ME" countryCode="382" internationalPrefix="00" nationalPrefix="0"
                nationalPrefixFormattingRule="$NP$FG">
       <references>
       </references>
       <availableFormats>
          <numberFormat pattern="(\d{2})(\d{3})(\d{3})">
-          <leadingDigits>[2-57-9]|6[3789]</leadingDigits>
+          <leadingDigits>[2-57-9]|6[036-9]</leadingDigits>
           <leadingDigits>
             [2-57-9]|
             6(?:
-              [389]|
+              [03689]|
               7(?:
                 [0-8]|
                 9[3-9]
             20[2-8]|
             3(?:
               0[2-7]|
-              1[35-7]|
-              2[3567]|
+              [12][35-7]|
               3[4-7]
             )|
             4(?:
-              0[237]|
-              1[27]
+              0[2367]|
+              1[267]
             )|
             5(?:
-              0[47]|
-              1[27]|
-              2[378]
+              0[467]|
+              1[267]|
+              2[367]
             )
           )\d{5}
         </nationalNumberPattern>
         <exampleNumber>30234567</exampleNumber>
       </fixedLine>
       <mobile>
-        <!-- Mobile numbers start with 632, 67, 68 or 69. -->
+        <!-- Mobile numbers start with 600, 632, 661, 67, 68 or 69. -->
         <nationalNumberPattern>
           6(?:
+            00\d|
             32\d|
             [89]\d{2}|
+            61\d|
             7(?:
               [0-8]\d|
               9(?:
         <exampleNumber>67622901</exampleNumber>
       </mobile>
       <tollFree>
-        <!-- All toll free numbers have prefix 80 followed by 02 or 08. -->
-        <nationalNumberPattern>800[28]\d{4}</nationalNumberPattern>
+        <!-- All toll free numbers have prefix 80. -->
+        <nationalNumberPattern>80\d{6}</nationalNumberPattern>
         <possibleNumberPattern>\d{8}</possibleNumberPattern>
         <exampleNumber>80080002</exampleNumber>
       </tollFree>
       <premiumRate>
-        <!-- Numbers with prefix 88, 94 or 95 are services with additional charges. -->
+        <!-- Numbers with prefix 94 or 95 are services with additional charges. -->
         <nationalNumberPattern>
           (?:
-            88\d|
             9(?:
-              4[13-8]|
-              5[16-8]
+              4[1568]|
+              5[178]
             )
           )\d{5}
         </nationalNumberPattern>
         </nationalNumberPattern>
         <exampleNumber>35123456</exampleNumber>
       </fixedLine>
-      <!-- Added "49\d" in response to https://code.google.com/p/libphonenumber/issues/detail?id=529
+      <!-- Added "49\d" in response to https://github.com/googlei18n/libphonenumber/issues/529
            which might be overly permissive, but we don't have an official documentation for this
            and only a small number of numbers were found online. At least 492 and 495 are valid.
            -->
       <mobile>
         <!-- Although the plan lists the prefix 159 as broadband services (data only), apparently it
              is possible to send SMSs (and receive them) from numbers in this block, so we are
-             listing them as mobile. -->
+             listing them as mobile. 115 was added based on numbers found online. -->
         <nationalNumberPattern>
           1(?:
-            1[1-3]\d{2}|
+            1[1-35]\d{2}|
             [02-4679][2-9]\d|
             59\d{2}|
             8(?:
         <exampleNumber>106609</exampleNumber>
       </fixedLine>
       <mobile>
-        <nationalNumberPattern>38\d{4}</nationalNumberPattern>
+        <!-- Numbers found online with prefix 35. -->
+        <nationalNumberPattern>3[58]\d{4}</nationalNumberPattern>
         <exampleNumber>381234</exampleNumber>
       </mobile>
     </territory>
           <leadingDigits>
             70|
             8[01]|
-            90[239]
+            90[2359]
           </leadingDigits>
           <format>$1 $2 $3</format>
         </numberFormat>
              from Etisalat, 814 MTN and 811 from Glo. Furthermore, the fixed-line prefixes owned by
              Starcomms have apparently, according to the company, been used for mobile numbers too,
              despite the ITU plan, so we list them here as well. 701 has been added for Airtel/Zain.
-             903 has been added for MTN and 909 has been added for Etisalat. -->
+             903 has been added for MTN, 905 has been added for Globacom (Glo), and 909 has been
+             added for Etisalat. -->
         <nationalNumberPattern>
           (?:
             1(?:
               0[2-9]|
               1\d
             )\d|
-            90[239]\d
+            90[2359]\d
           )\d{6}
         </nationalNumberPattern>
         <possibleNumberPattern>\d{8,10}</possibleNumberPattern>
       <references>
         <sourceUrl>http://www.itu.int/oth/T0202000095/en</sourceUrl>
         <sourceUrl>http://www.ntc.net.np/mobile/mob_postpaid_number_scheme.php</sourceUrl>
+        <sourceUrl>http://www.nta.gov.np/en/2012-06-01-11-45-17/2012-06-04-04-26-59/numbering-plan</sourceUrl>
       </references>
       <availableFormats>
         <!-- Formatting patterns taken from pages like http://www.nepalgov.gov.np -->
         <numberFormat pattern="(9\d{2})(\d{7})">
           <leadingDigits>
             9(?:
-              7[45]|
+              6[013]|
+              7[245]|
               8
             )
             </leadingDigits>
         <nationalNumberPattern>
           [1-8]\d{7}|
           9(?:
-            [1-69]\d{6}|
+            [1-69]\d{6,8}|
             7[2-6]\d{5,7}|
             8\d{8}
           )
         </nationalNumberPattern>
         <possibleNumberPattern>\d{6,10}</possibleNumberPattern>
       </generalDesc>
+      <!-- We don't support Rural Telecommunication Service at the moment since
+           we are not sure what type it is. -->
       <fixedLine>
-        <!-- Added (1) 2XXXXXX and (88) from numbers found online. -->
         <nationalNumberPattern>
           (?:
-            1[0124-6]|
-            2[13-79]|
-            3[135-8]|
-            4[146-9]|
-            5[135-7]|
-            6[13-9]|
-            7[15-9]|
-            8[1-46-9]|
-            9[1-79]
-          )\d{6}
+            1[0-6]\d|
+            2[13-79][2-6]|
+            3[135-8][2-6]|
+            4[146-9][2-6]|
+            5[135-7][2-6]|
+            6[13-9][2-6]|
+            7[15-9][2-6]|
+            8[1-46-9][2-6]|
+            9[1-79][2-6]
+          )\d{5}
         </nationalNumberPattern>
         <possibleNumberPattern>\d{6,8}</possibleNumberPattern>
         <exampleNumber>14567890</exampleNumber>
       </fixedLine>
-      <!-- There is no definitive source of information for mobile numbers in Nepal. The information
-           here is collected by searching the Internet. -->
       <mobile>
         <nationalNumberPattern>
           9(?:
-            7[45]|
+            6[013]|
+            7[245]|
             8[01456]
           )\d{7}
         </nationalNumberPattern>
         <!-- Pattern for fixed-line formats. -->
         <numberFormat pattern="([34679])(\d{3})(\d{4})">
           <leadingDigits>
-            [3467]|
+            [346]|
+            7[2-57-9]|
             9[1-9]
           </leadingDigits>
           <format>$1-$2 $3</format>
               [69]|
               7[0-35-9]
             )|
+            70|
             86
           </leadingDigits>
           <format>$1 $2 $3</format>
         <possibleNumberPattern>\d{7,11}</possibleNumberPattern>
       </generalDesc>
       <fixedLine>
-        <!-- 07 788 was assigned to Voxbox according to
-             http://www.nad.org.nz/07GeographicalCodes.php -->
         <nationalNumberPattern>
           (?:
             3[2-79]|
-            [49][2-689]|
+            [49][2-9]|
             6[235-9]|
-            7[2-5789]
+            7[2-57-9]
           )\d{6}|
           24099\d{3}
         </nationalNumberPattern>
         <possibleNumberPattern>\d{9,11}</possibleNumberPattern>
         <exampleNumber>900123456</exampleNumber>
       </premiumRate>
+      <personalNumber>
+        <nationalNumberPattern>70\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>701234567</exampleNumber>
+      </personalNumber>
     </territory>
 
     <!-- Oman -->
       </fixedLine>
       <mobile>
         <!-- Adding 311, 325 and 320 as SMSs have been successfully sent to these numbers and numbers
-             can be found online with these prefixes. Added 310 based on information from Zong. -->
+             can be found online with these prefixes. Added 310 based on information from Zong, and
+             316 based on information found online. -->
         <nationalNumberPattern>
           3(?:
             0\d|
-            [12][0-5]|
-            3[1-7]|
-            4[0-7]|
+            1[0-6]|
+            2[0-5]|
+            [34][0-7]|
             55|
             64
           )\d{7}
       <references>
         <sourceUrl>http://www.itu.int/oth/T02020000BF/en</sourceUrl>
       </references>
-      <!-- A single group is used to format 5-digit numbers. -->
+      <!-- A single group is used to format 5-digit numbers. This formatting pattern follows
+           the guidelines in the ITU document. -->
       <availableFormats>
-        <numberFormat pattern="(\d{3})(\d{4})">
+        <numberFormat pattern="(\d{2})(\d{5})">
           <leadingDigits>[7-9]</leadingDigits>
           <format>$1 $2</format>
         </numberFormat>
         <exampleNumber>40123</exampleNumber>
       </fixedLine>
       <mobile>
+        <!-- The 795 prefix is not in the ITU plan (5.XII.2014), but was added because such a number
+             was dialed successfully. -->
         <nationalNumberPattern>
           48\d{3}|
           7(?:
-            [0146-8]\d|
+            30|
+            [46-8]\d|
             5[025-9]|
-            9[04]
+            9[0-5]
           )\d{4}|
           8[4-8]\d{5}|
           9(?:
+            1[2-9]|
+            2[013-9]|
+            3[0-2]|
             [46]\d|
             5[0-46-9]|
             7[0-689]|
         <exampleNumber>22212345</exampleNumber>
       </fixedLine>
       <mobile>
-        <nationalNumberPattern>9[0-289]\d{6}</nationalNumberPattern>
+        <!-- Prefix 93 is from an open-source bug report -->
+        <nationalNumberPattern>9[0-389]\d{6}</nationalNumberPattern>
         <exampleNumber>90112345</exampleNumber>
       </mobile>
     </territory>
           <leadingDigits>2</leadingDigits>
           <format>$1 $2 $3</format>
         </numberFormat>
-        <numberFormat pattern="([3-9]\d)(\d{3})(\d{3,4})">
-          <leadingDigits>[3-9]</leadingDigits>
+        <numberFormat pattern="([13-9]\d)(\d{3})(\d{3,4})">
+          <leadingDigits>
+            14|
+            [3-9]
+          </leadingDigits>
           <format>$1 $2 $3</format>
         </numberFormat>
         <numberFormat nationalPrefixFormattingRule="$FG"
       <generalDesc>
         <nationalNumberPattern>
           [2-9]\d{7,8}|
-          1\d{3}(?:\d{6})?
+          1\d{3}(?:\d{5,6})?
         </nationalNumberPattern>
         <possibleNumberPattern>\d{4}|\d{8,10}</possibleNumberPattern>
       </generalDesc>
         <exampleNumber>21234567</exampleNumber>
       </fixedLine>
       <mobile>
+        <!-- Numbers found online starting with 62. 14 and 63 are from an open-source bug report,
+             we couldn't find evidence of these specifically being in use but this article
+             http://www.prachachat.net/news_detail.php?newsid=1395732787&grpid=03&catid=06&subcatid=0600
+             talks about prefix 6 and 1 being cleared for mobile use. -->
         <nationalNumberPattern>
           (?:
-            61|
+            14|
+            6[1-3]|
             [89]\d
           )\d{7}
         </nationalNumberPattern>
       </fixedLine>
       <mobile>
         <!-- Adding 90 prefix as SMS messages could be successfully delivered to these mobile
-             numbers, and 501 for TCell. -->
+             numbers, and 50[12] for TCell from bug reports. -->
         <nationalNumberPattern>
           (?:
-            50[15]|
+            50[125]|
             9[0-35-9]\d
           )\d{6}
         </nationalNumberPattern>
         <numberFormat pattern="(\d{3})(\d{4})">
           <leadingDigits>
             7[5-9]|
-            8[7-9]
+            8[47-9]
           </leadingDigits>
           <format>$1 $2</format>
         </numberFormat>
       </fixedLine>
       <mobile>
         <!-- TCC mobile numbers were given a prefix of "77" in 2009, although this is not mentioned
-             in their ITU document. Numbers with a prefix of "75" have also been found. -->
+             in their ITU document. Numbers with a prefix of "75" and "84" have also been found. -->
         <nationalNumberPattern>
           (?:
             7[578]|
-            8[7-9]
+            8[47-9]
           )\d{5}
         </nationalNumberPattern>
         <possibleNumberPattern>\d{7}</possibleNumberPattern>
         <nationalNumberPattern>
           868(?:
             2(?:
-              01|
+              [03]1|
               2[1-5]
             )|
             6(?:
-              07|
-              1[4-6]|
+              0[79]|
+              1[02-9]|
               2[1-9]|
-              [3-6]\d|
-              7[0-79]|
-              9[0-8]
+              [3-69]\d|
+              7[0-79]
             )|
-            82[12]
+            82[124]
           )\d{4}
         </nationalNumberPattern>
         <exampleNumber>8682211234</exampleNumber>
       </fixedLine>
       <mobile>
-        <!-- Adding 48X & 70X from the IR21 published by TSTT. 288 seems to be used based on numbers
-             found online. -->
         <nationalNumberPattern>
           868(?:
             2(?:
-              8[5-9]|
-              9\d
+              [89]\d
             )|
             3(?:
               0[1-9]|
               8\d
             )|
             7(?:
+              0[1-9]|
               1[02-9]|
-              [02-9]\d
+              [2-9]\d
             )
           )\d{4}
         </nationalNumberPattern>
       <mobile>
         <nationalNumberPattern>
           (?:
-            6[158]|
+            6[1578]|
             7[1-9]
           )\d{7}
         </nationalNumberPattern>
         <sourceUrl>http://www.itu.int/oth/T02020000B4/en</sourceUrl>
       </references>
       <availableFormats>
-        <!-- Should be formatted in one block, apart from the specific series below. -->
         <numberFormat pattern="(8\d{2})(\d{3,4})">
           <leadingDigits>8</leadingDigits>
           <format>$1 $2</format>
           <leadingDigits>7</leadingDigits>
           <format>$1 $2</format>
         </numberFormat>
+        <numberFormat pattern="(\d{5})">
+          <leadingDigits>[2-6]</leadingDigits>
+          <format>$1</format>
+        </numberFormat>
       </availableFormats>
       <generalDesc>
         <nationalNumberPattern>[2-8]\d{4,6}</nationalNumberPattern>