Merge remote-tracking branch 'origin/kitkat-dev'
diff --git a/PhoneNumberAlternateFormats.xml b/PhoneNumberAlternateFormats.xml
new file mode 100644
index 0000000..5997ac1
--- /dev/null
+++ b/PhoneNumberAlternateFormats.xml
@@ -0,0 +1,878 @@
+<!-- Copyright (C) 2011 The Libphonenumber Authors
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+
+     @author: Lara Rennie
+     @author: Shaopeng Jia
+
+     Additional Phone Number Formatting information, containing alternative
+     formats that are commonly used when writing phone numbers in certain
+     countries. Note that this is in addition to the formatting information
+     provided by the main PhoneNumberMetaData.xml file - formatting patterns
+     should not be duplicated.
+
+     Note also that only the most specific leading-digits pattern is present for
+     each pattern - the less specific ones are used only by the
+     AsYouTypeFormatter, and the AsYouTypeFormatter does not require information
+     on alternate formatting patterns.
+
+     For regions that share a country calling code, only the region with
+     mainCountryForCode set to true in PhoneNumberMetaData.xml should be present
+     here.
+
+     Note: Territories are in alphabetical order by their IDs, which are based on ISO 3166-1
+           two-letter country codes. The country names in the comments are the official short names
+           in English according to ISO 3166-1.
+
+     For more information on what each element represents, see
+     resources/phonemetadata.proto
+-->
+
+<!DOCTYPE phoneNumberMetadata [
+    <!ELEMENT phoneNumberMetadata (territories)>
+    <!ELEMENT territories (territory+)>
+    <!ELEMENT territory (availableFormats)>
+    <!ELEMENT numberFormat (leadingDigits*, format, intlFormat*)>
+    <!ELEMENT leadingDigits (#PCDATA)>
+    <!ELEMENT format (#PCDATA)>
+    <!ELEMENT intlFormat (#PCDATA)>
+
+    <!ATTLIST territory countryCode CDATA #REQUIRED>
+    <!ATTLIST numberFormat pattern CDATA #REQUIRED>
+]>
+
+<phoneNumberMetadata>
+  <territories>
+    <!-- Australia (AU) -->
+    <territory countryCode="61">
+      <availableFormats>
+        <numberFormat pattern="(1[389]\d{2})(\d{2})(\d{2})(\d{2})">
+          <leadingDigits>
+            1(?:
+              [38]00|
+              90
+            )
+          </leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(1[389]\d{2})(\d{6})">
+          <leadingDigits>
+            1(?:
+              [38]00|
+              90
+            )
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="([2378])(\d{8})">
+          <leadingDigits>[2378]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+    </territory>
+
+    <!-- Austria (AT) -->
+    <territory countryCode="43">
+      <availableFormats>
+        <numberFormat pattern="(5)(\d{3,12})">
+         <leadingDigits>5[079]</leadingDigits>
+           <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(50)(\d{2})(\d{2})(\d{2,4})">
+          <leadingDigits>50</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(5\d)(\d{2})(\d{2})(\d{2})(\d{2,4})">
+          <leadingDigits>5[079]</leadingDigits>
+          <format>$1 $2 $3 $4 $5</format>
+        </numberFormat>
+        <numberFormat pattern="(5\d)(\d{5})(\d{4,6})">
+          <leadingDigits>5[079]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(5\d)(\d{6,7})">
+          <leadingDigits>5[079]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+    </territory>
+
+    <!-- Brazil (BR) -->
+    <territory countryCode="55">
+      <availableFormats>
+        <numberFormat pattern="(\d{2})(\d{8})" >
+          <leadingDigits>[1-9][1-9]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+    </territory>
+
+    <!-- Germany (DE) -->
+    <territory countryCode="49">
+      <availableFormats>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{3,4})">
+          <leadingDigits>
+            3[02]|
+            40|
+            [68]9
+          </leadingDigits>
+          <format>$1/$2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{2})(\d{2})(\d{2})(\d{2})">
+          <leadingDigits>
+            3[02]|
+            40|
+            [68]9
+          </leadingDigits>
+          <format>$1/$2 $3 $4 $5</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{4})(\d{3,4})">
+          <leadingDigits>
+            3[02]|
+            40|
+            [68]9
+          </leadingDigits>
+          <format>$1/$2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{2})(\d{2})">
+          <leadingDigits>
+            3[02]|
+            40|
+            [68]9
+          </leadingDigits>
+          <format>$1/$2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{3})(\d{2,3})">
+          <leadingDigits>
+            3[02]|
+            40|
+            [68]9
+          </leadingDigits>
+          <format>$1/$2 $3 $4</format>
+        </numberFormat>
+        <!-- 3 digit area codes. -->
+        <numberFormat pattern="(\d{3})(\d{3})(\d{2,4})">
+          <leadingDigits>
+            2(?:
+              \d1|
+              0[2389]|
+              1[24]|
+              28|
+              34
+            )|
+            3(?:
+              [3-9][15]|
+              40
+            )|
+            [4-8][1-9]1|
+            9(?:
+              06|
+              [1-9]1
+            )
+          </leadingDigits>
+          <format>$1/$2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{4})(\d{3,4})">
+          <leadingDigits>
+            2(?:
+              \d1|
+              0[2389]|
+              1[24]|
+              28|
+              34
+            )|
+            3(?:
+              [3-9][15]|
+              40
+            )|
+            [4-8][1-9]1|
+            9(?:
+              06|
+              [1-9]1
+            )
+          </leadingDigits>
+          <format>$1/$2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{3})(\d{2})(\d{2})">
+          <leadingDigits>
+            2(?:
+              \d1|
+              0[2389]|
+              1[24]|
+              28|
+              34
+            )|
+            3(?:
+              [3-9][15]|
+              40
+            )|
+            [4-8][1-9]1|
+            9(?:
+              06|
+              [1-9]1
+            )
+          </leadingDigits>
+          <format>$1/$2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{3})(\d{2})(\d{2})(\d)">
+          <leadingDigits>
+            2(?:
+              \d1|
+              0[2389]|
+              1[24]|
+              28|
+              34
+            )|
+            3(?:
+              [3-9][15]|
+              40
+            )|
+            [4-8][1-9]1|
+            9(?:
+              06|
+              [1-9]1
+            )
+          </leadingDigits>
+          <format>$1/$2 $3 $4 $5</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{3})(\d{3})(\d{2,3})">
+          <leadingDigits>
+            2(?:
+              \d1|
+              0[2389]|
+              1[24]|
+              28|
+              34
+            )|
+            3(?:
+              [3-9][15]|
+              40
+            )|
+            [4-8][1-9]1|
+            9(?:
+              06|
+              [1-9]1
+            )
+          </leadingDigits>
+          <format>$1/$2 $3 $4</format>
+        </numberFormat>
+        <!-- 4 digit area codes. -->
+        <numberFormat pattern="(\d{4})(\d{3})(\d{3,4})">
+          <leadingDigits>
+            [24-6]|
+            [7-9](?:
+              \d[1-9]|
+              [1-9]\d
+            )|
+            3(?:
+              3(?:
+                0[1-467]|
+                2[127-9]|
+                3[124578]|
+                [46][1246]|
+                7[1257-9]|
+                8[1256]|
+                9[145]
+              )|
+              4(?:
+                2[135]|
+                3[1357]|
+                4[13578]|
+                6[1246]|
+                7[1356]|
+                9[1346]
+              )|
+              5(?:
+                0[14]|
+                2[1-3589]|
+                3[1357]|
+                4[1246]|
+                6[1-4]|
+                7[1346]|
+                8[13568]|
+                9[1246]
+              )|
+              6(?:
+                0[356]|
+                2[1-489]|
+                3[124-6]|
+                4[1347]|
+                6[13]|
+                7[12579]|
+                8[1-356]|
+                9[135]
+              )|
+              7(?:
+                2[1-7]|
+                3[1357]|
+                4[145]|
+                6[1-5]|
+                7[1-4]
+              )|
+              8(?:
+                21|
+                3[1468]|
+                4[1347]|
+                6[0135-9]|
+                7[1467]|
+                8[136]
+              )|
+              9(?:
+                0[12479]|
+                2[1358]|
+                3[1357]|
+                4[134679]|
+                6[1-9]|
+                7[136]|
+                8[147]|
+                9[1468]
+              )
+            )
+          </leadingDigits>
+          <format>$1/$2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{4})(\d{4})(\d{1,4})">
+          <leadingDigits>
+            [24-6]|
+            [7-9](?:
+              \d[1-9]|
+              [1-9]\d
+            )|
+            3(?:
+              3(?:
+                0[1-467]|
+                2[127-9]|
+                3[124578]|
+                [46][1246]|
+                7[1257-9]|
+                8[1256]|
+                9[145]
+              )|
+              4(?:
+                2[135]|
+                3[1357]|
+                4[13578]|
+                6[1246]|
+                7[1356]|
+                9[1346]
+              )|
+              5(?:
+                0[14]|
+                2[1-3589]|
+                3[1357]|
+                4[1246]|
+                6[1-4]|
+                7[1346]|
+                8[13568]|
+                9[1246]
+              )|
+              6(?:
+                0[356]|
+                2[1-489]|
+                3[124-6]|
+                4[1347]|
+                6[13]|
+                7[12579]|
+                8[1-356]|
+                9[135]
+              )|
+              7(?:
+                2[1-7]|
+                3[1357]|
+                4[145]|
+                6[1-5]|
+                7[1-4]
+              )|
+              8(?:
+                21|
+                3[1468]|
+                4[1347]|
+                6[0135-9]|
+                7[1467]|
+                8[136]
+              )|
+              9(?:
+                0[12479]|
+                2[1358]|
+                3[1357]|
+                4[134679]|
+                6[1-9]|
+                7[136]|
+                8[147]|
+                9[1468]
+              )
+            )
+          </leadingDigits>
+          <format>$1/$2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{4})(\d{3})(\d{3})(\d{3})">
+          <leadingDigits>
+            [24-6]|
+            [7-9](?:
+              \d[1-9]|
+              [1-9]\d
+            )|
+            3(?:
+              3(?:
+                0[1-467]|
+                2[127-9]|
+                3[124578]|
+                [46][1246]|
+                7[1257-9]|
+                8[1256]|
+                9[145]
+              )|
+              4(?:
+                2[135]|
+                3[1357]|
+                4[13578]|
+                6[1246]|
+                7[1356]|
+                9[1346]
+              )|
+              5(?:
+                0[14]|
+                2[1-3589]|
+                3[1357]|
+                4[1246]|
+                6[1-4]|
+                7[1346]|
+                8[13568]|
+                9[1246]
+              )|
+              6(?:
+                0[356]|
+                2[1-489]|
+                3[124-6]|
+                4[1347]|
+                6[13]|
+                7[12579]|
+                8[1-356]|
+                9[135]
+              )|
+              7(?:
+                2[1-7]|
+                3[1357]|
+                4[145]|
+                6[1-5]|
+                7[1-4]
+              )|
+              8(?:
+                21|
+                3[1468]|
+                4[1347]|
+                6[0135-9]|
+                7[1467]|
+                8[136]
+              )|
+              9(?:
+                0[12479]|
+                2[1358]|
+                3[1357]|
+                4[134679]|
+                6[1-9]|
+                7[136]|
+                8[147]|
+                9[1468]
+              )
+            )
+          </leadingDigits>
+          <format>$1/$2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{4})(\d{2})(\d{3})(\d{2})">
+          <leadingDigits>
+            [24-6]|
+            [7-9](?:
+              \d[1-9]|
+              [1-9]\d
+            )|
+            3(?:
+              3(?:
+                0[1-467]|
+                2[127-9]|
+                3[124578]|
+                [46][1246]|
+                7[1257-9]|
+                8[1256]|
+                9[145]
+              )|
+              4(?:
+                2[135]|
+                3[1357]|
+                4[13578]|
+                6[1246]|
+                7[1356]|
+                9[1346]
+              )|
+              5(?:
+                0[14]|
+                2[1-3589]|
+                3[1357]|
+                4[1246]|
+                6[1-4]|
+                7[1346]|
+                8[13568]|
+                9[1246]
+              )|
+              6(?:
+                0[356]|
+                2[1-489]|
+                3[124-6]|
+                4[1347]|
+                6[13]|
+                7[12579]|
+                8[1-356]|
+                9[135]
+              )|
+              7(?:
+                2[1-7]|
+                3[1357]|
+                4[145]|
+                6[1-5]|
+                7[1-4]
+              )|
+              8(?:
+                21|
+                3[1468]|
+                4[1347]|
+                6[0135-9]|
+                7[1467]|
+                8[136]
+              )|
+              9(?:
+                0[12479]|
+                2[1358]|
+                3[1357]|
+                4[134679]|
+                6[1-9]|
+                7[136]|
+                8[147]|
+                9[1468]
+              )
+            )
+          </leadingDigits>
+          <format>$1/$2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{4})(\d{3})(\d{2})(\d{2})">
+          <leadingDigits>
+            [24-6]|
+            [7-9](?:
+              \d[1-9]|
+              [1-9]\d
+            )|
+            3(?:
+              3(?:
+                0[1-467]|
+                2[127-9]|
+                3[124578]|
+                [46][1246]|
+                7[1257-9]|
+                8[1256]|
+                9[145]
+              )|
+              4(?:
+                2[135]|
+                3[1357]|
+                4[13578]|
+                6[1246]|
+                7[1356]|
+                9[1346]
+              )|
+              5(?:
+                0[14]|
+                2[1-3589]|
+                3[1357]|
+                4[1246]|
+                6[1-4]|
+                7[1346]|
+                8[13568]|
+                9[1246]
+              )|
+              6(?:
+                0[356]|
+                2[1-489]|
+                3[124-6]|
+                4[1347]|
+                6[13]|
+                7[12579]|
+                8[1-356]|
+                9[135]
+              )|
+              7(?:
+                2[1-7]|
+                3[1357]|
+                4[145]|
+                6[1-5]|
+                7[1-4]
+              )|
+              8(?:
+                21|
+                3[1468]|
+                4[1347]|
+                6[0135-9]|
+                7[1467]|
+                8[136]
+              )|
+              9(?:
+                0[12479]|
+                2[1358]|
+                3[1357]|
+                4[134679]|
+                6[1-9]|
+                7[136]|
+                8[147]|
+                9[1468]
+              )
+            )
+          </leadingDigits>
+          <format>$1/$2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{4})(\d{2})(\d{2})(\d{2,3})">
+          <leadingDigits>
+            [24-6]|
+            [7-9](?:
+              \d[1-9]|
+              [1-9]\d
+            )|
+            3(?:
+              3(?:
+                0[1-467]|
+                2[127-9]|
+                3[124578]|
+                [46][1246]|
+                7[1257-9]|
+                8[1256]|
+                9[145]
+              )|
+              4(?:
+                2[135]|
+                3[1357]|
+                4[13578]|
+                6[1246]|
+                7[1356]|
+                9[1346]
+              )|
+              5(?:
+                0[14]|
+                2[1-3589]|
+                3[1357]|
+                4[1246]|
+                6[1-4]|
+                7[1346]|
+                8[13568]|
+                9[1246]
+              )|
+              6(?:
+                0[356]|
+                2[1-489]|
+                3[124-6]|
+                4[1347]|
+                6[13]|
+                7[12579]|
+                8[1-356]|
+                9[135]
+              )|
+              7(?:
+                2[1-7]|
+                3[1357]|
+                4[145]|
+                6[1-5]|
+                7[1-4]
+              )|
+              8(?:
+                21|
+                3[1468]|
+                4[1347]|
+                6[0135-9]|
+                7[1467]|
+                8[136]
+              )|
+              9(?:
+                0[12479]|
+                2[1358]|
+                3[1357]|
+                4[134679]|
+                6[1-9]|
+                7[136]|
+                8[147]|
+                9[1468]
+              )
+            )
+          </leadingDigits>
+          <format>$1/$2 $3 $4</format>
+        </numberFormat>
+        <!-- 5 digit area codes. -->
+        <numberFormat pattern="(\d{5})(\d{3})(\d{3,4})">
+          <leadingDigits>3</leadingDigits>
+          <format>$1/$2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{5})(\d{4})(\d{3,4})">
+          <leadingDigits>3</leadingDigits>
+          <format>$1/$2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{5})(\d{3})(\d{3})(\d{3})">
+          <leadingDigits>3</leadingDigits>
+          <format>$1/$2 $3 $4</format>
+        </numberFormat>
+        <!-- Mobile number formatting rules. -->
+        <numberFormat pattern="(1\d{3})(\d{2})(\d{3})(\d{2})">
+          <leadingDigits>15</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(1\d{3})(\d{3})(\d{4})">
+          <leadingDigits>15</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(1\d{3})(\d{4})(\d{3})">
+          <leadingDigits>15</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(1\d{2})(\d{8})">
+          <leadingDigits>15</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="([18]\d{2})(\d{2,3})(\d{3})(\d{2})">
+          <leadingDigits>
+            1[5-7]|
+            800
+          </leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(8\d{2})(\d{6})(\d{2})(\d{1,4})">
+          <leadingDigits>800</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d)(\d{3})(\d{3,4})">
+          <leadingDigits>
+            180|
+            900[1359]
+          </leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d)(\d{4})(\d{3,4})">
+          <leadingDigits>
+            180|
+            900[1359]
+          </leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{4})(\d{4,10})">
+          <leadingDigits>
+            180|
+            900[1359]
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{3})(\d{4})(\d{2})">
+          <leadingDigits>
+            900[1359]
+          </leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+    </territory>
+
+    <!-- Great Britain (GB) -->
+    <territory countryCode="44" >
+      <availableFormats>
+        <!-- London. -->
+        <numberFormat pattern="(\d{3})(\d{3})(\d{4})">
+          <leadingDigits>20</leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <!-- 7ddd (not 70, 76) with 10 digits. Note: DOES include 7624 when used for IM. Also
+             includes the four-digit fixed-line codes. -->
+        <numberFormat pattern="(\d{4})(\d{3})(\d{3})">
+          <leadingDigits>
+            1[2-48][02-9]|
+            7(?:
+              [1-5789]|
+              624
+            )
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <!-- 7ddd (not 70, 76) with 10 digits.-->
+        <numberFormat pattern="(\d{3})(\d{4})(\d{3})">
+          <leadingDigits>7[1-5789]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(80\d)(\d{3,4})(\d{3})">
+          <leadingDigits>80</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+    </territory>
+
+    <!-- Japan (JP) -->
+    <territory countryCode="81" >
+      <availableFormats>
+        <!-- Toll-free, premium-rate and UAN numbers -->
+        <numberFormat pattern="(\d{3})(\d{2})(\d{4})">
+          <leadingDigits>
+            (?:
+              12|
+              57|
+              99
+            )0
+          </leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{2})(\d{2})(\d{2})">
+          <leadingDigits>
+            (?:
+              12|
+              57|
+              99
+            )0
+          </leadingDigits>
+          <format>$1-$2-$3-$4</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{4})(\d{2})">
+          <leadingDigits>
+            (?:
+              12|
+              57|
+              99
+            )0
+          </leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+      </availableFormats>
+    </territory>
+
+    <!-- Portugal (PT) -->
+    <territory countryCode="351" >
+      <availableFormats>
+        <!-- Lisbon/Porto numbers are usually formatted with the 21 or 22 separated - but sometimes
+             they are formatted as 21X or 22X. -->
+        <numberFormat pattern="(2\d{2})(\d{3})(\d{3})">
+          <leadingDigits>2[12]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <!-- Commonly used mobile formatting pattern. -->
+        <numberFormat pattern="(9\d)(\d{3})(\d{4})">
+          <leadingDigits>9</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{2})(\d{2})">
+          <leadingDigits>
+            2[12]|
+            9
+          </leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+    </territory>
+  </territories>
+</phoneNumberMetadata>
diff --git a/PhoneNumberMetaData.xml b/PhoneNumberMetaData.xml
new file mode 100644
index 0000000..5d8e732
--- /dev/null
+++ b/PhoneNumberMetaData.xml
@@ -0,0 +1,25824 @@
+<!-- Copyright (C) 2009 The Libphonenumber Authors
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+     http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+
+     @author: Shaopeng Jia
+     @author: Lara Rennie
+
+     MetaData on Phone Number Plan and formatting rules
+     Note: Territories are in alphabetical order by their IDs, which are based on ISO 3166-1
+           two-letter country codes (or are set to "001" for non-geographical entities, which
+           represents "World" in the UN M.49 standard). The country names in the comments are the
+           official short names in English according to ISO 3166-1.
+
+     For more information on what each element represents, see
+     resources/phonemetadata.proto
+
+     Note that if you want to add validation metadata, the generalDesc nationalNumberPattern and
+     possibleNumberPattern must be provided. If this is missing, then the country will be
+     considered to have no more specific phone-number type metadata (fixedLine, mobile etc) and
+     hence only basic validation rules (numbers should be between 3 and 15 digits long) will be
+     applied.
+
+     If adding an element for a non-geographical entity, please add an example number element to the
+     general description.
+
+     Country code, international and national prefix information main source:
+     http://www.itu.int/pub/T-SP-E.164C-2011
+
+     Emergency numbers Wikipedia source:
+     http://en.wikipedia.org/wiki/Emergency_telephone_number
+-->
+
+<!DOCTYPE phoneNumberMetadata [
+    <!ELEMENT phoneNumberMetadata (territories)>
+    <!ELEMENT territories (territory+)>
+    <!ELEMENT territory (availableFormats?, generalDesc?, noInternationalDialling?,
+        areaCodeOptional?, fixedLine?, mobile?, pager?, tollFree?, premiumRate?,
+        sharedCost?, personalNumber?, voip?, uan?, voicemail?, shortCode?, emergency?)>
+    <!ELEMENT generalDesc (nationalNumberPattern, possibleNumberPattern, exampleNumber?)>
+    <!ELEMENT noInternationalDialling (nationalNumberPattern, possibleNumberPattern?,
+        exampleNumber?)>
+    <!ELEMENT areaCodeOptional (nationalNumberPattern, possibleNumberPattern, exampleNumber?)>
+    <!ELEMENT fixedLine (nationalNumberPattern?, possibleNumberPattern?, exampleNumber?)>
+    <!ELEMENT mobile (nationalNumberPattern?, possibleNumberPattern?, exampleNumber?)>
+    <!ELEMENT pager (nationalNumberPattern?, possibleNumberPattern?, exampleNumber?)>
+    <!ELEMENT tollFree (nationalNumberPattern?, possibleNumberPattern?, exampleNumber?)>
+    <!ELEMENT premiumRate (nationalNumberPattern?, possibleNumberPattern?, exampleNumber?)>
+    <!ELEMENT sharedCost (nationalNumberPattern?, possibleNumberPattern?, exampleNumber?)>
+    <!ELEMENT personalNumber (nationalNumberPattern?, possibleNumberPattern?, exampleNumber?)>
+    <!ELEMENT voip (nationalNumberPattern?, possibleNumberPattern?, exampleNumber?)>
+    <!ELEMENT uan (nationalNumberPattern?, possibleNumberPattern?, exampleNumber?)>
+    <!ELEMENT voicemail (nationalNumberPattern?, possibleNumberPattern?, exampleNumber?)>
+    <!ELEMENT shortCode (nationalNumberPattern?, possibleNumberPattern?, exampleNumber?)>
+    <!ELEMENT emergency (nationalNumberPattern?, possibleNumberPattern?, exampleNumber?)>
+    <!ELEMENT availableFormats (numberFormat+)>
+    <!ELEMENT nationalNumberPattern (#PCDATA)>
+    <!ELEMENT possibleNumberPattern (#PCDATA)>
+    <!ELEMENT exampleNumber (#PCDATA)>
+    <!ELEMENT numberFormat (leadingDigits*, format, intlFormat*)>
+    <!ELEMENT format (#PCDATA)>
+    <!ELEMENT intlFormat (#PCDATA)>
+    <!ELEMENT leadingDigits (#PCDATA)>
+
+    <!ATTLIST territory id CDATA #REQUIRED>
+    <!ATTLIST territory countryCode CDATA #REQUIRED>
+    <!ATTLIST territory mainCountryForCode (true) #IMPLIED>
+    <!ATTLIST territory leadingDigits CDATA #IMPLIED>
+    <!ATTLIST territory preferredInternationalPrefix CDATA #IMPLIED>
+    <!ATTLIST territory internationalPrefix CDATA #IMPLIED>
+    <!ATTLIST territory nationalPrefix CDATA #IMPLIED>
+    <!ATTLIST territory nationalPrefixForParsing CDATA #IMPLIED>
+    <!ATTLIST territory nationalPrefixTransformRule CDATA #IMPLIED>
+    <!ATTLIST territory preferredExtnPrefix CDATA #IMPLIED>
+    <!ATTLIST territory nationalPrefixFormattingRule CDATA #IMPLIED>
+    <!ATTLIST territory nationalPrefixOptionalWhenFormatting (true) #IMPLIED>
+    <!ATTLIST territory leadingZeroPossible (true) #IMPLIED>
+    <!ATTLIST territory carrierCodeFormattingRule CDATA #IMPLIED>
+    <!ATTLIST numberFormat nationalPrefixFormattingRule CDATA #IMPLIED>
+    <!ATTLIST numberFormat nationalPrefixOptionalWhenFormatting (true) #IMPLIED>
+    <!ATTLIST numberFormat carrierCodeFormattingRule CDATA #IMPLIED>
+    <!ATTLIST numberFormat pattern CDATA #REQUIRED>
+]>
+
+<phoneNumberMetadata>
+  <territories>
+    <!-- Ascension Island -->
+    <!-- www.itu.int/oth/T02020000AF -->
+    <territory id="AC" countryCode="247" internationalPrefix="00">
+      <!-- Formatted as a block. -->
+      <generalDesc>
+        <nationalNumberPattern>[2-467]\d{3}</nationalNumberPattern>
+        <possibleNumberPattern>\d{4}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            [267]\d|
+            3[0-5]|
+            4[4-69]
+          )\d{2}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{4}</possibleNumberPattern>
+        <exampleNumber>6889</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>NA</nationalNumberPattern>
+        <possibleNumberPattern>NA</possibleNumberPattern>
+      </mobile>
+      <emergency>
+        <!-- http://studentsabroad.state.gov/content/pdfs/911_ABROAD.pdf
+             http://www.noonsite.com/Countries/AscensionIsland/?rc=GeneralInfo
+             Note the 4-digit emergency numbers fit the fixed-line pattern, therefore are not
+             included. This is consistent with how we handle such numbers in other countries. -->
+        <nationalNumberPattern>911</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>911</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Andorra -->
+    <!-- http://www.itu.int/oth/T0202000005/en -->
+    <territory id="AD" countryCode="376" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{3})">
+          <leadingDigits>[346-9]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(180[02])(\d{4})">
+          <leadingDigits>1</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          (?:
+            [346-9]|
+            180
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,8}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>[78]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6}</possibleNumberPattern>
+        <exampleNumber>712345</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>[346]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6}</possibleNumberPattern>
+        <exampleNumber>312345</exampleNumber>
+      </mobile>
+      <tollFree>
+        <!-- Note that the definitions of 1800 and 1802 numbers differ in the plan and on the
+             Andorran www.sta.ad website, but we consider both to be freephone here. -->
+        <nationalNumberPattern>180[02]\d{4}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>18001234</exampleNumber>
+      </tollFree>
+      <!-- The national numbering plan says that numbers beginning with 9 are reserved for special
+           services, so we assume they are premium rate here, although we cannot find examples
+           online. -->
+      <premiumRate>
+        <nationalNumberPattern>9\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6}</possibleNumberPattern>
+        <exampleNumber>912345</exampleNumber>
+      </premiumRate>
+      <emergency>
+      <!-- http://www.fco.gov.uk/en/travel-and-living-abroad/travel-advice-by-country/europe/andorra
+           -->
+        <nationalNumberPattern>11[0268]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!--  United Arab Emirates -->
+    <!-- http://www.itu.int/oth/T02020000DC/en -->
+    <territory id="AE" countryCode="971" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat pattern="([2-4679])(\d{3})(\d{4})">
+          <leadingDigits>[2-4679][2-8]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(5[0256])(\d{3})(\d{4})">
+          <leadingDigits>5</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="([479]00)(\d)(\d{5})" nationalPrefixFormattingRule="$FG">
+          <leadingDigits>[479]0</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="([68]00)(\d{2,9})" nationalPrefixFormattingRule="$FG">
+          <leadingDigits>
+            60|
+            8
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [2-79]\d{7,8}|
+          800\d{2,9}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,12}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>[2-4679][2-8]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7,8}</possibleNumberPattern>
+        <exampleNumber>22345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>5[0256]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>501234567</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>
+          400\d{6}|
+          800\d{2,9}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,12}</possibleNumberPattern>
+        <exampleNumber>800123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>900[02]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>900234567</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <nationalNumberPattern>700[05]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>700012345</exampleNumber>
+      </sharedCost>
+      <uan>
+        <nationalNumberPattern>600[25]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>600212345</exampleNumber>
+      </uan>
+      <emergency>
+        <nationalNumberPattern>
+          112|
+          99[789]
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Afghanistan -->
+    <!-- http://www.itu.int/oth/T0202000001/en -->
+    <territory id="AF" countryCode="93" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat pattern="([2-7]\d)(\d{3})(\d{4})">
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[2-7]\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7,9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            [25][0-8]|
+            [34][0-4]|
+            6[0-5]
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>234567890</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>7[057-9]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>701234567</exampleNumber>
+      </mobile>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            02|
+            19
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>119</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Antigua and Barbuda -->
+    <!-- http://www.itu.int/oth/T0202000008/en -->
+    <territory id="AG" countryCode="1" leadingDigits="268" nationalPrefix="1"
+               internationalPrefix="011">
+      <generalDesc>
+        <!-- NANPA country - uses US formatting rules -->
+        <nationalNumberPattern>[2589]\d{9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}(?:\d{3})?</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- 268 468 is not in the plan, but has been added after numbers with this prefix have been
+             found in online searches. -->
+        <nationalNumberPattern>
+          268(?:
+            4(?:
+              6[0-38]|
+              84
+            )|
+            56[0-2]
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>2684601234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- 268 776/778/779 are not in the plan, but have been added after numbers with these
+             prefixes have been found in online searches. Same for 268 780/782/784/786. -->
+        <nationalNumberPattern>
+          268(?:
+            464|
+            7(?:
+              2[0-9]|
+              64|
+              7[0-689]|
+              8[02-68]
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>2684641234</exampleNumber>
+      </mobile>
+      <pager>
+        <nationalNumberPattern>26840[69]\d{4}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>2684061234</exampleNumber>
+      </pager>
+      <tollFree>
+        <nationalNumberPattern>
+          8(?:
+            00|
+            55|
+            66|
+            77|
+            88
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8002123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>900[2-9]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9002123456</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <!-- http://www.nanpa.com/pdf/PL_416.pdf -->
+        <nationalNumberPattern>
+          5(?:
+            00|
+            33|
+            44
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5002345678</exampleNumber>
+      </personalNumber>
+      <voip>
+        <!-- This is included as Centrex in the plan. -->
+        <nationalNumberPattern>26848[01]\d{4}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>2684801234</exampleNumber>
+      </voip>
+      <emergency>
+        <!-- http://barbados.usembassy.gov/emergency-antigua_barbuda.html -->
+        <nationalNumberPattern>
+          9(?:
+            11|
+            99
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>911</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Anguilla -->
+    <!-- http://www.itu.int/oth/T0202000007/en -->
+    <territory id="AI" countryCode="1" leadingDigits="264" nationalPrefix="1"
+               internationalPrefix="011">
+      <generalDesc>
+        <!-- NANPA country - uses US formatting rules -->
+        <nationalNumberPattern>[2589]\d{9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}(?:\d{3})?</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          2644(?:
+            6[12]|
+            9[78]
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>2644612345</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          264(?:
+            235|
+            476|
+            5(?:
+              3[6-9]|
+              8[1-4]
+            )|
+            7(?:
+              29|
+              72
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>2642351234</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>
+          8(?:
+            00|
+            55|
+            66|
+            77|
+            88
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8002123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>900[2-9]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9002123456</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <!-- http://www.nanpa.com/pdf/PL_416.pdf -->
+        <nationalNumberPattern>
+          5(?:
+            00|
+            33|
+            44
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5002345678</exampleNumber>
+      </personalNumber>
+      <emergency>
+        <!-- http://barbados.usembassy.gov/emergency-anguilla.html -->
+        <nationalNumberPattern>911</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>911</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Albania -->
+    <!-- http://www.itu.int/oth/T0202000002/en -->
+    <territory id="AL" countryCode="355" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <!-- Formats mostly follow http://tirana.usembassy.gov/list_of_doctors.html -->
+        <numberFormat pattern="(4)(\d{3})(\d{4})">
+          <leadingDigits>4[0-6]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(6[6-9])(\d{3})(\d{4})">
+          <leadingDigits>6</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{3})">
+          <leadingDigits>
+            [2358][2-5]|
+            4[7-9]
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{3,5})">
+          <leadingDigits>
+            [235][16-9]|
+            8[016-9]|
+            [79]
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [2-57]\d{7}|
+          6\d{8}|
+          8\d{5,7}|
+          9\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            2(?:
+              [168][1-9]|
+              [247]\d|
+              9[1-7]
+            )|
+            3(?:
+              1[1-3]|
+              [2-6]\d|
+              [79][1-8]|
+              8[1-9]
+            )|
+            4\d{2}|
+            5(?:
+              1[1-4]|
+              [2-578]\d|
+              6[1-5]|
+              9[1-7]
+            )|
+            8(?:
+              [19][1-5]|
+              [2-6]\d|
+              [78][1-7]
+            )
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,8}</possibleNumberPattern>
+        <exampleNumber>22345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>6[6-9]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>661234567</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>800\d{4}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+        <exampleNumber>8001234</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <!-- It is named "Shared Revenue Services" in the plan, but as there is a separate "Shared
+             Cost Services", it is highly likely these numbers are premium rate numbers. No
+             information/example is found in the Internet. -->
+        <nationalNumberPattern>900\d{3}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6}</possibleNumberPattern>
+        <exampleNumber>900123</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <nationalNumberPattern>808\d{3}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6}</possibleNumberPattern>
+        <exampleNumber>808123</exampleNumber>
+      </sharedCost>
+      <personalNumber>
+        <nationalNumberPattern>700\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>70012345</exampleNumber>
+      </personalNumber>
+      <emergency>
+        <nationalNumberPattern>12[789]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>129</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Armenia -->
+    <!-- http://www.itu.int/oth/T020200000A/en -->
+    <!-- http://en.wikipedia.org/wiki/%2B374 -->
+    <!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_Nagorno-Karabakh_Republic -->
+    <!-- We think the national dialling prefix is 0 - it seems this was a change in 2005 (or 2008)
+         along with the new city codes. However, their official document makes no mention of it,
+         websites disagree, and we are not sure if the change has actually been made. -->
+    <territory id="AM" countryCode="374" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="($NP$FG)">
+      <availableFormats>
+        <numberFormat pattern="(\d{2})(\d{6})">
+          <leadingDigits>
+            1|
+            47
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{6})" nationalPrefixFormattingRule="$NP$FG">
+          <leadingDigits>
+            [5-7]|
+            9[1-9]
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{5})">
+          <leadingDigits>[23]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{2})(\d{3})" nationalPrefixFormattingRule="$NP $FG">
+          <leadingDigits>
+            8|
+            90
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[1-9]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{5,8}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- Includes telephone numbers in Nagorno-Karabakh Republic, physically located inside
+             Azerbaijan, which use prefix 47. -->
+        <nationalNumberPattern>
+          (?:
+            1[01]\d|
+            2(?:
+              2[2-46]|
+              3[1-8]|
+              4[2-69]|
+              5[2-7]|
+              6[1-9]|
+              8[1-7]
+            )|
+            3[12]2|
+            47\d
+          )\d{5}
+        </nationalNumberPattern>
+        <exampleNumber>10123456</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Part of the range 97 is used by Nagorno-Karabakh Republic. -->
+        <nationalNumberPattern>
+          (?:
+            55|
+            77|
+            9[1-9]
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>77123456</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>800\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>80012345</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>90[016]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>90012345</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <nationalNumberPattern>80[1-4]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>80112345</exampleNumber>
+      </sharedCost>
+      <voip>
+        <nationalNumberPattern>60[2-6]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>60271234</exampleNumber>
+      </voip>
+      <shortCode>
+        <nationalNumberPattern>
+          8[1-7]\d{2}|
+          1(?:
+            0[04-9]|
+            [1-9]\d
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3,4}</possibleNumberPattern>
+        <exampleNumber>8711</exampleNumber>
+      </shortCode>
+      <emergency>
+        <nationalNumberPattern>10[123]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>102</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Angola -->
+    <!-- http://www.itu.int/oth/T0202000006/en -->
+    <territory id="AO" countryCode="244" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{3})(\d{3})">
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[29]\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          2\d(?:
+            [26-9]\d|
+            \d[26-9]
+          )\d{5}
+        </nationalNumberPattern>
+        <exampleNumber>222123456</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Expanded the 92 prefix possibilities to match numbers found online. Unitel are
+             launching the prefix 94 apparently on 25th April 2012. -->
+        <nationalNumberPattern>9[1-4]\d{7}</nationalNumberPattern>
+        <exampleNumber>923123456</exampleNumber>
+      </mobile>
+      <emergency>
+        <!-- http://travel.state.gov/travel/cis_pa_tw/cis/cis_1096.html -->
+        <nationalNumberPattern>11[235]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>113</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Argentina -->
+    <!-- http://www.itu.int/oth/T0202000009/en -->
+    <!-- http://www.cnc.gov.ar/infotecnica/numeracion/Index.asp - click on Indicativos Interurbanos.
+         -->
+    <territory id="AR" countryCode="54" internationalPrefix="00" nationalPrefix="0"
+       nationalPrefixForParsing="
+         0?(?:
+           (11|
+            2(?:
+              2(?:
+                02?|
+                [13]|
+                2[13-79]|
+                4[1-6]|
+                5[2457]|
+                6[124-8]|
+                7[1-4]|
+                8[13-6]|
+                9[1267]
+              )|
+              3(?:
+                02?|
+                1[467]|
+                2[03-6]|
+                3[13-8]|
+                [49][2-6]|
+                5[2-8]|
+                [67]
+              )|
+              4(?:
+                7[3-578]|
+                9
+              )|
+              6(?:
+                [0136]|
+                2[24-6]|
+                4[6-8]?|
+                5[15-8]
+              )|
+              80|
+              9(?:
+                0[1-3]|
+                [19]|
+                2\d|
+                3[1-6]|
+                4[02568]?|
+                5[2-4]|
+                6[2-46]|
+                72?|
+                8[23]?
+              )
+           )|
+           3(?:
+             3(?:
+               2[79]|
+               6|
+               8[2578]
+             )|
+             4(?:
+               0[124-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(?:
+               1[1568]|
+               2[15]|
+               3[145]|
+               4[13]|
+               5[14-8]|
+               [069]|
+               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
+       )?"
+       nationalPrefixTransformRule="9$1" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat pattern="([68]\d{2})(\d{3})(\d{4})">
+          <leadingDigits>[68]</leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(9)(11)(\d{4})(\d{4})">
+          <leadingDigits>911</leadingDigits>
+          <format>$2 15-$3-$4</format>
+          <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.  -->
+          <leadingDigits>
+            9(?:
+              2[234689]|
+              3[3-8]
+            )
+          </leadingDigits>
+          <leadingDigits>
+            9(?:
+              2(?:
+                2[013]|
+                3[067]|
+                49|
+                6[01346]|
+                80|
+                9[147-9]
+              )|
+              3(?:
+                36|
+                4[12358]|
+                5[138]|
+                6[24]|
+                7[069]|
+                8[013578]
+              )
+            )
+          </leadingDigits>
+          <!-- We exclude here several 294X four-digit area codes: 2940, 2942, 2945, 2946 and 2948 -
+               and several 38[3578]X four-digit area codes. -->
+          <leadingDigits>
+            9(?:
+              2(?:
+                2[013]|
+                3[067]|
+                49|
+                6[01346]|
+                80|
+                9(?:
+                  [17-9]|
+                  4[13479]
+                )
+              )|
+              3(?:
+                36|
+                4[12358]|
+                5(?:
+                  [18]|
+                  3[014-689]
+                )|
+                6[24]|
+                7[069]|
+                8(?:
+                  [01]|
+                  3[013469]|
+                  5[0-39]|
+                  7[0-2459]|
+                  8[0-49]
+                )
+              )
+            )
+          </leadingDigits>
+          <format>$2 15-$3-$4</format>
+          <intlFormat>$1 $2 $3-$4</intlFormat>
+        </numberFormat>
+        <numberFormat pattern="(9)(\d{4})(\d{3})(\d{3})">
+          <!-- The formatting pattern here for these newly introduced area codes is based on the ITU
+               document. We have not found sufficient examples online to know if this is actually
+               being followed by the general population, or whether the back-up pattern for
+               four-digit area codes (below) is preferred. -->
+          <leadingDigits>93[58]</leadingDigits>
+          <leadingDigits>
+            9(?:
+              3(?:
+                53|
+                8[78]
+              )
+            )
+          </leadingDigits>
+          <leadingDigits>
+            9(?:
+              3(?:
+                537|
+                8(?:
+                  73|
+                  88
+                )
+              )
+            )
+          </leadingDigits>
+          <format>$2 15-$3-$4</format>
+        </numberFormat>
+        <numberFormat pattern="(9)(\d{4})(\d{2})(\d{4})">
+          <leadingDigits>9[23]</leadingDigits>
+          <format>$2 15-$3-$4</format>
+          <intlFormat>$1 $2 $3-$4</intlFormat>
+        </numberFormat>
+        <numberFormat pattern="(11)(\d{4})(\d{4})">
+          <leadingDigits>1</leadingDigits>
+          <format>$1 $2-$3</format>
+        </numberFormat>
+        <!-- These patterns are a copy of the mobile patterns with the leading 9 removed. -->
+        <numberFormat pattern="(\d{3})(\d{3})(\d{4})">
+          <leadingDigits>
+            2(?:
+              2[013]|
+              3[067]|
+              49|
+              6[01346]|
+              80|
+              9[147-9]
+            )|
+            3(?:
+              36|
+              4[12358]|
+              5[138]|
+              6[24]|
+              7[069]|
+              8[013578]
+            )
+          </leadingDigits>
+          <!-- Several 294X four-digit area codes exist: 2940, 2942, 2945, 2946 and 2948. -->
+          <leadingDigits>
+            2(?:
+              2[013]|
+              3[067]|
+              49|
+              6[01346]|
+              80|
+              9(?:
+                [17-9]|
+                4[13479]
+              )
+            )|
+            3(?:
+              36|
+              4[12358]|
+              5(?:
+                [18]|
+                3[0-689]
+              )|
+              6[24]|
+              7[069]|
+              8(?:
+                [01]|
+                3[013469]|
+                5[0-39]|
+                7[0-2459]|
+                8[0-49]
+              )
+            )
+          </leadingDigits>
+          <format>$1 $2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{4})(\d{3})(\d{3})">
+          <leadingDigits>
+            3(?:
+              53|
+              8[78]
+            )
+          </leadingDigits>
+          <leadingDigits>
+            3(?:
+              537|
+              8(?:
+                73|
+                88
+              )
+            )
+          </leadingDigits>
+          <format>$1 $2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{4})(\d{2})(\d{4})">
+          <leadingDigits>[23]</leadingDigits>
+          <format>$1 $2-$3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [1-368]\d{9}|
+          9\d{10}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,11}</possibleNumberPattern>
+      </generalDesc>
+      <noInternationalDialling>
+        <nationalNumberPattern>810\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8101234567</exampleNumber>
+      </noInternationalDialling>
+      <fixedLine>
+        <!-- Also covering fixed satellite service numbers (670). -->
+        <nationalNumberPattern>
+          11\d{8}|
+          (?:
+            2(?:
+              2(?:
+                [013]\d|
+                2[13-79]|
+                4[1-6]|
+                5[2457]|
+                6[124-8]|
+                7[1-4]|
+                8[13-6]|
+                9[1267]
+              )|
+              3(?:
+                1[467]|
+                2[03-6]|
+                3[13-8]|
+                [49][2-6]|
+                5[2-8]|
+                [067]\d
+              )|
+              4(?:
+                7[3-8]|
+                9\d
+              )|
+              6(?:
+                [01346]\d|
+                2[24-6]|
+                5[15-8]
+              )|
+              80\d|
+              9(?:
+                [0124789]\d|
+                3[1-6]|
+                5[234]|
+                6[2-46]
+              )
+            )|
+            3(?:
+              3(?:
+                2[79]|
+                6\d|
+                8[2578]
+              )|
+              4(?:
+                [78]\d|
+                0[0124-9]|
+                [1-35]\d|
+                4[24-7]|
+                6[02-9]|
+                9[123678]
+              )|
+              5(?:
+                [138]\d|
+                2[1245]|
+                4[1-9]|
+                6[2-4]|
+                7[1-6]
+              )|
+              6[24]\d|
+              7(?:
+                [0469]\d|
+                1[1568]|
+                2[013-9]|
+                3[145]|
+                5[14-8]|
+                7[2-57]|
+                8[0-24-9]
+              )|
+              8(?:
+                [013578]\d|
+                2[15-7]|
+                4[13-6]|
+                6[1-357-9]|
+                9[124]
+              )
+            )|
+            670\d
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,10}</possibleNumberPattern>
+        <exampleNumber>1123456789</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Also covers mobile satellite services (675 numbers). -->
+        <!-- 4-digit area codes are not covered here in detail - we only check the digit after the
+             area code is in the range 2-9. The four-digit area-code checking is done in detail if
+             we attempt to strip the caller-pays token (15) from the number. -->
+        <nationalNumberPattern>
+          675\d{7}|
+          9(?:
+            11[2-9]\d{7}|
+            (?:
+              2(?:
+                2[013]|
+                3[067]|
+                49|
+                6[01346]|
+                80|
+                9[147-9]
+              )|
+              3(?:
+                36|
+                4[12358]|
+                5[138]|
+                6[24]|
+                7[069]|
+                8[013578]
+              )
+            )[2-9]\d{6}|
+            \d{4}[2-9]\d{5}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,11}</possibleNumberPattern>
+        <exampleNumber>91123456789</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>800\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8001234567</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>60[04579]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>6001234567</exampleNumber>
+      </premiumRate>
+      <uan>
+        <nationalNumberPattern>810\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8101234567</exampleNumber>
+      </uan>
+      <shortCode>
+        <nationalNumberPattern>
+          1(?:
+            0[2356]|
+            1[02-5]|
+            21
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>121</exampleNumber>
+      </shortCode>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            0[017]|
+            28
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>101</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- American Samoa -->
+    <!-- http://www.itu.int/oth/T0202000004/en -->
+    <territory id="AS" countryCode="1" leadingDigits="684" nationalPrefix="1"
+               internationalPrefix="011">
+      <generalDesc>
+        <!-- NANPA country - uses US formatting rules -->
+        <nationalNumberPattern>[5689]\d{9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}(?:\d{3})?</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          6846(?:
+            22|
+            33|
+            44|
+            55|
+            77|
+            88|
+            9[19]
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>6846221234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Adding 24[246], operated from Blue Sky. -->
+        <nationalNumberPattern>
+          684(?:
+            733|
+            25[2468]
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>6847331234</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>
+          8(?:
+            00|
+            55|
+            66|
+            77|
+            88
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8002123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>900[2-9]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9002123456</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <!-- http://www.nanpa.com/pdf/PL_416.pdf -->
+        <nationalNumberPattern>
+          5(?:
+            00|
+            33|
+            44
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5002345678</exampleNumber>
+      </personalNumber>
+      <emergency>
+        <!-- http://studentsabroad.state.gov/content/pdfs/911_ABROAD.pdf
+             http://www.airportairport.com/American-Samoa.html
+             http://www.frommers.com/destinations/americansamoa/3038020157.html -->
+        <nationalNumberPattern>911</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>911</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Austria -->
+    <!-- http://www.rtr.at/en/tk/E129 -->
+    <territory id="AT" countryCode="43" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat pattern="(1)(\d{3,12})">
+          <leadingDigits>1</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <!-- The following three patterns are the most common for prefixes 050, 057 and 059, as
+             found on Austrian web pages. -->
+        <numberFormat pattern="(5\d)(\d{3,5})">
+          <leadingDigits>5[079]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(5\d)(\d{3})(\d{3,4})">
+          <leadingDigits>5[079]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(5\d)(\d{4})(\d{4,7})">
+          <leadingDigits>5[079]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{3,10})">
+          <leadingDigits>
+            316|
+            46|
+            51|
+            732|
+            6(?:
+              44|
+              5[0-3579]|
+              [6-9]
+            )|
+            7(?:
+              1|
+              [28]0
+            )|
+            [89]
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{4})(\d{3,9})">
+          <leadingDigits>
+            2|
+            3(?:
+              1[1-578]|
+              [3-8]
+            )|
+            4[2378]|
+            5[2-6]|
+            6(?:
+              [12]|
+              4[1-35-9]|
+              5[468]
+            )|
+            7(?:
+              2[1-8]|
+              35|
+              4[1-8]|
+              [57-9]
+            )
+          </leadingDigits>
+            <format>$1 $2</format>
+          </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[1-9]\d{3,12}</nationalNumberPattern>
+        <possibleNumberPattern>\d{3,13}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- Note that the full area code is not validated - just the first 3 digits. This also
+             means that even though for most Austrian numbers the minimum length is 7, we allow 6
+             since we don't differentiate below between 3 and 4 digit area codes for reasons of
+             efficiency. -->
+        <nationalNumberPattern>
+          1\d{3,12}|
+          (?:
+            2(?:
+              1[467]|
+              2[13-8]|
+              5[2357]|
+              6[1-46-8]|
+              7[1-8]|
+              8[124-7]|
+              9[1458]
+            )|
+            3(?:
+              1[1-8]|
+              3[23568]|
+              4[5-7]|
+              5[1378]|
+              6[1-38]|
+              8[3-68]
+            )|
+            4(?:
+              2[1-8]|
+              35|
+              63|
+              7[1368]|
+              8[2457]
+            )|
+            5(?:
+              12|
+              2[1-8]|
+              3[357]|
+              4[147]|
+              5[12578]|
+              6[37]
+            )|
+            6(?:
+              13|
+              2[1-47]|
+              4[1-35-8]|
+              5[468]|
+              62
+            )|
+            7(?:
+              2[1-8]|
+              3[25]|
+              4[13478]|
+              5[68]|
+              6[16-8]|
+              7[1-6]|
+              9[45]
+            )
+          )\d{3,10}
+        </nationalNumberPattern>
+        <exampleNumber>1234567890</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          6(?:
+            44|
+            5[0-3579]|
+            6[013-9]|
+            [7-9]\d
+          )\d{4,10}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,13}</possibleNumberPattern>
+        <exampleNumber>644123456</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>80[02]\d{6,10}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9,13}</possibleNumberPattern>
+        <exampleNumber>800123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>
+          (?:
+            711|
+            9(?:
+              0[01]|
+              3[019]
+            )
+          )\d{6,10}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9,13}</possibleNumberPattern>
+        <exampleNumber>900123456</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <nationalNumberPattern>
+          8(?:
+            10|
+            2[018]
+          )\d{6,10}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9,13}</possibleNumberPattern>
+        <exampleNumber>810123456</exampleNumber>
+      </sharedCost>
+      <voip>
+        <nationalNumberPattern>780\d{6,10}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9,13}</possibleNumberPattern>
+        <exampleNumber>780123456</exampleNumber>
+      </voip>
+      <uan>
+        <nationalNumberPattern>
+          5(?:
+            (?:
+              0[1-9]|
+              17
+            )\d{2,10}|
+            [79]\d{3,11}
+          )|
+          720\d{6,10}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,13}</possibleNumberPattern>
+        <exampleNumber>50123</exampleNumber>
+      </uan>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            [12]2|
+            33|
+            44
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Australia -->
+    <!-- Metadata shared with Cocos Islands (CC) and Christmas Islands (CX) -->
+    <!-- http://www.itu.int/oth/T020200000D/en -->
+    <!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_Australia -->
+    <territory id="AU" countryCode="61" mainCountryForCode="true"
+               internationalPrefix="(?:14(?:1[14]|34|4[17]|[56]6|7[47]|88))?001[14-689]"
+               preferredInternationalPrefix="0011" nationalPrefix="0">
+      <availableFormats>
+        <numberFormat nationalPrefixFormattingRule="($NP$FG)"
+          pattern="([2378])(\d{4})(\d{4})">
+          <leadingDigits>[2378]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$NP$FG"
+          pattern="(\d{3})(\d{3})(\d{3})">
+          <leadingDigits>
+            [45]|
+            14
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$NP$FG"
+          pattern="(16)(\d{3})(\d{2,4})">
+          <leadingDigits>16</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$FG"
+          pattern="(1[389]\d{2})(\d{3})(\d{3})">
+          <leadingDigits>
+            1(?:
+              [38]0|
+              90
+            )
+          </leadingDigits>
+          <leadingDigits>
+            1(?:
+              [38]00|
+              90
+            )
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$FG"
+          pattern="(180)(2\d{3})">
+          <leadingDigits>180</leadingDigits>
+          <leadingDigits>1802</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$FG"
+          pattern="(19\d)(\d{3})">
+          <leadingDigits>19[13]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$FG"
+          pattern="(19\d{2})(\d{4})">
+          <leadingDigits>19[67]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$FG"
+          pattern="(13)(\d{2})(\d{2})">
+          <leadingDigits>13[1-9]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[1-578]\d{5,9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6,10}</possibleNumberPattern>
+      </generalDesc>
+      <noInternationalDialling>
+        <nationalNumberPattern>
+          1(?:
+            3(?:
+              \d{4}|
+              00\d{6}
+            )|
+            80(?:
+              0\d{6}|
+              2\d{3}
+            )
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,10}</possibleNumberPattern>
+        <exampleNumber>1300123456</exampleNumber>
+      </noInternationalDialling>
+      <fixedLine>
+        <!-- Excludes prefixes used by Cocos Islands and Christmas Islands -->
+        <nationalNumberPattern>
+          [237]\d{8}|
+          8(?:
+            [68]\d{3}|
+            7[0-69]\d{2}|
+            9(?:
+              [02-9]\d{2}|
+              1(?:
+                [0-57-9]\d|
+                6[0135-9]
+              )
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8,9}</possibleNumberPattern>
+        <exampleNumber>212345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Includes MobileSat and Thuraya satellite services. According to the wikipedia page,
+             other ranges 14[1-3] are not currently used. -->
+        <nationalNumberPattern>
+          14(?:
+            5\d|
+            71
+          )\d{5}|
+          4(?:
+            [0-2]\d|
+            3[0-57-9]|
+            4[47-9]|
+            5[0-35-9]|
+            6[6-9]|
+            [79][07-9]|
+            8[17-9]
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>412345678</exampleNumber>
+      </mobile>
+      <pager>
+        <nationalNumberPattern>16\d{3,7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{5,9}</possibleNumberPattern>
+        <exampleNumber>1612345</exampleNumber>
+      </pager>
+      <tollFree>
+        <nationalNumberPattern>
+          180(?:
+            0\d{3}|
+            2
+          )\d{3}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,10}</possibleNumberPattern>
+        <exampleNumber>1800123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>
+          19(?:
+            0[0126]\d{6}|
+            [13-5]\d{3}|
+            [679]\d{5}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,10}</possibleNumberPattern>
+        <exampleNumber>1900123456</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+      <!-- Local-rate (SmartNumbers) are put here because they are a reverse-charge network,
+           although they charge a small local call connect fee (around 25c). These start with 13
+           or 1300. -->
+        <nationalNumberPattern>
+          13(?:
+            00\d{2}
+          )?\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,10}</possibleNumberPattern>
+        <exampleNumber>1300123456</exampleNumber>
+      </sharedCost>
+      <!-- Wikipedia was the source for these types of numbers, and number allocation search here
+           http://web.acma.gov.au/numb/openAccess/inquiry/allocationSearch.do confirms this. (Search
+           from 0500000000 to 0590000000) -->
+      <personalNumber>
+        <nationalNumberPattern>500\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>500123456</exampleNumber>
+      </personalNumber>
+      <voip>
+        <nationalNumberPattern>550\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>550123456</exampleNumber>
+      </voip>
+      <emergency>
+        <nationalNumberPattern>
+          000|
+          112
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Aruba -->
+    <!-- http://www.itu.int/oth/T020200000B/en -->
+    <territory id="AW" countryCode="297" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{4})">
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[25-9]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          5(?:
+            2\d|
+            8[1-9]
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>5212345</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- The prefixes 662, 994 & 96[45], while not in the plan, seem to be used in mobile
+             numbers found online. -->
+        <nationalNumberPattern>
+          (?:
+            5(?:
+              6\d|
+              9[2-478]
+            )|
+            6(?:
+              [039]0|
+              22|
+              4[01]|
+              6[0-2]
+            )|
+            7[34]\d|
+            9(?:
+              6[45]|
+              9[4-8]
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>5601234</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>800\d{4}</nationalNumberPattern>
+        <exampleNumber>8001234</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>900\d{4}</nationalNumberPattern>
+        <exampleNumber>9001234</exampleNumber>
+      </premiumRate>
+      <voip>
+        <nationalNumberPattern>
+          28\d{5}|
+          501\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>5011234</exampleNumber>
+      </voip>
+      <emergency>
+        <!-- http://www.yellowpages-aruba.com/home/emergency-numbers -->
+        <nationalNumberPattern>
+          100|
+          911
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>911</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Åland Islands. -->
+    <!-- Metadata shared with Finland. -->
+    <!-- http://www.ficora.fi/en/index/palvelut/palvelutaiheittain/numerointi/numerotyypitjaalueet.html -->
+    <territory id="AX" countryCode="358" internationalPrefix="00|99[049]" nationalPrefix="0"
+               nationalPrefixFormattingRule="$NP$FG">
+      <!-- The general desc and fixed line are numbers different from Finland metadata. -->
+      <generalDesc>
+        <nationalNumberPattern>
+          [135]\d{5,9}|
+          [27]\d{4,9}|
+          4\d{5,10}|
+          6\d{7,8}|
+          8\d{6,9}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,12}</possibleNumberPattern>
+      </generalDesc>
+      <noInternationalDialling>
+        <!-- According to the national numbering plan, service numbers are in general not accessible
+             from abroad, although 600/700/800 numbers may be. -->
+        <nationalNumberPattern>
+          [13]00\d{3,7}|
+          2(?:
+            0(?:
+              0\d{3,7}|
+              2[023]\d{1,6}|
+              9[89]\d{1,6}
+            )
+          )|
+          60(?:
+            [12]\d{5,6}|
+            6\d{7}
+          )|
+          7(?:
+            1\d{7}|
+            3\d{8}|
+            5[03-9]\d{2,7}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,10}</possibleNumberPattern>
+        <exampleNumber>100123</exampleNumber>
+      </noInternationalDialling>
+      <fixedLine>
+        <nationalNumberPattern>18[1-8]\d{3,9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6,12}</possibleNumberPattern>
+        <exampleNumber>1812345678</exampleNumber>
+      </fixedLine>
+      <!-- The mobile, toll free, premium rate and UAN numbers copied from Finland. -->
+      <mobile>
+        <nationalNumberPattern>
+          4\d{5,10}|
+          50\d{4,8}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,11}</possibleNumberPattern>
+        <exampleNumber>412345678</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>800\d{4,7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7,10}</possibleNumberPattern>
+        <exampleNumber>8001234567</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>[67]00\d{5,6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8,9}</possibleNumberPattern>
+        <exampleNumber>600123456</exampleNumber>
+      </premiumRate>
+      <uan>
+        <!-- Covers nationwide non-geographic numbers, and nationwide "service numbers", typically
+             assigned to institutions such as universities, the national post, etc, where they are
+             not otherwise classified as toll-free or premium-rate numbers. -->
+        <nationalNumberPattern>
+          [13]0\d{4,8}|
+          2(?:
+            0(?:
+              [016-8]\d{3,7}|
+              [2-59]\d{2,7}
+            )|
+            9\d{4,8}
+          )|
+          60(?:
+            [12]\d{5,6}|
+            6\d{7}
+          )|
+          7(?:
+            1\d{7}|
+            3\d{8}|
+            5[03-9]\d{2,7}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,10}</possibleNumberPattern>
+        <exampleNumber>10112345</exampleNumber>
+      </uan>
+      <emergency>
+        <!-- http://www.arrivalguides.com/en/Travelguides/Europe/Finland/ALAND -->
+        <nationalNumberPattern>112</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Azerbaijan -->
+    <!-- http://www.itu.int/oth/T020200000F/en -->
+    <territory id="AZ" countryCode="994" internationalPrefix="00" nationalPrefix="0"
+               nationalPrefixFormattingRule="($NP$FG)">
+      <availableFormats>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{2})(\d{2})">
+          <leadingDigits>
+            (?:
+              1[28]|
+              2(?:
+                [45]2|
+                [0-36]
+              )|
+              365
+            )
+          </leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{2})(\d{2})" nationalPrefixFormattingRule="$NP$FG">
+          <leadingDigits>[4-8]</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{2})(\d{2})(\d{2})"
+          nationalPrefixFormattingRule="$NP$FG">
+          <leadingDigits>9</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[1-9]\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7,9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            1[28]\d|
+            2(?:
+              02|
+              1[24]|
+              2[2-4]|
+              33|
+              [45]2|
+              6[23]
+            )|
+            365
+          )\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>123123456</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          (?:
+            4[04]|
+            5[015]|
+            60|
+            7[07]
+          )\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>401234567</exampleNumber>
+      </mobile>
+      <tollFree>
+        <!-- 88 is listed as fixed-line for Baku in the ITU document, but online numbers seem to
+             suggest they are in fact national toll-free numbers. -->
+        <nationalNumberPattern>88\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>881234567</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <!-- These are marked as Interactive Calls in the ITU document. -->
+        <nationalNumberPattern>900200\d{3}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>900200123</exampleNumber>
+      </premiumRate>
+      <emergency>
+        <!-- http://travel.state.gov/travel/cis_pa_tw/cis/cis_978.html
+             http://wikitravel.org/en/Azerbaijan#Emergency_contact_numbers -->
+        <nationalNumberPattern>
+          1(?:
+            0[123]|
+            12
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>101</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Bosnia and Herzegovina -->
+    <!-- http://www.rak.ba/eng/index.php?uid=1272016657 (accessible from
+         http://www.cra.ba/en/telecom/numbering/) -->
+    <!-- http://en.wikipedia.org/wiki/+387 -->
+    <territory id="BA" countryCode="387" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{3})">
+          <leadingDigits>[3-5]</leadingDigits>
+          <format>$1 $2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{3})">
+          <leadingDigits>
+            6[1-356]|
+            [7-9]
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{2})(\d{2})(\d{3})">
+          <leadingDigits>6[047]</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[3-9]\d{7,8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6,9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            [35]\d|
+            49
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,8}</possibleNumberPattern>
+        <exampleNumber>30123456</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          6(?:
+            03|
+            44|
+            71|
+            [1-356]
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8,9}</possibleNumberPattern>
+        <exampleNumber>61123456</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>8[08]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>80123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>9[0246]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>90123456</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <!-- Using this category to model national tariff numbers - these are under Shared Cost in
+             the plan. -->
+        <nationalNumberPattern>8[12]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>82123456</exampleNumber>
+      </sharedCost>
+      <uan>
+        <!-- Using this to classify nomad numbers. -->
+        <nationalNumberPattern>70[23]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>70223456</exampleNumber>
+      </uan>
+      <emergency>
+        <nationalNumberPattern>12[234]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>122</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Barbados -->
+    <!-- http://www.itu.int/oth/T0202000013/en -->
+    <territory id="BB" countryCode="1" leadingDigits="246" nationalPrefix="1"
+               internationalPrefix="011">
+      <generalDesc>
+        <!-- NANPA country - uses US formatting rules -->
+        <nationalNumberPattern>[2589]\d{9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}(?:\d{3})?</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>246[2-9]\d{6}</nationalNumberPattern>
+        <exampleNumber>2462345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          246(?:
+            (?:
+              2[346]|
+              45|
+              82
+            )\d|
+            25[0-4]
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>2462501234</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>
+          8(?:
+            00|
+            55|
+            66|
+            77|
+            88
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8002123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>900[2-9]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9002123456</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <!-- http://www.nanpa.com/pdf/PL_416.pdf -->
+        <nationalNumberPattern>
+          5(?:
+            00|
+            33|
+            44
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5002345678</exampleNumber>
+      </personalNumber>
+      <emergency>
+        <nationalNumberPattern>[235]11</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>211</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Bangladesh -->
+    <!-- http://www.itu.int/oth/T0202000012/en -->
+    <!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_Bangladesh -->
+    <!-- http://www.btrc.gov.bd/engineering/national_numbering_plan_2005.pdf -->
+    <territory id="BD" countryCode="880" internationalPrefix="00[12]?"
+               preferredInternationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat pattern="(2)(\d{7})">
+          <leadingDigits>2</leadingDigits>
+          <format>$1-$2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{4,6})">
+          <leadingDigits>[3-79]1</leadingDigits>
+          <format>$1-$2</format>
+        </numberFormat>
+        <!-- Mobile numbers, VOIP, and four-digit fixed-line area codes. -->
+        <numberFormat pattern="(\d{4})(\d{3,6})">
+          <leadingDigits>
+            1|
+            3(?:
+              0|
+              [2-58]2
+            )|
+            4(?:
+              0|
+              [25]2|
+              3[23]|
+              [4689][25]
+            )|
+            5(?:
+              [02-578]2|
+              6[25]
+            )|
+            6(?:
+              [0347-9]2|
+              [26][25]
+            )|
+            7[02-9]2|
+            8(?:
+              [023][23]|
+              [4-7]2
+            )|
+            9(?:
+              [02][23]|
+              [458]2|
+              6[016]
+            )
+          </leadingDigits>
+          <format>$1-$2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{3,7})">
+          <leadingDigits>
+            [3-79][2-9]|
+            8
+          </leadingDigits>
+          <format>$1-$2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+      <!-- This is quite complex so we can define that numbers beginning with 88 are not part of the
+           plan, so the country code can be accurately stripped off. -->
+        <nationalNumberPattern>
+          [2-79]\d{5,9}|
+          1\d{9}|
+          8[0-7]\d{4,8}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,10}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- There was a plan to move to 10 digit fixed-line numbers, but this does not seem to have
+             been realised, judging by online numbers and wikipedia. These patterns are grouped
+             first by leading digit, then within by number of digits. Several Dhaka prefixes (02 731
+             etc) are included despite not being mentioned on the wikipedia page or ITU doc due to
+             online evidence. Another oddity is Chittagong - some numbers have a leading 2, others
+             do not - both are allowed for now. For some area codes, the subscriber number length
+             described in our source documentation doesn't match numbers online (e.g. 05222) so we
+             allow both for now. (This applies to 0431, 04329, 04623, 05327 as well). We have
+             also added 04452 and 04923 from numbers found online. -->
+        <nationalNumberPattern>
+          2(?:
+            7(?:
+              1[0-267]|
+              2[0-289]|
+              3[0-29]|
+              [46][01]|
+              5[1-3]|
+              7[017]|
+              91
+            )|
+            8(?:
+              0[125]|
+              [139][1-6]|
+              2[0157-9]|
+              6[1-35]|
+              7[1-5]|
+              8[1-8]
+            )|
+            9(?:
+              0[0-2]|
+              1[1-4]|
+              2[568]|
+              3[3-6]|
+              5[5-7]|
+              6[0167]|
+              7[15]|
+              8[016-8]
+            )
+          )\d{4}|
+          3(?:
+            12?[5-7]\d{2}|
+            0(?:
+              2(?:
+                [025-79]\d|
+                [348]\d{1,2}
+              )|
+              3(?:
+                [2-4]\d|
+                [56]\d?
+              )
+            )|
+            2(?:
+              1\d{2}|
+              2(?:
+                [12]\d|
+                [35]\d{1,2}|
+                4\d?
+              )
+            )|
+            3(?:
+              1\d{2}|
+              2(?:
+                [2356]\d|
+                4\d{1,2}
+              )
+            )|
+            4(?:
+              1\d{2}|
+              2(?:
+                2\d{1,2}|
+                [47]|
+                5\d{2}
+              )
+            )|
+            5(?:
+              1\d{2}|
+              29
+            )|
+            [67]1\d{2}|
+            8(?:
+              1\d{2}|
+              2(?:
+                2\d{2}|
+                3|
+                4\d
+              )
+            )|
+          )\d{3}|
+          4(?:
+            0(?:
+              2(?:
+                [09]\d|
+                7
+              )|
+              33\d{2}
+            )|
+            1\d{3}|
+            2(?:
+              1\d{2}|
+              2(?:
+                [25]\d?|
+                [348]\d|
+                [67]\d{1,2}
+              )
+            )|
+            3(?:
+              1\d{2}(?:\d{2})?|
+              2(?:
+                [045]\d|
+                [236-9]\d{1,2}
+              )|
+              32\d{2}
+            )|
+            4(?:
+              [18]\d{2}|
+              2(?:
+                [2-46]\d{2}|
+                3
+              )|
+              5[25]\d{2}
+            )|
+            5(?:
+              1\d{2}|
+              2(?:
+                3\d|
+                5
+              )
+            )|
+            6(?:
+              [18]\d{2}|
+              2(?:
+                3(?:\d{2})?|
+                [46]\d{1,2}|
+                5\d{2}|
+                7\d
+              )|
+              5(?:
+                3\d?|
+                4\d|
+                [57]\d{1,2}|
+                6\d{2}|
+                8
+              )
+            )|
+            71\d{2}|
+            8(?:
+              [18]\d{2}|
+              23\d{2}|
+              54\d{2}
+            )|
+            9(?:
+              [18]\d{2}|
+              2[2-5]\d{2}|
+              53\d{1,2}
+            )
+          )\d{3}|
+          5(?:
+            02[03489]\d{2}|
+            1\d{2}|
+            2(?:
+              1\d{2}|
+              2(?:
+                2(?:\d{2})?|
+                [457]\d{2}
+              )
+            )|
+            3(?:
+              1\d{2}|
+              2(?:
+                [37](?:\d{2})?|
+                [569]\d{2}
+              )
+            )|
+            4(?:
+              1\d{2}|
+              2[46]\d{2}
+            )|
+            5(?:
+              1\d{2}|
+              26\d{1,2}
+            )|
+            6(?:
+              [18]\d{2}|
+              2|
+              53\d{2}
+            )|
+            7(?:
+              1|
+              24
+            )\d{2}|
+            8(?:
+              1|
+              26
+            )\d{2}|
+            91\d{2}
+          )\d{3}|
+          6(?:
+            0(?:
+              1\d{2}|
+              2(?:
+                3\d{2}|
+                4\d{1,2}
+              )
+            )|
+            2(?:
+              2[2-5]\d{2}|
+              5(?:
+                [3-5]\d{2}|
+                7
+              )|
+              8\d{2}
+            )|
+            3(?:
+              1|
+              2[3478]
+            )\d{2}|
+            4(?:
+              1|
+              2[34]
+            )\d{2}|
+            5(?:
+              1|
+              2[47]
+            )\d{2}|
+            6(?:
+              [18]\d{2}|
+              6(?:
+                2(?:
+                  2\d|
+                  [34]\d{2}
+                )|
+                5(?:
+                  [24]\d{2}|
+                  3\d|
+                  5\d{1,2}
+                )
+              )
+            )|
+            72[2-5]\d{2}|
+            8(?:
+              1\d{2}|
+              2[2-5]\d{2}
+            )|
+            9(?:
+              1\d{2}|
+              2[2-6]\d{2}
+            )
+          )\d{3}|
+          7(?:
+            (?:
+              02|
+              [3-589]1|
+              6[12]|
+              72[24]
+            )\d{2}|
+            21\d{3}|
+            32
+          )\d{3}|
+          8(?:
+            (?:
+              4[12]|
+              [5-7]2|
+              1\d?
+            )|
+            (?:
+              0|
+              3[12]|
+              [5-7]1|
+              217
+            )\d
+          )\d{4}|
+          9(?:
+            [35]1|
+            (?:
+              [024]2|
+              81
+            )\d|
+            (?:
+              1|
+              [24]1
+            )\d{2}
+          )\d{3}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,9}</possibleNumberPattern>
+        <exampleNumber>27111234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Presuming that mobile numbers with the prefixes 66, 37, 44 and 38 must be followed by
+             numbers [02-9] or they would clash with fixed-line codes. According to the plan, mobile
+             numbers should be moving to 1[13-9] anyway. -->
+        <nationalNumberPattern>
+          (?:
+            1[13-9]\d|
+            (?:
+              3[78]|
+              44
+            )[02-9]|
+            6(?:
+              44|
+              6[02-9]
+            )
+          )\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>1812345678</exampleNumber>
+      </mobile>
+      <tollFree>
+        <!-- Note: Including Tele-voting numbers here as they are free of charge. -->
+        <nationalNumberPattern>80[03]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8001234567</exampleNumber>
+      </tollFree>
+      <voip>
+        <nationalNumberPattern>
+          96(?:
+            0[49]|
+            1[0-4]|
+            6[69]
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9604123456</exampleNumber>
+      </voip>
+      <shortCode>
+        <nationalNumberPattern>
+          1(?:
+            0(?:
+              [39]|
+              5(?:
+                0\d|
+                [1-4]
+              )|
+              6\d{2}|
+              7[0-4]|
+              8[0-29]
+            )|
+            1[6-9]|
+            2(?:
+              2[0-5]|
+              [34]
+            )|
+            3(?:
+              1\d?|
+              3\d|
+              6[3-6]
+            )|
+            4(?:
+              0\d|
+              1\d{2}
+            )|
+            5[2-9]
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3,5}</possibleNumberPattern>
+        <exampleNumber>103</exampleNumber>
+      </shortCode>
+      <emergency>
+        <nationalNumberPattern>
+          10[0-2]|
+          999
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>999</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Belgium -->
+    <!-- http://www.bipt.be/en/161/ShowContent/502/Database/Databases.aspx -->
+    <!-- http://www.telefoonzones.be/ -->
+    <territory id="BE" countryCode="32" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat pattern="(4[6-9]\d)(\d{2})(\d{2})(\d{2})">
+          <leadingDigits>4[6-9]</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="([2-49])(\d{3})(\d{2})(\d{2})">
+          <leadingDigits>
+            [23]|
+            [49][23]
+          </leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="([15-8]\d)(\d{2})(\d{2})(\d{2})">
+          <leadingDigits>
+            [156]|
+            7[0178]|
+            8(?:
+              0[1-9]|
+              [1-79]
+            )
+          </leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="([89]\d{2})(\d{2})(\d{3})">
+          <leadingDigits>
+            (?:
+              80|
+              9
+            )0
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[1-9]\d{7,8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8,9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- Note that 80 is a valid area code, so we explicitly check for this case that the third
+             digit begins with 1-9 -->
+        <nationalNumberPattern>
+          (?:
+            1[0-69]|
+            [23][2-8]|
+            [49][23]|
+            5\d|
+            6[013-57-9]|
+            71
+          )\d{6}|
+          8(?:
+            0[1-9]|
+            [1-79]\d
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>12345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Numbers beginning with 46 outside the ranges allocated by the plan have been included
+             since many were found online. -->
+        <nationalNumberPattern>
+          4(?:
+            [679]\d|
+            8[03-9]
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>470123456</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>800\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>80012345</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>
+          (?:
+            90|
+            7[07]
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>90123456</exampleNumber>
+      </premiumRate>
+      <uan>
+        <!-- Using this for National Rate Services, since
+             http://www.voipgate.com/site/news/newsflash/new-numbers-available-the-netherlands-and-austria.html
+             says it will be priced the same as any other national calls. -->
+        <nationalNumberPattern>78\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>78123456</exampleNumber>
+      </uan>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            0[01]|
+            12
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Burkina Faso -->
+    <!-- http://www.itu.int/oth/T0202000021/en -->
+    <!-- http://www.onatel.bf/onatelsa/plandenumerotation_burkina.pdf -->
+    <territory id="BF" countryCode="226" internationalPrefix="00">
+      <availableFormats>
+        <!-- The national numbering plan from ITU suggests grouping of 2, 2 and 4, but we have
+             chosen to use the standard from numbers found on the internet instead. -->
+        <numberFormat pattern="(\d{2})(\d{2})(\d{2})(\d{2})">
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[24-7]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- The prefix 50 48 has been added based on numbers found online, while 40 49 has been
+             deleted since we haven't found any numbers with this prefix and it is not mentioned in
+             the Onatel document.
+             IMPORTANT: Note that the ITU documents of Mar/Apr 2013 seem to have major errors in the
+             fixed-line table, so we have not changed our patterns based on these. -->
+        <nationalNumberPattern>
+          (?:
+            20(?:
+              49|
+              5[23]|
+              9[016-9]
+            )|
+            40(?:
+              4[56]|
+              5[4-6]|
+              7[0179]
+            )|
+            50[34]\d
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>20491234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          6(?:
+            [0156]\d|
+            [28][0-5]|
+            4[01]
+          )\d{5}|
+          7\d{7}
+        </nationalNumberPattern>
+        <exampleNumber>70123456</exampleNumber>
+      </mobile>
+      <!-- http://www.diplomatie.gouv.fr/fr/conseils-aux-voyageurs_909/conseils-par-pays_12191/burkina-faso_12217/index.html -->
+      <emergency>
+        <nationalNumberPattern>1[78]</nationalNumberPattern>
+        <possibleNumberPattern>\d{2}</possibleNumberPattern>
+        <exampleNumber>17</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Bulgaria -->
+    <!-- http://www.itu.int/oth/T0202000020/en -->
+    <territory id="BG" countryCode="359" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <!-- Formatting rules follow the conventions seen in web-search results. A space has been
+             used to separate the area code from the rest of the number, based on sites like
+             http://www.goldenpages.bg. -->
+        <numberFormat pattern="(2)(\d{5})">
+          <leadingDigits>29</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(2)(\d{3})(\d{3,4})">
+          <leadingDigits>2</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{4})">
+          <leadingDigits>
+            43[124-7]|
+            70[1-9]
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{3})(\d{2})">
+          <leadingDigits>
+            43[124-7]|
+            70[1-9]
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{2})(\d{3})">
+          <leadingDigits>[78]00</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{2,3})">
+          <leadingDigits>
+            [356]|
+            4[124-7]|
+            7[1-9]|
+            8[1-6]|
+            9[1-7]
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{3,4})">
+          <leadingDigits>
+            48|
+            8[7-9]|
+            9[08]
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [23567]\d{5,7}|
+          [489]\d{6,8}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- 29xxxx numbers have been added because they can be found online, and are typically
+             used by taxi companies. -->
+        <nationalNumberPattern>
+          2(?:
+            [0-8]\d{5,6}|
+            9\d{4,6}
+          )|
+          (?:
+            [36]\d|
+            5[1-9]|
+            8[1-6]|
+            9[1-7]
+          )\d{5,6}|
+          (?:
+            4(?:
+              [124-7]\d|
+              3[1-6]
+            )|
+            7(?:
+              0[1-9]|
+              [1-9]\d
+            )
+          )\d{4,5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,8}</possibleNumberPattern>
+        <exampleNumber>2123456</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          (?:
+            8[7-9]|
+            98
+          )\d{7}|
+          4(?:
+            3[0789]|
+            8\d
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8,9}</possibleNumberPattern>
+        <exampleNumber>48123456</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>800\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>80012345</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>90\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>90123456</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <nationalNumberPattern>700\d{5}</nationalNumberPattern>
+        <exampleNumber>70012345</exampleNumber>
+      </personalNumber>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            12|
+            50|
+            6[06]
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Bahrain -->
+    <!-- http://www.itu.int/oth/T0202000011/en -->
+    <!-- http://www.tra.org.bh/en/pdf/National_Numbering_Plan_2.pdf -->
+    <!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_Bahrain -->
+    <territory id="BH" countryCode="973" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{4})(\d{4})">
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[136-9]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+      </generalDesc>
+      <!-- Universal Service numbers are under both Mobile and Fixed-Line, as they can be assigned
+           to either. -->
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            1(?:
+              3[3-6]|
+              6[0156]|
+              7\d
+            )\d|
+            6(?:
+              1[16]\d|
+              6(?:
+                0\d|
+                3[12]|
+                44
+              )|
+              9(?:
+                69|
+                9[6-9]
+              )
+            )|
+            77\d{2}
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>17001234</exampleNumber>
+      </fixedLine>
+      <!-- Mobile prefix 384 is not yet in the ITU document but other sources (e.g. Google
+           searches) suggest mobile numbers with this prefix are in use. 350 was added as
+           VIVO are apparently using that prefix. -->
+      <mobile>
+        <nationalNumberPattern>
+          (?:
+            3(?:
+              [23469]\d|
+              5[035]|
+              77|
+              8[348]
+            )\d|
+            6(?:
+              1[16]\d|
+              3(?:
+                00|
+                33|
+                6[16]
+              )|
+              6(?:
+                [069]\d|
+                3[03-9]|
+                44
+              )|
+              9(?:
+                69|
+                9[6-9]
+              )
+            )|
+            77\d{2}
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>36001234</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>80\d{6}</nationalNumberPattern>
+        <exampleNumber>80123456</exampleNumber>
+      </tollFree>
+      <!-- 87 numbers are "wholly paid by the caller", so they are slotted under premium-rate for
+           now. -->
+      <premiumRate>
+        <nationalNumberPattern>
+          (?:
+            87|
+            9[014578]
+          )\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>90123456</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <nationalNumberPattern>84\d{6}</nationalNumberPattern>
+        <exampleNumber>84123456</exampleNumber>
+      </sharedCost>
+      <emergency>
+        <nationalNumberPattern>999</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>999</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Burundi -->
+    <!-- http://www.itu.int/oth/T0202000022/en -->
+    <territory id="BI" countryCode="257" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat
+          pattern="([27]\d)(\d{2})(\d{2})(\d{2})">
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[27]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          22(?:
+            2[0-7]|
+            [3-5]0
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>22201234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Extra online mobile number prefixes found: 79 10, 78 \d{2} and 76 [29]\d. The 29
+             prefix is listed as a mobile prefix, but many people list it as their fixed home
+             number. We will keep it as mobile for now, but it may actually be a prefix for fixed
+             satellite phones. -->
+        <nationalNumberPattern>
+          (?:
+            29\d|
+            7(?:
+              1[1-3]|
+              [4-9]\d
+            )
+          )\d{5}
+        </nationalNumberPattern>
+        <exampleNumber>79561234</exampleNumber>
+      </mobile>
+      <!-- http://www.diplomatie.gouv.fr/fr/conseils-aux-voyageurs_909/conseils-par-pays_12191/burundi_12220/index.html -->
+      <emergency>
+        <nationalNumberPattern>11[78]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>117</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Benin -->
+    <!-- http://www.itu.int/oth/T0202000017/en -->
+    <territory id="BJ" countryCode="229" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{2})(\d{2})(\d{2})(\d{2})">
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <!-- Numbers beginning with 7 should be formatted as a block. -->
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [2689]\d{7}|
+          7\d{3}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{4,8}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- These come from the national numbering plan, but have been widened to include other
+             prefixes found in the yellow pages - specifically 21 0. -->
+        <nationalNumberPattern>
+          2(?:
+            02|
+            1[037]|
+            2[45]|
+            3[68]
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>20211234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- We have restricted the pattern here to the first two digits, as beyond this the data
+             seems to be no longer accurate. The prefixes 9[468] have also been added, along with
+             6[67] (seemingly prefixes for Mobile MTN), and 64 for BeninCell. -->
+        <nationalNumberPattern>
+          (?:
+            6[467]|
+            9[03-8]
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>90011234</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>7[3-5]\d{2}</nationalNumberPattern>
+        <possibleNumberPattern>\d{4}</possibleNumberPattern>
+        <exampleNumber>7312</exampleNumber>
+      </tollFree>
+      <voip>
+        <nationalNumberPattern>857[58]\d{4}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>85751234</exampleNumber>
+      </voip>
+      <!-- Numbers beginning with 81 are reserved for _either_ free phone or shared-cost (same cost
+           as a local-call.) We model these as UAN since we have no more detailed information. -->
+      <uan>
+        <nationalNumberPattern>81\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>81123456</exampleNumber>
+      </uan>
+      <emergency>
+        <nationalNumberPattern>11[78]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>117</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Saint Barthélemy, French Antilles -->
+    <!-- There seems to be some overlap with phone numbers from Saint Martin and Guadeloupe. The
+         national numbering plan does not specify any St Barthélemy-specific numbering prefixes, but
+         it appears from searches in online white and yellow pages that a subset of the prefixes
+         available in these regions are used. In these cases, if getRegionCodeForNumber is used, one
+         of these region codes will be returned, although numbers will be valid for both regions.
+         -->
+    <!-- http://www.itu.int/oth/T0202000058/en -->
+    <territory id="BL" countryCode="590" internationalPrefix="00" nationalPrefix="0">
+      <!-- Formatting rules borrowed from Guadeloupe. -->
+      <generalDesc>
+        <nationalNumberPattern>[56]\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          590(?:
+            2[7-9]|
+            5[12]|
+            87
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>590271234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Any ranges assigned from
+             http://www.arcep.fr/index.php?id=interactivenumeros have been listed as belonging to
+             Guadeloupe, St Martin and St Barthélemy, since we can't reliably distinguish between
+             them. -->
+        <nationalNumberPattern>
+          690(?:
+            0[0-7]|
+            [1-9]\d
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>690301234</exampleNumber>
+      </mobile>
+      <!-- http://www.comstbarth.fr/urgences.asp -->
+      <emergency>
+        <nationalNumberPattern>18</nationalNumberPattern>
+        <possibleNumberPattern>\d{2}</possibleNumberPattern>
+        <exampleNumber>18</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Bermuda -->
+    <!-- http://www.itu.int/oth/T0202000018/en -->
+    <territory id="BM" countryCode="1" leadingDigits="441" nationalPrefix="1"
+               internationalPrefix="011">
+      <generalDesc>
+        <!-- NANPA country - uses US formatting rules -->
+        <nationalNumberPattern>[4589]\d{9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}(?:\d{3})?</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          441(?:
+            2(?:
+              02|
+              23|
+              61|
+              [3479]\d
+            )|
+            [46]\d{2}|
+            5(?:
+              4\d|
+              60|
+              89
+            )|
+            824
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>4412345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          441(?:
+            [37]\d|
+            5[0-39]
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>4413701234</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>
+          8(?:
+            00|
+            55|
+            66|
+            77|
+            88
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8002123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>900[2-9]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9002123456</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <!-- http://www.nanpa.com/pdf/PL_416.pdf -->
+        <nationalNumberPattern>
+          5(?:
+            00|
+            33|
+            44
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5002345678</exampleNumber>
+      </personalNumber>
+      <emergency>
+        <!-- http://travel.state.gov/travel/cis_pa_tw/cis/cis_1067.html -->
+        <nationalNumberPattern>911</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>911</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Brunei Darussalam -->
+    <!-- http://www.itu.int/oth/T020200001F/en -->
+    <territory id="BN" countryCode="673" internationalPrefix="00">
+      <!-- Format is from http://aiti.gov.bn/contact.html -->
+      <availableFormats>
+        <numberFormat pattern="([2-578]\d{2})(\d{4})">
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[2-578]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>[2-5]\d{6}</nationalNumberPattern>
+        <exampleNumber>2345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>[78]\d{6}</nationalNumberPattern>
+        <exampleNumber>7123456</exampleNumber>
+      </mobile>
+      <emergency>
+        <!-- http://www.information.gov.bn/VER2/content/view/52/62/ -->
+        <nationalNumberPattern>99[135]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>991</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Bolivia -->
+    <!-- http://www.itu.int/oth/T020200001A/en -->
+    <!-- http://www.bolivia.com/Servicios/Plandenumeracion.pdf -->
+    <territory id="BO" countryCode="591" internationalPrefix="00(1\d)?" nationalPrefix="0"
+               nationalPrefixForParsing="0(1\d)?" carrierCodeFormattingRule="$NP$CC $FG">
+      <availableFormats>
+        <numberFormat pattern="([234])(\d{7})">
+          <leadingDigits>[234]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="([67]\d{7})">
+          <leadingDigits>[67]</leadingDigits>
+          <format>$1</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[23467]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7,8}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            2(?:
+              2\d{2}|
+              5(?:11|[258]\d|9[67])|
+              6(?:12|2\d|9[34])|
+              8(?:2[34]|39|62)
+            )|
+            3(?:
+              3\d{2}|
+              4(?:6\d|8[24])|
+              8(?:25|42|5[257]|86|9[25])|
+              9(?:2\d|3[234]|4[248]|5[24]|6[2-6]|7\d)
+            )|
+            4(?:
+              4\d{2}|
+              6(?:11|[24689]\d|72)
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,8}</possibleNumberPattern>
+        <exampleNumber>22123456</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>[67]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>71234567</exampleNumber>
+      </mobile>
+      <emergency>
+        <nationalNumberPattern>11[089]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>110</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Bonaire, Sint Eustatius and Saba -->
+    <!-- http://www.itu.int/oth/T02020000F8/en -->
+    <territory id="BQ" countryCode="599" internationalPrefix="00">
+      <!-- Shares formatting patterns with CW. -->
+      <generalDesc>
+        <nationalNumberPattern>[347]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            318[023]|
+            416[0239]|
+            7(?:
+              1[578]|
+              50
+            )\d
+          )\d{3}
+        </nationalNumberPattern>
+        <exampleNumber>7151234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          (?:
+            318[1456]|
+            416[15-8]|
+            7(?:
+              0[01]|
+              [89]\d
+            )\d
+          )\d{3}|
+        </nationalNumberPattern>
+        <exampleNumber>3181234</exampleNumber>
+      </mobile>
+      <emergency>
+        <!-- http://www.rijksdienstcn.com/index.php?view=pagina&id=126&set_language=EN -->
+        <nationalNumberPattern>
+          112|
+          911
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Brazil -->
+    <!-- http://en.wikipedia.org/wiki/%2B55 -->
+    <!-- http://www.itu.int/oth/T020200001D/en -->
+    <territory id="BR" countryCode="55"
+               internationalPrefix="00(?:1[45]|2[135]|[34]1|43)"
+               nationalPrefix="0"
+               nationalPrefixForParsing="0(?:(1[245]|2[135]|[34]1)(\d{10,11}))?"
+               nationalPrefixTransformRule="$2">
+      <!-- The national prefix for parsing here also contains a capturing group for the main number,
+           since the carrier codes here may also be area codes, so we want to check the length of
+           the number after capturing. We also need a nationalTransformRule to repopulate with the
+           number without the carrier code. -->
+      <availableFormats>
+        <!-- Numbers can be dialled without an area code on mobile phones in Brazil. The first two
+             rules here handle this case. The leading digits pattern must be specific enough such
+             that it doesn't match X00 numbers (e.g. toll-free). -->
+        <numberFormat nationalPrefixFormattingRule="$FG" pattern="(\d{4})(\d{4})">
+          <leadingDigits>
+            [2-9](?:
+              [1-9]|
+              0[1-9]
+            )
+          </leadingDigits>
+          <format>$1-$2</format>
+          <intlFormat>NA</intlFormat>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$FG" pattern="(\d{5})(\d{4})">
+          <leadingDigits>
+            9(?:
+              [1-9]|
+              0[1-9]
+            )
+          </leadingDigits>
+          <format>$1-$2</format>
+          <intlFormat>NA</intlFormat>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="($FG)"
+          pattern="(\d{2})(\d{5})(\d{4})"
+          carrierCodeFormattingRule="$NP $CC ($FG)">
+          <leadingDigits>1[1-9]9</leadingDigits>
+          <format>$1 $2-$3</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="($FG)"
+          pattern="(\d{2})(\d{4})(\d{4})"
+          carrierCodeFormattingRule="$NP $CC ($FG)">
+          <leadingDigits>[1-9][1-9]</leadingDigits>
+          <format>$1 $2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="([34]00\d)(\d{4})">
+          <leadingDigits>[34]00</leadingDigits>
+          <format>$1-$2</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$NP$FG"
+          pattern="([3589]00)(\d{2,3})(\d{4})">
+          <leadingDigits>[3589]00</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [1-46-9]\d{7,10}|
+          5\d{8,9}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8,11}</possibleNumberPattern>
+      </generalDesc>
+      <noInternationalDialling>
+        <nationalNumberPattern>[34]00\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>40041234</exampleNumber>
+      </noInternationalDialling>
+      <fixedLine>
+        <!-- According to this publication, the prefixes 11 53, 11 54 and 11 57 are to be used for
+             mobile phones prior to the introduction of a ninth digit. It is not clear whether they
+             are still valid as fixed-line numbers, so we are leaving them here in the meantime:
+             http://www.anatel.gov.br/Portal/exibirPortalNoticias.do?acao=carregaNoticia&codigo=22406
+             -->
+        <nationalNumberPattern>
+          1[1-9][2-5]\d{7}|
+          (?:
+            [4689][1-9]|
+            2[12478]|
+            3[1-578]|
+            5[13-5]|
+            7[13-579]
+          )[2-5]\d{7}
+        </nationalNumberPattern>
+        <exampleNumber>1123456789</exampleNumber>
+      </fixedLine>
+      <!--  Also includes the new 11-digit mobile numbers that are being rolled out since 2012,
+            which are added at the end. -->
+      <mobile>
+        <nationalNumberPattern>
+          1(?:
+            1(?:
+              5[347]|
+              [6-9]\d|
+            )|
+            [2-9][6-9]\d
+          )\d{6}|
+          (?:
+            2[12478]|
+            3[1-578]|
+            [4689][1-9]|
+            5[13-5]|
+            7[13-579]
+          )[6-9]\d{7}|
+          (?:
+            119\d|
+            1[2-9]9[6-9]
+          )\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10,11}</possibleNumberPattern>
+        <exampleNumber>1161234567</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>800\d{6,7}</nationalNumberPattern>
+        <exampleNumber>800123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>[359]00\d{6,7}</nationalNumberPattern>
+        <exampleNumber>300123456</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <nationalNumberPattern>[34]00\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>40041234</exampleNumber>
+      </sharedCost>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            12|
+            28|
+            9[023]
+          )|
+          911
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>190</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Bahamas -->
+    <!-- http://www.itu.int/oth/T0202000010/en -->
+    <territory id="BS" countryCode="1" leadingDigits="242" nationalPrefix="1"
+               internationalPrefix="011">
+      <generalDesc>
+        <!-- NANPA country - uses US formatting rules -->
+        <nationalNumberPattern>[2589]\d{9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}(?:\d{3})?</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          242(?:
+            3(?:
+              02|
+              [236][1-9]|
+              4[0-24-9]|
+              5[0-68]|
+              7[3467]|
+              8[0-4]|
+              9[2-467]
+            )|
+            461|
+            502|
+            6(?:
+              12|
+              7[67]|
+              8[78]|
+              9[89]
+            )|
+            702
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>2423456789</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          242(?:
+            3(?:
+              5[79]|
+              [79]5
+            )|
+            4(?:
+              [2-4][1-9]|
+              5[1-8]|
+              6[2-8]|
+              7\d|
+              81
+            )|
+            5(?:
+              2[45]|
+              3[35]|
+              44|
+              5[1-9]|
+              65|
+              77
+            )|
+            6[34]6|
+            727
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>2423591234</exampleNumber>
+      </mobile>
+      <tollFree>
+        <!-- 242 300 is a Domestic Toll Free service. -->
+        <nationalNumberPattern>
+          242300\d{4}|
+          8(?:
+            00|
+            55|
+            66|
+            77|
+            88
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8002123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>900[2-9]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9002123456</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <!-- http://www.nanpa.com/pdf/PL_416.pdf -->
+        <nationalNumberPattern>
+          5(?:
+            00|
+            33|
+            44
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5002345678</exampleNumber>
+      </personalNumber>
+      <emergency>
+        <!-- http://travel.state.gov/travel/cis_pa_tw/cis/cis_989.html -->
+        <nationalNumberPattern>91[19]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>911</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Bhutan -->
+    <!-- http://www.itu.int/oth/T0202000019/en -->
+    <territory id="BT" countryCode="975" internationalPrefix="00">
+      <availableFormats>
+        <!-- Format is from
+             http://www.tourism.gov.bt/tour-operators/bhutan-abbot-tours-and-travels.html -->
+        <numberFormat pattern="([17]7)(\d{2})(\d{2})(\d{2})">
+          <leadingDigits>
+            1|
+            77
+          </leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="([2-8])(\d{3})(\d{3})">
+          <leadingDigits>
+            [2-68]|
+            7[246]
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[1-8]\d{6,7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6,8}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            2[3-6]|
+            [34][5-7]|
+            5[236]|
+            6[2-46]|
+            7[246]|
+            8[2-4]
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,7}</possibleNumberPattern>
+        <exampleNumber>2345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- The 77 prefix is not yet in the ITU document but numbers online indicate this prefix
+             is in use. -->
+        <nationalNumberPattern>[17]7\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>17123456</exampleNumber>
+      </mobile>
+      <emergency>
+        <!-- http://www.rbp.gov.bt/requestpolice.php -->
+        <!-- http://www.jdwnrh.gov.bt/sfo2011/?page_id=51 -->
+        <nationalNumberPattern>11[023]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>113</exampleNumber>
+      </emergency>
+      <!-- No information on other types of phone numbers for Bhutan has been found. -->
+    </territory>
+
+    <!-- Botswana -->
+    <!-- http://www.itu.int/oth/T020200001C/en -->
+    <territory id="BW" countryCode="267" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{4})">
+          <leadingDigits>[2-6]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(7\d)(\d{3})(\d{3})">
+          <leadingDigits>7</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(90)(\d{5})">
+          <leadingDigits>9</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[2-79]\d{6,7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7,8}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            2(?:
+              4[0-48]|
+              6[0-24]|
+              9[0578]
+            )|
+            3(?:
+              1[0235-9]|
+              55|
+              6\d|
+              7[01]|
+              9[0-57]
+            )|
+            4(?:
+              6[03]|
+              7[1267]|
+              9[0-5]
+            )|
+            5(?:
+              3[0389]|
+              4[0489]|
+              7[1-47]|
+              88|
+              9[0-49]
+            )|
+            6(?:
+              2[1-35]|
+              5[149]|
+              8[067]
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+        <exampleNumber>2401234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- 77[01] has been added after numbers in use have been seen online. -->
+        <nationalNumberPattern>
+          7(?:
+            [1-35]\d{6}|
+            [46][0-7]\d{5}|
+            7[01]\d{5}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>71123456</exampleNumber>
+      </mobile>
+      <!-- No reliable information about toll-free numbers can be found; many are written on the
+           internet like 0800 123 456, but this is not supported by any documentation and no
+           numbers can be found that actually work. -->
+      <premiumRate>
+        <nationalNumberPattern>90\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+        <exampleNumber>9012345</exampleNumber>
+      </premiumRate>
+      <voip>
+        <nationalNumberPattern>79[12][01]\d{4}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>79101234</exampleNumber>
+      </voip>
+      <emergency>
+        <!-- http://www.gov.bw/en/Ministries%2D%2DAuthorities/Ministries/State-President/Botswana-Police-Service-/About-the-BPS/Toll-Free-Numbers/ -->
+        <!-- http://travel.state.gov/travel/cis_pa_tw/cis/cis_1071.html -->
+        <nationalNumberPattern>99[789]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>999</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Belarus -->
+    <!-- http://www.eng.beltelecom.by/en/subscribers/phone-codes -->
+    <!-- Information on national prefix provided by a Belarussian person. -->
+    <territory id="BY" countryCode="375" preferredInternationalPrefix="8~10"
+               internationalPrefix="810" nationalPrefixForParsing="80?"
+               nationalPrefix="8">
+      <availableFormats>
+        <numberFormat nationalPrefixFormattingRule="$NP 0$FG"
+          pattern="([1-4]\d)(\d{3})(\d{4})">
+          <leadingDigits>[1-4]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$NP $FG"
+          pattern="([89]\d{2})(\d{3})(\d{4})">
+          <leadingDigits>
+            8[01]|
+            9
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$NP $FG"
+          pattern="(8\d{2})(\d{4})(\d{4})">
+          <leadingDigits>82</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [1-4]\d{8}|
+          [89]\d{9,10}
+        </nationalNumberPattern>
+        <!-- Numbers are often written without the city code. -->
+        <possibleNumberPattern>\d{7,11}</possibleNumberPattern>
+      </generalDesc>
+      <!-- Toll-free and premium rate numbers are not available from abroad. -->
+      <noInternationalDialling>
+        <nationalNumberPattern>
+          8(?:
+            [01]|
+            20
+          )\d{8}|
+          902\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10,11}</possibleNumberPattern>
+        <exampleNumber>82012345678</exampleNumber>
+      </noInternationalDialling>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            1(?:
+              5(?:
+                1[1-5]|
+                2\d|
+                6[2-4]|
+                9[1-7]
+              )|
+              6(?:
+                [235]\d|
+                4[1-7]
+              )|
+              7\d{2}
+            )|
+            2(?:
+              1(?:
+                [246]\d|
+                3[0-35-9]|
+                5[1-9]
+              )|
+              2(?:
+                [235]\d|
+                4[0-8]
+              )|
+              3(?:
+                2\d|
+                3[02-79]|
+                4[024-7]|
+                5[0-7]
+              )
+            )
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,9}</possibleNumberPattern>
+        <!-- Using test number for Grodno from the plan. -->
+        <exampleNumber>152450911</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          (?:
+            2(?:
+              5[5679]|
+              9[1-9]
+            )|
+            33\d|
+            44\d
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <!-- Using test number for BelCel from the plan. -->
+        <exampleNumber>294911911</exampleNumber>
+      </mobile>
+      <tollFree>
+        <!-- Putting Interactive Polling Service (free) here too. -->
+        <nationalNumberPattern>
+          8(?:
+            0[13]|
+            20\d
+          )\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10,11}</possibleNumberPattern>
+        <exampleNumber>8011234567</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <!-- Putting Interactive Polling Service (paid) here too. -->
+        <nationalNumberPattern>
+          (?:
+            810|
+            902
+          )\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9021234567</exampleNumber>
+      </premiumRate>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            0[123]|
+            12
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Belize -->
+    <!-- http://www.itu.int/oth/T0202000016/en -->
+    <!-- The trunk prefix, formally 0, was dropped in the last reorganisation of the numbering plan.
+         -->
+    <territory id="BZ" countryCode="501" internationalPrefix="00" leadingZeroPossible="true">
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{4})">
+          <leadingDigits>[2-8]</leadingDigits>
+          <!-- Adding hyphen following the Belize Telemedia formatting rules. -->
+          <format>$1-$2</format>
+        </numberFormat>
+        <numberFormat pattern="(0)(800)(\d{4})(\d{3})">
+          <leadingDigits>0</leadingDigits>
+          <format>$1-$2-$3-$4</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [2-8]\d{6}|
+          0\d{10}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7}(?:\d{4})?</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>[234578][02]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+        <exampleNumber>2221234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- 62[6-9], 63X and 6[67][2-9] were added as we have been able to successfully send SMSs
+             to these numbers or many numbers have been found online. -->
+        <nationalNumberPattern>6[0-367]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+        <exampleNumber>6221234</exampleNumber>
+      </mobile>
+      <!-- We don't know how these would be dialled internationally - it is possible that they can't
+           be dialled internationally at all - so we represent the leading 0 as part of the number.
+           Information from www.belizetelemedia.net. -->
+      <tollFree>
+        <nationalNumberPattern>0800\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{11}</possibleNumberPattern>
+        <exampleNumber>08001234123</exampleNumber>
+      </tollFree>
+      <!-- http://studentsabroad.state.gov/content/pdfs/911_ABROAD.pdf -->
+      <emergency>
+        <nationalNumberPattern>
+          9(?:
+            0|
+            11
+          )
+          </nationalNumberPattern>
+        <possibleNumberPattern>\d{2,3}</possibleNumberPattern>
+        <exampleNumber>911</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Canada -->
+    <!-- http://www.cnac.ca/canadian_dial_plan/canadian_dial_plan.htm -->
+    <territory id="CA" countryCode="1" internationalPrefix="011" nationalPrefix="1">
+      <generalDesc>
+        <!-- NANPA country - uses US formatting rules -->
+        <nationalNumberPattern>
+          [2-9]\d{9}|
+          3\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7}(?:\d{3})?</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            2(?:
+              04|
+              [23]6|
+              [48]9|
+              50
+            )|
+            3(?:
+              06|
+              43|
+              65
+            )|
+            4(?:
+              03|
+              1[68]|
+              3[178]|
+              5[06]
+            )|
+            5(?:
+              0[06]|
+              1[49]|
+              79|
+              8[17]
+            )|
+            6(?:
+              0[04]|
+              13|
+              39|
+              47
+            )|
+            7(?:
+              0[059]|
+              80|
+              78
+            )|
+            8(?:
+              [06]7|
+              19|
+              73
+            )|
+            90[25]
+          )[2-9]\d{6}|
+          310\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>2042345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          (?:
+            2(?:
+              04|
+              [23]6|
+              [48]9|
+              50
+            )|
+            3(?:
+              06|
+              43|
+              65
+            )|
+            4(?:
+              03|
+              1[68]|
+              3[178]|
+              5[06]
+            )|
+            5(?:
+              0[06]|
+              1[49]|
+              79|
+              8[17]
+            )|
+            6(?:
+              0[04]|
+              13|
+              39|
+              47
+            )|
+            7(?:
+              0[059]|
+              80|
+              78
+            )|
+            8(?:
+              [06]7|
+              19|
+              73
+            )|
+            90[25]
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>2042345678</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>
+          8(?:
+            00|
+            55|
+            66|
+            77|
+            88
+          )[2-9]\d{6}|
+          310\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>8002123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>900[2-9]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9002123456</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <!-- http://www.nanpa.com/pdf/PL_416.pdf -->
+        <nationalNumberPattern>
+          5(?:
+            00|
+            33|
+            44
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5002345678</exampleNumber>
+      </personalNumber>
+      <emergency>
+        <nationalNumberPattern>
+          112|
+          911
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>911</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Cocos Islands -->
+    <!-- Metadata shared with Australia. -->
+    <!-- References state Cocos Islands have fixed line numbers starting +61 8 9162. -->
+    <!-- http://en.wikipedia.org/wiki/List_of_country_calling_codes -->
+    <!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_Australia -->
+    <territory id="CC" countryCode="61" preferredInternationalPrefix="0011"
+               internationalPrefix="(?:14(?:1[14]|34|4[17]|[56]6|7[47]|88))?001[14-689]"
+               nationalPrefix="0">
+      <!-- Uses AU formatting rules. -->
+      <!-- General desc and fixed line rules different from Australia. -->
+      <generalDesc>
+        <nationalNumberPattern>[1458]\d{5,9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6,10}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>89162\d{4}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8,9}</possibleNumberPattern>
+        <exampleNumber>891621234</exampleNumber>
+      </fixedLine>
+      <!-- Mobile, toll free, premium rate, personal number and VOIP copied from Australia. -->
+      <mobile>
+        <nationalNumberPattern>
+          4(?:
+            [0-2]\d|
+            3[0-57-9]|
+            4[47-9]|
+            5[0-37-9]|
+            6[6-9]|
+            7[07-9]|
+            8[7-9]
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>412345678</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>
+          1(?:
+            80(?:
+              0\d{2}
+            )?|
+            3(?:
+              00\d{2}
+            )?
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,10}</possibleNumberPattern>
+        <exampleNumber>1800123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>190[0126]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>1900123456</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <nationalNumberPattern>500\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>500123456</exampleNumber>
+      </personalNumber>
+      <voip>
+        <nationalNumberPattern>550\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>550123456</exampleNumber>
+      </voip>
+      <emergency>
+        <!-- We assume this is the same as for Australia, since they have the same country code and
+             share their police force, and no better information can be found. -->
+        <nationalNumberPattern>
+          000|
+          112
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Congo, Dem. Rep. of the (formerly Zaire) -->
+    <!-- http://www.itu.int/oth/T0202000037/en -->
+    <territory id="CD" countryCode="243" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{4})">
+          <leadingDigits>12</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="([89]\d{2})(\d{3})(\d{3})">
+          <leadingDigits>
+            8[0-2459]|
+            9
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{2})(\d{3})">
+          <leadingDigits>88</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{5})">
+          <leadingDigits>[1-6]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [2-6]\d{6}|
+          [18]\d{6,8}|
+          9\d{8}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          1(?:
+            2\d{7}|
+            \d{6}
+          )|
+          [2-6]\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>1234567</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- As of May'13 the 88 range looks as if it is defunct. The ITU document lists "Yozma
+             Timeturns" as the operator, but their website (http://www.ytt.cd) is offline and the
+             holdings company http://www.timeturnsholdings.com/products does not show a link for
+             DRC. While there are still numbers of the form "88\d{5}" online, none of the ones
+             tried were valid. If the holdings company does not respond to requests about this
+             range and unless we receive further information, we will remove this range. -->
+        <nationalNumberPattern>
+          8(?:
+            [0-2459]\d{2}|
+            8
+          )\d{5}|
+          9[7-9]\d{7}
+        </nationalNumberPattern>
+        <exampleNumber>991234567</exampleNumber>
+      </mobile>
+      <!-- No national emergency numbers were located for Congo. -->
+    </territory>
+
+    <!-- Central African Republic -->
+    <!-- http://www.itu.int/oth/T0202000028/en -->
+    <territory id="CF" countryCode="236" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{2})(\d{2})(\d{2})(\d{2})">
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[278]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>2[12]\d{6}</nationalNumberPattern>
+        <exampleNumber>21612345</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>7[0257]\d{6}</nationalNumberPattern>
+        <exampleNumber>70012345</exampleNumber>
+      </mobile>
+      <premiumRate>
+        <nationalNumberPattern>8776\d{4}</nationalNumberPattern>
+        <exampleNumber>87761234</exampleNumber>
+      </premiumRate>
+      <!-- No emergency numbers information can be found. -->
+    </territory>
+
+    <!-- Congo (Rep. of the) (Brazzaville) -->
+    <!-- http://www.itu.int/oth/T020200002E/en -->
+    <territory id="CG" countryCode="242" internationalPrefix="00" leadingZeroPossible="true">
+      <availableFormats>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{4})">
+          <leadingDigits>[02]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d)(\d{4})(\d{4})">
+          <leadingDigits>8</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[028]\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>222[1-589]\d{5}</nationalNumberPattern>
+        <exampleNumber>222123456</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>0[14-6]\d{7}</nationalNumberPattern>
+        <exampleNumber>061234567</exampleNumber>
+      </mobile>
+      <!-- Referred to as a "Green number" in the telephone plan. -->
+      <tollFree>
+        <nationalNumberPattern>800\d{6}</nationalNumberPattern>
+        <exampleNumber>800123456</exampleNumber>
+      </tollFree>
+      <!-- No emergency numbers information can be found. -->
+    </territory>
+
+    <!-- Switzerland -->
+    <!-- http://www.bakom.admin.ch/themen/telekom/00479/00604/index.html?lang=en
+         under Technical prescriptions: Numbering plan for international carriers -->
+    <territory id="CH" countryCode="41" internationalPrefix="00"
+               nationalPrefix="0"  nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat pattern="([2-9]\d)(\d{3})(\d{2})(\d{2})">
+          <leadingDigits>
+            [2-7]|
+            [89]1
+          </leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="([89]\d{2})(\d{3})(\d{3})">
+          <leadingDigits>
+            8[047]|
+            90
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{2})(\d{3})(\d{2})(\d{2})">
+          <leadingDigits>860</leadingDigits>
+          <format>$1 $2 $3 $4 $5</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [2-9]\d{8}|
+          860\d{9}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}(?:\d{3})?</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            2[12467]|
+            3[1-4]|
+            4[134]|
+            5[12568]|
+            6[12]|
+            [7-9]1
+          )\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>212345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>7[46-9]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>741234567</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>800\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>800123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>90[016]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>900123456</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <nationalNumberPattern>84[0248]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>840123456</exampleNumber>
+      </sharedCost>
+      <personalNumber>
+        <nationalNumberPattern>878\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>878123456</exampleNumber>
+      </personalNumber>
+      <voicemail>
+        <nationalNumberPattern>860\d{9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{12}</possibleNumberPattern>
+        <exampleNumber>860123456789</exampleNumber>
+      </voicemail>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            1[278]|
+            44
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Côte d'Ivoire -->
+    <!-- http://www.itu.int/oth/T0202000031/en -->
+    <territory id="CI" countryCode="225" internationalPrefix="00" leadingZeroPossible="true">
+      <availableFormats>
+        <!-- Using format from online yellow pages over format implied in national numbering plan.
+             -->
+        <numberFormat pattern="(\d{2})(\d{2})(\d{2})(\d{2})">
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[02-6]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            2(?:
+              0[023]|
+              1[02357]|
+              [23][045]|
+              4[03-5]
+            )|
+            3(?:
+              0[06]|
+              1[069]|
+              [2-4][07]|
+              5[09]|
+              6[08]
+            )
+          )\d{5}
+        </nationalNumberPattern>
+        <exampleNumber>21234567</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Added the prefixes 4[0-2] (Moov), 5[5-9] & 65 because SMS messages have been
+             successfully delivered. Supported by numbers found on the internet. -->
+        <nationalNumberPattern>
+          (?:
+            0[1-9]|
+            4[0-24-9]|
+            5[05-9]|
+            6[05679]
+          )\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>01234567</exampleNumber>
+      </mobile>
+      <!-- http://studentsabroad.state.gov/content/pdfs/911_ABROAD.pdf -->
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            1[01]|
+            [78]0
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>110</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Cook Islands -->
+    <!-- http://www.itu.int/oth/T020200002F/en -->
+    <territory id="CK" countryCode="682" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{2})(\d{3})">
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[2-57]\d{4}</nationalNumberPattern>
+        <possibleNumberPattern>\d{5}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            2\d|
+            3[13-7]|
+            4[1-5]
+          )\d{3}
+        </nationalNumberPattern>
+        <exampleNumber>21234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          (?:
+            5[0-68]|
+            7\d
+          )\d{3}
+        </nationalNumberPattern>
+        <exampleNumber>71234</exampleNumber>
+      </mobile>
+      <emergency>
+        <!-- http://www.frommers.com/destinations/cookislands/3036020157.html and other tourist
+             sites agree on the following numbers. -->
+        <nationalNumberPattern>99[689]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>998</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Chile -->
+    <!-- http://www.itu.int/oth/T020200002A/en -->
+    <!-- http://en.wikipedia.org/wiki/%2B56 -->
+    <!-- Carriers listed here: http://www.turismochile.com/datos/carrier.php -->
+    <territory id="CL" countryCode="56"
+               internationalPrefix="(?:0|1(?:1[0-69]|2[0-57]|5[13-58]|69|7[0167]|8[018]))0"
+               nationalPrefix="0"
+               nationalPrefixForParsing="0|(1(?:1[0-69]|2[0-57]|5[13-58]|69|7[0167]|8[018]))"
+               nationalPrefixFormattingRule="$NP$FG">
+      <!-- When dialling mobile numbers from landlines, or vice versa, you need a prefix of 0, which
+      we strip here. National destinations may be dialled with a carrier if they are not local so
+      we extract these carrier codes as well. -->
+      <availableFormats>
+        <numberFormat pattern="(2)(\d{3,4})(\d{4})"
+          nationalPrefixFormattingRule="($FG)"
+          carrierCodeFormattingRule="$CC ($FG)">
+          <leadingDigits>2</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{2,3})(\d{4})"
+          nationalPrefixFormattingRule="($FG)"
+          carrierCodeFormattingRule="$CC ($FG)">
+          <leadingDigits>
+            [357]|
+            4[1-35]|
+            6[13-57]
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(9)([5-9]\d{3})(\d{4})">
+          <leadingDigits>9</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(44)(\d{3})(\d{4})">
+          <leadingDigits>44</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$FG"
+          pattern="([68]00)(\d{3})(\d{3,4})">
+          <leadingDigits>
+            60|
+            8
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$FG"
+          pattern="(600)(\d{3})(\d{2})(\d{3})">
+          <leadingDigits>60</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$FG"
+          pattern="(1230)(\d{3})(\d{4})">
+          <leadingDigits>1</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          (?:
+            [2-9]|
+            600|
+            123
+          )\d{7,8}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,11}</possibleNumberPattern>
+      </generalDesc>
+      <noInternationalDialling>
+        <nationalNumberPattern>600\d{7,8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10,11}</possibleNumberPattern>
+        <exampleNumber>6001234567</exampleNumber>
+      </noInternationalDialling>
+      <fixedLine>
+        <!-- Nov 2012: The prefixing of '2' to all fixed line numbers, which is being rolled
+             out between October 2012 and June 2013 means that temporarily the regular
+             expressions for areas will get very messy as some adopt the leading '2' but
+             others do not. Eventually when the conversion is complete things should simplify
+             again. Note that area codes 32 or 41 were transitioned in 2007.
+             IMPORTANT: A literal reading of the transition rules suggest that all numbers get
+             a '2' prefix, but some numbers are already 7 digits long (but these always start
+             with a '2'). The prefixing seems almost certain to only apply to 6-digit numbers and
+             will unify all fixed line numbers to be 9 digits in total. The fact that the new seven
+             digit numbers currently only start with a '2' is likely to change in the future.
+             Note also that at some stage it is likely that Santiago numbers (area code '2') will
+             have a prefix of "2\d" and not "22" (it's like 10 2-digit area codes wrapped into one).
+             See: http://www.gob.cl/especiales/informate-de-la-nueva-forma-de-marcar/
+                  http://www.subtel.cl/index.php?option=com_content&view=article&id=3081:&catid=3:noticias
+             -->
+        <nationalNumberPattern>
+          (?:
+            [23]2|
+            41|
+            58
+          )\d{7}|
+          (?:
+            3[3-5]|
+            4[235]|
+            5[1-357]|
+            6[13-57]|
+            7[1-35]
+          )\d{6,7}
+        </nationalNumberPattern>
+        <!-- Area codes do not need to be dialled when dialling within the same area, so the
+             smallest possible number is length 6. -->
+        <!-- Nov 2012: The prefixing of '2' to all 6-digit fixed line numbers means that while
+             the maximum possible number length stays as 9, the minimum length will become '7'
+             when all area codes are migrated. -->
+        <possibleNumberPattern>\d{6,9}</possibleNumberPattern>
+        <exampleNumber>221234567</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>9[5-9]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8,9}</possibleNumberPattern>
+        <exampleNumber>961234567</exampleNumber>
+      </mobile>
+      <!-- Toll free patterns have been collected by looking at numbers on the internet, rather than
+           from a definitive source. -->
+      <tollFree>
+        <!-- 1230 numbers are used by Visa/Mastercard helplines in Chile -->
+        <nationalNumberPattern>
+          800\d{6}|
+          1230\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9,11}</possibleNumberPattern>
+        <exampleNumber>800123456</exampleNumber>
+      </tollFree>
+      <sharedCost>
+        <!-- http://empresa.movistar.cl/nuestros_productos/soluciones_telefonia_ip/servicios/servicio_600.php -->
+        <nationalNumberPattern>600\d{7,8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10,11}</possibleNumberPattern>
+        <exampleNumber>6001234567</exampleNumber>
+      </sharedCost>
+      <voip>
+        <nationalNumberPattern>44\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>441234567</exampleNumber>
+      </voip>
+      <emergency>
+        <nationalNumberPattern>13[123]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>133</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Cameroon -->
+    <!-- http://www.itu.int/oth/T0202000024/en -->
+    <territory id="CM" countryCode="237" internationalPrefix="00">
+      <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.) -->
+        <numberFormat pattern="([237-9]\d)(\d{2})(\d{2})(\d{2})">
+          <leadingDigits>
+            [2379]|
+            88
+          </leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(800)(\d{2})(\d{3})">
+          <leadingDigits>80</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[237-9]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</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. -->
+        <nationalNumberPattern>
+          (?:
+            22|
+            33
+          )\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>22123456</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>[79]\d{7}</nationalNumberPattern>
+        <exampleNumber>71234567</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>800\d{5}</nationalNumberPattern>
+        <exampleNumber>80012345</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <!-- These numbers are listed as value-added in the guide, and in practice seem to begin
+             with 88 (usually 880). No information can be found as to whether these are premium rate
+             or shared cost. -->
+        <nationalNumberPattern>88\d{6}</nationalNumberPattern>
+        <exampleNumber>88012345</exampleNumber>
+      </premiumRate>
+      <!-- http://www.diplomatie.gouv.fr/fr/conseils-aux-voyageurs_909/conseils-par-pays_12191/cameroun_12221/index.html -->
+      <emergency>
+        <!-- Numbers must be prefixed with a 1 when dialled from a mobile. -->
+        <nationalNumberPattern>1?1[37]</nationalNumberPattern>
+        <possibleNumberPattern>\d{2,3}</possibleNumberPattern>
+        <exampleNumber>113</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- China -->
+    <!-- http://www.itu.int/oth/T020200002B/en -->
+    <territory id="CN" countryCode="86" internationalPrefix="(1[1279]\d{3})?00"
+               preferredInternationalPrefix="00" nationalPrefix="0"
+               nationalPrefixForParsing="(1[1279]\d{3})|0">
+      <availableFormats>
+        <numberFormat nationalPrefixFormattingRule="$NP$FG" pattern="(80\d{2})(\d{4})"
+                      nationalPrefixOptionalWhenFormatting="true"
+                      carrierCodeFormattingRule="$CC $FG">
+          <leadingDigits>80[2678]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="([48]00)(\d{3})(\d{4})">
+          <leadingDigits>[48]00</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <!-- 95xxx shared cost numbers. Without this rule, the numbers will be formatted
+             incorrectly by the AsYouTypeFormatter because they overlap with area code 095x.
+             Note although ITU says the format is more like 95 xxx, in reality no space is used
+             when writing such numbers in China -->
+        <numberFormat pattern="(\d{5})">
+          <leadingDigits>95</leadingDigits>
+          <format>$1</format>
+        </numberFormat>
+        <!-- Local numbers -->
+        <!-- Chinese fixed-line numbers can be dialed from a cell phone without area code and they
+             can be 7 to 8 digits. This rule is here to make formatting work with such numbers, as
+             people frequently store them in their cellphones. It has to stay before formatting
+             rules for fixed-line numbers to make AsYouTypeFormatter work with these numbers. The
+             leadingDigits prefix makes sure it doesn't clash with mobile numbers. -->
+        <numberFormat pattern="(\d{3,4})(\d{4})">
+          <leadingDigits>[2-9]</leadingDigits>
+          <format>$1 $2</format>
+          <intlFormat>NA</intlFormat>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$NP$FG" pattern="(21)(\d{4})(\d{4,6})"
+                      nationalPrefixOptionalWhenFormatting="true"
+                      carrierCodeFormattingRule="$CC $FG">
+          <leadingDigits>21</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$NP$FG" pattern="([12]\d)(\d{4})(\d{4})"
+                      nationalPrefixOptionalWhenFormatting="true"
+                      carrierCodeFormattingRule="$CC $FG">
+          <leadingDigits>
+            10[1-9]|
+            2[02-9]
+          </leadingDigits>
+          <!-- Note the leadingDigitsPattern for 4 digits is the same as 3 digits, -->
+          <leadingDigits>
+            10[1-9]|
+            2[02-9]
+          </leadingDigits>
+          <leadingDigits>
+            10(?:
+              [1-79]|
+              8(?:
+                [1-9]|
+                0[1-9]
+              )
+            )|
+            2[02-9]
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$NP$FG" pattern="(\d{3})(\d{4})(\d{4})"
+                      nationalPrefixOptionalWhenFormatting="true"
+                      carrierCodeFormattingRule="$CC $FG">
+          <leadingDigits>
+            3(?:
+              11|
+              7[179]
+            )|
+            4(?:
+              [15]1|
+              3[12]
+            )|
+            5(?:
+              1|
+              2[37]|
+              3[12]|
+              51|
+              7[13-79]|
+              9[15]
+            )|
+            7(?:
+              31|
+              5[457]|
+              6[09]|
+              91
+            )|
+            8(?:
+              71|
+              98
+            )
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$NP$FG" pattern="(\d{3})(\d{3})(\d{4})"
+                      nationalPrefixOptionalWhenFormatting="true"
+                      carrierCodeFormattingRule="$CC $FG">
+          <leadingDigits>
+            3(?:
+              1[02-9]|
+              35|
+              49|
+              5|
+              7[02-68]|
+              9[1-68]
+            )|
+            4(?:
+              1[02-9]|
+              2[179]|
+              [35][2-9]|
+              6[4789]|
+              7\d|
+              8[23]
+            )|
+            5(?:
+              3[03-9]|
+              4[36]|
+              5[02-9]|
+              6[1-46]|
+              7[028]|
+              80|
+              9[2-46-9]
+            )|
+            6(?:
+              3[1-5]|
+              6[0238]|
+              9[12]
+            )|
+            7(?:
+              01|
+              [1579]|
+              2[248]|
+              3[04-9]|
+              4[3-6]|
+              6[2368]
+            )|
+            8(?:
+              1[236-8]|
+              2[5-7]|
+              3|
+              5[1-9]|
+              7[02-9]|
+              8[3678]|
+              9[1-7]
+            )|
+            9(?:
+              0[1-3689]|
+              1[1-79]|
+              [379]|
+              4[13]|
+              5[1-5]
+            )
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(1[3-58]\d)(\d{4})(\d{4})" carrierCodeFormattingRule="$CC $FG">
+          <leadingDigits>1[3-58]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(10800)(\d{3})(\d{4})">
+          <leadingDigits>108</leadingDigits>
+          <leadingDigits>1080</leadingDigits>
+          <leadingDigits>10800</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [1-7]\d{7,11}|
+          8[0-357-9]\d{6,9}|
+          9(?:
+            5\d{3}|
+            \d{9}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{4,12}</possibleNumberPattern>
+      </generalDesc>
+      <noInternationalDialling>
+        <!-- 95xxx numbers have been verified to be unreachable from overseas by placing actual
+             calls. -->
+        <nationalNumberPattern>
+          (?:
+            4|
+            (?:
+              10
+            )?8
+          )00\d{7}|
+          95\d{3}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,12}</possibleNumberPattern>
+        <exampleNumber>4001234567</exampleNumber>
+      </noInternationalDialling>
+      <fixedLine>
+        <!-- 0432 increased to 8 digits on October 24, 2009. 0791 increased to 8 digits on August
+             28, 2011. 0551 increased to 8 digits and 0565 was cancelled on Dec 8, 2012. 0871
+             increased to 8 digits on December 16, 2012. 0475 is the prefix for Tongliao but is not
+             in the ITU data. -->
+        <nationalNumberPattern>
+          21\d{8,10}|
+          (?:
+            10|
+            2[02-57-9]|
+            3(?:
+              11|
+              7[179]
+            )|
+            4(?:
+              [15]1|
+              3[12]
+            )|
+            5(?:
+              1\d|
+              2[37]|
+              3[12]|
+              51|
+              7[13-79]|
+              9[15]
+            )|
+            7(?:
+              31|
+              5[457]|
+              6[09]|
+              91
+            )|
+            8(?:
+              71|
+              98
+            )
+          )\d{8}|
+          (?:
+            3(?:
+              1[02-9]|
+              35|
+              49|
+              5\d|
+              7[02-68]|
+              9[1-68]
+            )|
+            4(?:
+              1[02-9]|
+              2[179]|
+              3[3-9]|
+              5[2-9]|
+              6[4789]|
+              7\d|
+              8[23]
+            )|
+            5(?:
+              3[03-9]|
+              4[36]|
+              5[02-9]|
+              6[1-46]|
+              7[028]|
+              80|
+              9[2-46-9]
+            )|
+            6(?:
+              3[1-5]|
+              6[0238]|
+              9[12]
+            )|
+            7(?:
+              01|
+              [17]\d|
+              2[248]|
+              3[04-9]|
+              4[3-6]|
+              5[0-3689]|
+              6[2368]|
+              9[02-9]
+            )|
+            8(?:
+              1[236-8]|
+              2[5-7]|
+              3\d|
+              5[1-9]|
+              7[02-9]|
+              8[3678]|
+              9[1-7]
+            )|
+            9(?:
+              0[1-3689]|
+              1[1-79]|
+              [379]\d|
+              4[13]|
+              5[1-5]
+            )
+          )\d{7}|
+          80(?:
+            29|
+            6[03578]|
+            7[018]|
+            81
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>1012345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          1(?:
+            3\d|
+            4[57]|
+            [58][0-35-9]
+          )\d{8}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{11}</possibleNumberPattern>
+        <exampleNumber>13123456789</exampleNumber>
+      </mobile>
+      <!-- Toll free, premium rate, and VoIP numbers are not clearly defined in the official Chinese
+           number plan, and do not seem to have been standardized. The information below is
+           collected from searching the web. -->
+      <!-- http://en.wikipedia.org/wiki/Toll-free_telephone_number -->
+      <tollFree>
+        <nationalNumberPattern>
+          (?:
+            10
+          )?800\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10,12}</possibleNumberPattern>
+        <exampleNumber>8001234567</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>16[08]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>16812345</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <!-- 95xxx numbers are covered by the ITU doc, but the following doc contains more info:
+             http://baike.baidu.com/view/3269670.htm -->
+        <nationalNumberPattern>
+          400\d{7}|
+          95\d{3}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5}(?:\d{5})?</possibleNumberPattern>
+        <exampleNumber>4001234567</exampleNumber>
+      </sharedCost>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            1[09]|
+            20
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>119</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Colombia -->
+    <!-- http://www.itu.int/oth/T020200002C/en -->
+    <!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_Colombia -->
+    <territory id="CO" countryCode="57" internationalPrefix="00[579]|#555|#999"
+               nationalPrefix="0" nationalPrefixForParsing="0([3579]|4(?:44|56))?">
+      <availableFormats>
+        <numberFormat pattern="(\d)(\d{7})" carrierCodeFormattingRule="$NP$CC $FG"
+          nationalPrefixFormattingRule="($FG)">
+          <leadingDigits>
+            1(?:
+              8[2-9]|
+              9[0-3]|
+              [2-7]
+            )|
+            [24-8]
+          </leadingDigits>
+          <leadingDigits>
+            1(?:
+              8[2-9]|
+              9(?:
+                09|
+                [1-3]
+              )|
+              [2-7]
+            )|
+            [24-8]
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{7})" carrierCodeFormattingRule="$NP$CC $FG">
+          <leadingDigits>3</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(1)(\d{3})(\d{7})" nationalPrefixFormattingRule="$NP$FG">
+          <leadingDigits>
+            1(?:
+              80|
+              9[04]
+            )
+          </leadingDigits>
+          <leadingDigits>
+            1(?:
+              800|
+              9(?:
+                0[01]|
+                4[78]
+              )
+            )
+          </leadingDigits>
+          <format>$1-$2-$3</format>
+          <intlFormat>$1 $2 $3</intlFormat>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          (?:
+            [13]\d{0,3}|
+            [24-8]
+          )\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,11}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>[124-8][2-9]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>12345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Virgin Mobile Colombia have reported that they are now using the 319 prefix. -->
+        <nationalNumberPattern>
+          3(?:
+            0[0-24]|
+            1\d|
+            2[01]
+          )\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>3211234567</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>1800\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{11}</possibleNumberPattern>
+        <exampleNumber>18001234567</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>
+          19(?:
+            0[01]|
+            4[78]
+          )\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{11}</possibleNumberPattern>
+        <exampleNumber>19001234567</exampleNumber>
+      </premiumRate>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            1[29]|
+            23|
+            32|
+            56
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Costa Rica -->
+    <!-- http://www.itu.int/oth/T0202000030/en -->
+    <territory id="CR" countryCode="506" internationalPrefix="00"
+               nationalPrefixForParsing="(19(?:0[0-2468]|19|20|66|77))"
+               carrierCodeFormattingRule="$CC $FG">
+      <availableFormats>
+        <numberFormat pattern="(\d{4})(\d{4})">
+          <leadingDigits>
+            [24-7]|
+            8[3-9]
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{3})(\d{4})">
+          <leadingDigits>[89]0</leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[24-9]\d{7,9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8,10}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>2[24-7]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>22123456</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          5(?:
+            0[0-4]|
+            7[01]
+          )\d{5}|
+          [67][0-2]\d{6}|
+          8[3-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>83123456</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>800\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8001234567</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <!-- Includes "mass calls" numbers with prefix 905. -->
+        <nationalNumberPattern>90[059]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9001234567</exampleNumber>
+      </premiumRate>
+      <voip>
+        <!-- Including trunking service numbers starting with 5100. -->
+        <nationalNumberPattern>
+          210[0-6]\d{4}|
+          4(?:
+            0(?:
+              [04]0\d{4}|
+              10[0-3]\d{3}|
+              2(?:
+                00\d|
+                900
+              )\d{2}|
+              3[01]\d{4}|
+              5\d{5}|
+              70[01]\d{3}
+            )|
+            1[01]\d{5}|
+            20[0-3]\d{4}|
+            400\d{4}|
+            70[0-2]\d{4}
+          )|
+          5100\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>40001234</exampleNumber>
+      </voip>
+      <shortCode>
+        <!-- This pattern excludes 4-digit SMS content numbers for now. -->
+        <nationalNumberPattern>
+          1(?:
+            0(?:
+              00|
+              15|
+              2[2-4679]
+            )|
+            1(?:
+              1[0-35-9]|
+              37|
+              [46]6|
+              7[57]|
+              8[79]|
+              9[0-379]
+            )|
+            2(?:
+              00|
+              [12]2|
+              34|
+              55
+            )|
+            333|
+            4(?:
+              00|
+              1[56]
+            )|
+            5(?:
+              15|
+              5[15]
+            )|
+            693|
+            7(?:
+              00|
+              1[789]|
+              2[02]|
+              [67]7
+            )|
+            975
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{4}</possibleNumberPattern>
+        <exampleNumber>1022</exampleNumber>
+      </shortCode>
+      <emergency>
+        <nationalNumberPattern>
+          112|
+          911
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>911</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Cuba -->
+    <!-- www.itu.int/oth/T0202000033/en -->
+    <territory id="CU" countryCode="53" internationalPrefix="119"
+               nationalPrefix="0" nationalPrefixFormattingRule="($NP$FG)">
+      <availableFormats>
+        <numberFormat pattern="(\d)(\d{6,7})">
+          <leadingDigits>7</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{4,6})">
+          <leadingDigits>[2-4]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d)(\d{7})" nationalPrefixFormattingRule="$NP$FG">
+          <leadingDigits>5</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[2-57]\d{5,7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{4,8}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          2[1-4]\d{5,6}|
+          3(?:
+            1\d{6}|
+            [23]\d{4,6}
+          )|
+          4(?:
+            [125]\d{5,6}|
+            [36]\d{6}|
+            [78]\d{4,6}
+          )|
+          7\d{6,7}
+        </nationalNumberPattern>
+        <exampleNumber>71234567</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>5\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>51234567</exampleNumber>
+      </mobile>
+      <shortCode>
+        <nationalNumberPattern>
+          1(?:
+            1(?:
+              6111|
+              8
+            )|
+            40
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3,6}</possibleNumberPattern>
+        <exampleNumber>140</exampleNumber>
+      </shortCode>
+      <emergency>
+        <nationalNumberPattern>10[456]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>106</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Cape Verde -->
+    <!-- http://www.itu.int/oth/T0202000026/en -->
+    <territory id="CV" countryCode="238" internationalPrefix="0">
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{2})(\d{2})">
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[259]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          2(?:
+            2[1-7]|
+            3[0-8]|
+            4[12]|
+            5[1256]|
+            6\d|
+            7[1-3]|
+            8[1-5]
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>2211234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- It seems, contrary to their numbering plan, the entire 9X range is used for mobile
+             phones. SMS messages has been successfully sent to numbers starting with 95 and 97 for
+             example, and there are plenty of numbers on the internet that start with these
+             prefixes. -->
+        <nationalNumberPattern>
+          (?:
+            9\d|
+            59
+          )\d{5}
+        </nationalNumberPattern>
+        <exampleNumber>9911234</exampleNumber>
+      </mobile>
+      <emergency>
+        <!-- http://www.capeverde.com/travel-tips/safety.html -->
+        <nationalNumberPattern>13[012]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>132</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Curaçao -->
+    <!-- http://www.itu.int/oth/T02020000F5/en -->
+    <territory id="CW" countryCode="599" internationalPrefix="00" mainCountryForCode="true">
+      <!-- All the formatting patterns for country-code 599 are here. -->
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{4})">
+          <leadingDigits>[13-7]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(9)(\d{3})(\d{4})">
+          <leadingDigits>9</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[169]\d{6,7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7,8}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          9(?:
+            [48]\d{2}|
+            50\d|
+            7(?:
+              2[0-2]|
+              [34]\d|
+              6[35-7]|
+              77
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>94151234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          9(?:
+            5(?:
+              [1246]\d|
+              3[01]
+            )|
+            6(?:
+              [1679]\d|
+              3[01]
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>95181234</exampleNumber>
+      </mobile>
+      <pager>
+        <nationalNumberPattern>955\d{5}</nationalNumberPattern>
+        <exampleNumber>95581234</exampleNumber>
+      </pager>
+      <sharedCost>
+        <!-- Value-added services are lumped together under shared cost, since we are not sure
+             exactly what they are. -->
+        <nationalNumberPattern>
+          (?:
+            10|
+            69
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+        <exampleNumber>1011234</exampleNumber>
+      </sharedCost>
+      <emergency>
+        <!-- http://www.rijksdienstcn.com/index.php?view=pagina&id=126&set_language=EN -->
+        <nationalNumberPattern>
+          112|
+          911
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Cyprus -->
+    <!-- http://www.itu.int/oth/T0202000034/en -->
+    <territory id="CY" countryCode="357" internationalPrefix="00">
+      <availableFormats>
+        <!-- Format from http://www.cyprusyellowpages.com/-->
+        <numberFormat pattern="(\d{2})(\d{6})">
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[257-9]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>2[2-6]\d{6}</nationalNumberPattern>
+        <exampleNumber>22345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Includes paging numbers (they are mixed into the same block). -->
+        <nationalNumberPattern>9[5-79]\d{6}</nationalNumberPattern>
+        <exampleNumber>96123456</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>800\d{5}</nationalNumberPattern>
+        <exampleNumber>80001234</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>90[09]\d{5}</nationalNumberPattern>
+        <exampleNumber>90012345</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <nationalNumberPattern>80[1-9]\d{5}</nationalNumberPattern>
+        <exampleNumber>80112345</exampleNumber>
+      </sharedCost>
+      <personalNumber>
+        <nationalNumberPattern>700\d{5}</nationalNumberPattern>
+        <exampleNumber>70012345</exampleNumber>
+      </personalNumber>
+      <uan>
+        <!-- Using for Corporate Network numbers and Universal Service numbers. -->
+        <nationalNumberPattern>
+          (?:
+            50|
+            77
+          )\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>77123456</exampleNumber>
+      </uan>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            12|
+            99
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Christmas Islands -->
+    <!-- Metadata shared with Australia. -->
+    <!-- References state Christmas Islands have fixed line numbers starting +61 8 9164. -->
+    <!-- http://en.wikipedia.org/wiki/List_of_country_calling_codes -->
+    <!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_Australia -->
+    <territory id="CX" countryCode="61" preferredInternationalPrefix="0011"
+               internationalPrefix="(?:14(?:1[14]|34|4[17]|[56]6|7[47]|88))?001[14-689]"
+               nationalPrefix="0">
+      <!-- Uses AU formatting rules. -->
+      <!-- General desc and fixed line rules different from Australia. -->
+      <generalDesc>
+        <nationalNumberPattern>[1458]\d{5,9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6,10}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>89164\d{4}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8,9}</possibleNumberPattern>
+        <exampleNumber>891641234</exampleNumber>
+      </fixedLine>
+      <!-- Mobile, toll free, premium rate, personal number and VOIP copied from Australia. -->
+      <mobile>
+        <nationalNumberPattern>
+          4(?:
+            [0-2]\d|
+            3[0-57-9]|
+            4[47-9]|
+            5[0-37-9]|
+            6[6-9]|
+            7[07-9]|
+            8[7-9]
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>412345678</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>
+          1(?:
+            80(?:
+              0\d{2}
+            )?|
+            3(?:
+              00\d{2}
+            )?
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,10}</possibleNumberPattern>
+        <exampleNumber>1800123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>190[0126]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>1900123456</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <nationalNumberPattern>500\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>500123456</exampleNumber>
+      </personalNumber>
+      <voip>
+        <nationalNumberPattern>550\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>550123456</exampleNumber>
+      </voip>
+      <emergency>
+        <!-- We assume this is the same as for Australia, since they have the same country code and
+             share their police force, and no better information can be found. -->
+        <nationalNumberPattern>
+          000|
+          112
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Czech Rep. -->
+    <!-- http://www.itu.int/oth/T0202000035/en -->
+    <!-- http://en.wikipedia.org/wiki/%2B420 -->
+    <territory id="CZ" countryCode="420" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="([2-9]\d{2})(\d{3})(\d{3})">
+          <leadingDigits>
+            [2-8]|
+            9[015-7]
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(96\d)(\d{3})(\d{3})(\d{3})">
+          <leadingDigits>96</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(9\d)(\d{3})(\d{3})(\d{3})">
+          <leadingDigits>9[36]</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [2-8]\d{8}|
+          9\d{8,11}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9,12}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          2\d{8}|
+          (?:
+            3[1257-9]|
+            4[16-9]|
+            5[13-9]
+          )\d{7}
+        </nationalNumberPattern>
+        <exampleNumber>212345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          (?:
+            60[1-8]|
+            7(?:
+              0[2-5]|
+              [2379]\d
+            )
+          )\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>601123456</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>800\d{6}</nationalNumberPattern>
+        <exampleNumber>800123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <!-- Includes premium rate dial-up. -->
+        <nationalNumberPattern>
+          9(?:
+            0[05689]|
+            76
+          )\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>900123456</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <nationalNumberPattern>8[134]\d{7}</nationalNumberPattern>
+        <exampleNumber>811234567</exampleNumber>
+      </sharedCost>
+      <personalNumber>
+        <nationalNumberPattern>70[01]\d{6}</nationalNumberPattern>
+        <exampleNumber>700123456</exampleNumber>
+      </personalNumber>
+      <voip>
+        <nationalNumberPattern>9[17]0\d{6}</nationalNumberPattern>
+        <exampleNumber>910123456</exampleNumber>
+      </voip>
+      <uan>
+        <!-- Numbers belonging to private communication networks are included here. These are
+             classified as Institutional networks, belonging to institutions like the police, armed
+             forces and railways, along with a couple of formerly government-owned banks. These
+             numbers are reachable by the public. -->
+        <nationalNumberPattern>
+          9(?:
+            5\d|
+            7[234]
+          )\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>972123456</exampleNumber>
+      </uan>
+      <voicemail>
+        <nationalNumberPattern>
+          9(?:
+            3\d{9}|
+            6\d{7,10}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9,12}</possibleNumberPattern>
+        <exampleNumber>93123456789</exampleNumber>
+      </voicemail>
+      <shortCode>
+        <nationalNumberPattern>
+          1(?:
+            1(?:
+              6\d{3}|
+              8\d
+            )|
+            2\d{2,3}|
+            3\d{3,4}|
+            4\d{3}|
+            99
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{4,6}</possibleNumberPattern>
+        <exampleNumber>116123</exampleNumber>
+      </shortCode>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            12|
+            5[058]
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Germany -->
+    <!-- http://www.itu.int/oth/T0202000051/en -->
+    <!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_germany -->
+    <territory id="DE" countryCode="49" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <!-- Mobile number formatting rules. We follow the ITU document here for guidance on how
+             these should best be formatted, even though actual usage varies. -->
+        <numberFormat pattern="(1\d{2})(\d{7,8})">
+          <leadingDigits>1[67]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(1\d{3})(\d{7})">
+          <leadingDigits>15</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{4,11})">
+          <leadingDigits>
+            3[02]|
+            40|
+            [68]9
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <!-- The order of the rules on 3-5 digits area code matter as fallback is used here. -->
+        <!-- 3 digit area codes. -->
+        <numberFormat pattern="(\d{3})(\d{3,11})">
+          <leadingDigits>
+            2(?:
+              \d1|
+              0[2389]|
+              1[24]|
+              28|
+              34
+            )|
+            3(?:
+              [3-9][15]|
+              40
+            )|
+            [4-8][1-9]1|
+            9(?:
+              06|
+              [1-9]1
+            )
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <!-- 4 digit area codes. -->
+        <numberFormat pattern="(\d{4})(\d{2,11})">
+          <leadingDigits>
+            [24-6]|
+            [7-9](?:
+              \d[1-9]|
+              [1-9]\d
+            )|
+            3(?:
+              [3569][02-46-9]|
+              4[2-4679]|
+              7[2-467]|
+              8[2-46-8]
+            )
+          </leadingDigits>
+          <leadingDigits>
+            [24-6]|
+            [7-9](?:
+              \d[1-9]|
+              [1-9]\d
+            )|
+            3(?:
+              3(?:
+                0[1-467]|
+                2[127-9]|
+                3[124578]|
+                [46][1246]|
+                7[1257-9]|
+                8[1256]|
+                9[145]
+              )|
+              4(?:
+                2[135]|
+                3[1357]|
+                4[13578]|
+                6[1246]|
+                7[1356]|
+                9[1346]
+              )|
+              5(?:
+                0[14]|
+                2[1-3589]|
+                3[1357]|
+                4[1246]|
+                6[1-4]|
+                7[1346]|
+                8[13568]|
+                9[1246]
+              )|
+              6(?:
+                0[356]|
+                2[1-489]|
+                3[124-6]|
+                4[1347]|
+                6[13]|
+                7[12579]|
+                8[1-356]|
+                9[135]
+              )|
+              7(?:
+                2[1-7]|
+                3[1357]|
+                4[145]|
+                6[1-5]|
+                7[1-4]
+              )|
+              8(?:
+                21|
+                3[1468]|
+                4[1347]|
+                6[0135-9]|
+                7[1467]|
+                8[136]
+              )|
+              9(?:
+                0[12479]|
+                2[1358]|
+                3[1357]|
+                4[134679]|
+                6[1-9]|
+                7[136]|
+                8[147]|
+                9[1468]
+              )
+            )
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <!-- 5 digit area codes. -->
+        <numberFormat pattern="(3\d{4})(\d{1,10})">
+          <leadingDigits>3</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <!-- Note: this is getting ridiculous! How can we format these better? -->
+        <numberFormat pattern="(800)(\d{7,12})">
+          <leadingDigits>800</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <!-- Voicemail access numbers for the carrier Blau. -->
+        <numberFormat pattern="(177)(99)(\d{7,8})">
+          <leadingDigits>177</leadingDigits>
+          <leadingDigits>1779</leadingDigits>
+          <leadingDigits>17799</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d)(\d{4,10})">
+          <leadingDigits>
+            (?:
+              18|
+              90
+            )0
+          </leadingDigits>
+          <leadingDigits>
+            180|
+            900[1359]
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(1\d{2})(\d{5,11})">
+          <leadingDigits>181</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <!-- Where we have seen prefixes in use for the IVPN/User Group numbers, we format it the
+             way it is generally written. For other prefixes, we fall back to using a three-digit
+             prefix since we have currently no more information to allow us to format these more
+             precisely. -->
+        <numberFormat pattern="(18\d{3})(\d{6})">
+          <leadingDigits>185</leadingDigits>
+          <leadingDigits>1850</leadingDigits>
+          <leadingDigits>18500</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(18\d{2})(\d{7})">
+          <leadingDigits>18[68]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(18\d)(\d{8})">
+          <leadingDigits>18[2-579]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(700)(\d{4})(\d{4})">
+          <leadingDigits>700</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <!-- When deciding whether to assume a leading 49 is a country code or not, the number is
+             examined to see if it is valid with the 49 as part of the number. Due to the variable
+             length of German numbers, this test is hard to do. The national pattern is hence
+             stricter for numbers starting with 49, to try and remove the country code if the number
+             begins with 49 whenever possible. -->
+        <nationalNumberPattern>
+          [1-35-9]\d{3,14}|
+          4(?:
+            [0-8]\d{4,12}|
+            9(?:
+              [0-37]\d|
+              4(?:
+                [1-35-8]|
+                4\d?
+              )|
+              5\d{1,2}|
+              6[1-8]\d?
+            )\d{2,7}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{2,15}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- The numbering plan defines rather optimistic longest-number limits - online numbers
+             don't seem to respect this. The max-length is hence extended. -->
+        <nationalNumberPattern>
+          [246]\d{5,13}|
+          3(?:
+            [03-9]\d{4,13}|
+            2\d{9}
+          )|
+          5(?:
+            0[2-8]|
+            [1256]\d|
+            [38][0-8]|
+            4\d{0,2}|
+            [79][0-7]
+          )\d{3,11}|
+          7(?:
+            0[2-8]|
+            [1-9]\d
+          )\d{3,10}|
+          8(?:
+            0[2-9]|
+            [1-9]\d
+          )\d{3,10}|
+          9(?:
+            0[6-9]\d{3,10}|
+            1\d{4,12}|
+            [2-9]\d{4,11}
+          )
+        </nationalNumberPattern>
+        <exampleNumber>30123456</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- According to
+             http://www.bundesnetzagentur.de/SharedDocs/Downloads/DE/BNetzA/Sachgebiete/Telekommunikation/Regulierung/Nummernverwaltung/Mobilfunkdienste/NummernplanMobileDienstepdf.pdf?__blob=publicationFile
+             numbers beginning with 162, 163 and 17 can all be 10 or 11 digits long.
+             -->
+        <nationalNumberPattern>
+          1(?:
+            5[0-2579]\d{8}|
+            6[023]\d{7,8}|
+            7(?:
+              [0-57-9]\d?|
+              6\d
+            )\d{7}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10,11}</possibleNumberPattern>
+        <exampleNumber>15123456789</exampleNumber>
+      </mobile>
+      <pager>
+        <nationalNumberPattern>
+          16(?:
+            4\d{1,10}|
+            [89]\d{1,11}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{4,14}</possibleNumberPattern>
+        <exampleNumber>16412345</exampleNumber>
+      </pager>
+      <tollFree>
+        <nationalNumberPattern>800\d{7,12}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10,15}</possibleNumberPattern>
+        <exampleNumber>8001234567890</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>
+          900(?:
+            [135]\d{6}|
+            9\d{7}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10,11}</possibleNumberPattern>
+        <exampleNumber>9001234567</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <nationalNumberPattern>180\d{5,11}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8,14}</possibleNumberPattern>
+        <exampleNumber>18012345</exampleNumber>
+      </sharedCost>
+      <personalNumber>
+        <nationalNumberPattern>700\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{11}</possibleNumberPattern>
+        <exampleNumber>70012345678</exampleNumber>
+      </personalNumber>
+      <uan>
+        <!-- Using UAN for numbers marked in the plan as being assigned to International Virtual
+             Private Networks (0181) & User Groups (018[2-9]). These seem in practice to be assigned
+             to companies. More information here: http://de.wikipedia.org/wiki/Vorwahl_01 -->
+        <nationalNumberPattern>
+          18(?:
+            1\d{5,11}|
+            [2-9]\d{8}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8,14}</possibleNumberPattern>
+        <exampleNumber>18500123456</exampleNumber>
+      </uan>
+      <voicemail>
+        <nationalNumberPattern>17799\d{7,8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{12,13}</possibleNumberPattern>
+        <exampleNumber>177991234567</exampleNumber>
+      </voicemail>
+      <shortCode>
+        <!-- Public Service Number for German administration. -->
+        <nationalNumberPattern>115</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>115</exampleNumber>
+      </shortCode>
+      <emergency>
+        <nationalNumberPattern>11[02]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Djibouti -->
+    <!-- http://www.itu.int/oth/T020200003A/en -->
+    <territory id="DJ" countryCode="253" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{2})(\d{2})(\d{2})(\d{2})">
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[27]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- Includes "Numéro long CDMA fixe" numbers. -->
+        <nationalNumberPattern>
+          2(?:
+            1[2-5]|
+            7[45]
+          )\d{5}
+        </nationalNumberPattern>
+        <exampleNumber>21360003</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>77[6-8]\d{5}</nationalNumberPattern>
+        <exampleNumber>77831001</exampleNumber>
+      </mobile>
+      <emergency>
+        <nationalNumberPattern>1[78]</nationalNumberPattern>
+        <possibleNumberPattern>\d{2}</possibleNumberPattern>
+        <exampleNumber>17</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Denmark -->
+    <!-- http://www.dba.erhvervsstyrelsen.dk/numbering-lists -->
+    <territory id="DK" countryCode="45" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{2})(\d{2})(\d{2})(\d{2})">
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[2-9]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+      </generalDesc>
+      <!-- Note that "mainly mobile" and "mainly fixed-line" are put under both number types to be
+           safe. -->
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            [2-7]\d|
+            8[126-9]|
+            9[126-9]
+          )\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>32123456</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          (?:
+            [2-7]\d|
+            8[126-9]|
+            9[126-9]
+          )\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>20123456</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>80\d{6}</nationalNumberPattern>
+        <exampleNumber>80123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>90\d{6}</nationalNumberPattern>
+        <exampleNumber>90123456</exampleNumber>
+      </premiumRate>
+      <emergency>
+        <nationalNumberPattern>112</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Dominica -->
+    <!-- http://www.itu.int/oth/T020200003B/en -->
+    <territory id="DM" countryCode="1" leadingDigits="767" nationalPrefix="1"
+               internationalPrefix="011">
+      <generalDesc>
+        <!-- NANPA country - uses US formatting rules -->
+        <nationalNumberPattern>[57-9]\d{9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}(?:\d{3})?</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          767(?:
+            2(?:
+              55|
+              66
+            )|
+            4(?:
+              2[01]|
+              4[0-25-9]
+            )|
+            50[0-4]
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>7674201234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Adding 61[237], 285 and 295 since online numbers have been found with this prefix. -->
+        <nationalNumberPattern>
+          767(?:
+            2(?:
+              [234689]5|
+              7[5-7]
+            )|
+            31[5-7]|
+            61[2-7]
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>7672251234</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>
+          8(?:
+            00|
+            55|
+            66|
+            77|
+            88
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8002123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>900[2-9]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9002123456</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <!-- http://www.nanpa.com/pdf/PL_416.pdf -->
+        <nationalNumberPattern>
+          5(?:
+            00|
+            33|
+            44
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5002345678</exampleNumber>
+      </personalNumber>
+      <emergency>
+        <!-- http://barbados.usembassy.gov/emergency-dominica.html -->
+        <!-- http://travel.state.gov/travel/cis_pa_tw/cis/cis_1102.html -->
+        <nationalNumberPattern>
+          333|
+          9(?:
+            11|
+            99
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>999</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Dominican Rep. -->
+    <!-- http://www.itu.int/oth/T020200003C/en -->
+    <territory id="DO" countryCode="1" leadingDigits="8[024]9" nationalPrefix="1"
+               internationalPrefix="011">
+      <generalDesc>
+        <!-- NANPA country - uses US formatting rules -->
+        <nationalNumberPattern>[589]\d{9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}(?:\d{3})?</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- The ITU data seems to be somewhat incomplete. We ensure that the fully-specified mobile
+             prefixes in the document are classified as such by excluding them from the fixed-line
+             ranges, but other than this have a generic rule. -->
+        <nationalNumberPattern>
+          8(?:
+            [04]9[2-9]\d{6}|
+            29(?:
+              2(?:
+                [0-59]\d|
+                6[04-9]|
+                7[0-27]|
+                8[0237-9]
+              )|
+              3(?:
+                [0-35-9]\d|
+                4[7-9]
+              )|
+              [45]\d{2}|
+              6(?:
+                [0-27-9]\d|
+                [3-5][1-9]|
+                6[0135-8]
+              )|
+              7(?:
+                0[013-9]|
+                [1-37]\d|
+                4[1-35689]|
+                5[1-4689]|
+                6[1-57-9]|
+                8[1-79]|
+                9[1-8]
+              )|
+              8(?:
+                0[146-9]|
+                1[0-48]|
+                [248]\d|
+                3[1-79]|
+                5[01589]|
+                6[013-68]|
+                7[124-8]|
+                9[0-8]
+              )|
+              9(?:
+                [0-24]\d|
+                3[02-46-9]|
+                5[0-79]|
+                60|
+                7[0169]|
+                8[57-9]|
+                9[02-9]
+              )
+            )\d{4}
+          )
+        </nationalNumberPattern>
+        <exampleNumber>8092345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>8[024]9[2-9]\d{6}</nationalNumberPattern>
+        <exampleNumber>8092345678</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>
+          8(?:
+            00|
+            55|
+            66|
+            77|
+            88
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8002123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>900[2-9]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9002123456</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <!-- http://www.nanpa.com/pdf/PL_416.pdf -->
+        <nationalNumberPattern>
+          5(?:
+            00|
+            33|
+            44
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5002345678</exampleNumber>
+      </personalNumber>
+      <emergency>
+        <nationalNumberPattern>
+          112|
+          911
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>911</exampleNumber>
+      </emergency>
+   </territory>
+
+    <!-- Algeria -->
+    <!-- http://www.itu.int/oth/T0202000003/en -->
+    <!-- www.arpt.dz -->
+    <territory id="DZ" countryCode="213" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <!-- Formatting from www.pagesjaunes-dz.com. -->
+        <numberFormat pattern="([1-4]\d)(\d{2})(\d{2})(\d{2})">
+          <leadingDigits>[1-4]</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="([5-8]\d{2})(\d{2})(\d{2})(\d{2})">
+          <leadingDigits>[5-8]</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(9\d)(\d{3})(\d{2})(\d{2})">
+          <leadingDigits>9</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          (?:
+            [1-4]|
+            [5-9]\d
+          )\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8,9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- We include the VSAT lines here. -->
+        <nationalNumberPattern>
+          (?:
+            1\d|
+            2[014-79]|
+            3[0-8]|
+            4[0135689]
+          )\d{6}|
+          9619\d{5}
+        </nationalNumberPattern>
+        <exampleNumber>12345678</exampleNumber>
+      </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.-->
+        <nationalNumberPattern>
+          (?:
+            5[4-6]|
+            7[7-9]
+          )\d{7}|
+          6(?:
+            [569]\d|
+            70
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>551234567</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>800\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>800123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>80[3-689]1\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>808123456</exampleNumber>
+      </premiumRate>
+      <!-- The Algerian plan doesn't specify where the costs start to be considered "premium", so we
+           draw an arbitrary line here and say that from 50 Da up they will be considered premium.
+           -->
+      <sharedCost>
+        <nationalNumberPattern>80[12]1\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>801123456</exampleNumber>
+      </sharedCost>
+      <voip>
+        <nationalNumberPattern>98[23]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>983123456</exampleNumber>
+      </voip>
+      <emergency>
+        <nationalNumberPattern>1[47]</nationalNumberPattern>
+        <possibleNumberPattern>\d{2}</possibleNumberPattern>
+        <exampleNumber>17</exampleNumber>
+      </emergency>
+   </territory>
+
+    <!-- Ecuador -->
+    <!-- http://en.wikipedia.org/wiki/+593 -->
+    <!-- http://www.conatel.gob.ec/site_conatel/index.php?option=com_content&view=category&layout=blog&id=52&Itemid=153
+         -->
+    <!-- http://www.itu.int/oth/T020200003D/en -->
+    <territory id="EC" countryCode="593" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="($NP$FG)">
+      <availableFormats>
+        <numberFormat pattern="(\d)(\d{3})(\d{4})">
+          <leadingDigits>
+            [247]|
+            [356][2-8]
+          </leadingDigits>
+          <format>$1 $2-$3</format>
+          <intlFormat>$1-$2-$3</intlFormat>
+        </numberFormat>
+        <!-- Formatting for the new longer mobile numbers comes from the advertisements about the
+             change on the www.conatel.gob.ec site. -->
+        <numberFormat pattern="(\d{2})(\d{3})(\d{4})" nationalPrefixFormattingRule="$NP$FG">
+          <leadingDigits>9</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(1800)(\d{3})(\d{3,4})" nationalPrefixFormattingRule="$FG">
+          <leadingDigits>1</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          1\d{9,10}|
+          [2-8]\d{7}|
+          9\d{8}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,11}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>[2-7][2-7]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7,8}</possibleNumberPattern>
+        <exampleNumber>22123456</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          9(?:
+            39|
+            [4-6][89]|
+            7[7-9]|
+            [89]\d
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>991234567</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>1800\d{6,7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10,11}</possibleNumberPattern>
+        <exampleNumber>18001234567</exampleNumber>
+      </tollFree>
+      <voip>
+        <nationalNumberPattern>[2-7]890\d{4}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>28901234</exampleNumber>
+      </voip>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            0[12]|
+            12
+          )|
+          911
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>911</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Estonia -->
+    <!-- http://www.itu.int/oth/T0202000043/en -->
+    <!-- http://www.tja.ee/public/Legislation_side/Numbering_/Estonian_NP_eng.htm -->
+    <territory id="EE" countryCode="372" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="([3-79]\d{2})(\d{4})">
+          <leadingDigits>
+            [369]|
+            4[3-8]|
+            5(?:
+              [0-2]|
+              5[0-478]|
+              6[45]
+            )|
+            7[1-9]
+          </leadingDigits>
+          <leadingDigits>
+            [369]|
+            4[3-8]|
+            5(?:
+              [02]|
+              1(?:
+                [0-8]|
+                95
+              )|
+              5[0-478]|
+              6(?:
+                4[0-4]|
+                5[1-589]
+              )
+            )|
+            7[1-9]
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(70)(\d{2})(\d{4})">
+          <leadingDigits>70</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(8000)(\d{3})(\d{3})">
+          <leadingDigits>800</leadingDigits>
+          <leadingDigits>8000</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="([458]\d{3})(\d{3,4})">
+          <leadingDigits>
+            40|
+            5|
+            8(?:
+              00|
+              [1-5]
+            )
+          </leadingDigits>
+          <leadingDigits>
+            40|
+            5|
+            8(?:
+              00[1-9]|
+              [1-5]
+            )
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          1\d{3,4}|
+          [3-9]\d{6,7}|
+          800\d{6,7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{4,10}</possibleNumberPattern>
+      </generalDesc>
+      <noInternationalDialling>
+        <nationalNumberPattern>
+          1\d{3,4}|
+          800[2-9]\d{3}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{4,7}</possibleNumberPattern>
+        <exampleNumber>8002123</exampleNumber>
+      </noInternationalDialling>
+      <fixedLine>
+        <!-- Supporting eFax numbers here as well. -->
+        <nationalNumberPattern>
+          (?:
+            3[23589]|
+            4(?:
+              0\d|
+              [3-8]
+            )|
+            6\d|
+            7[1-9]|
+            88
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,8}</possibleNumberPattern>
+        <exampleNumber>3212345</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- 7 digit mobile numbers currently in use with special prefixes are preserved - new
+             numbers are 8 digits. -->
+        <nationalNumberPattern>
+          (?:
+            5\d|
+            8[1-5]
+          )\d{6}|
+          5(?:
+            [02]\d{2}|
+            1(?:
+              [0-8]\d|
+              95
+            )|
+            5[0-478]\d|
+            64[0-4]|
+            65[1-589]
+          )\d{3}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,8}</possibleNumberPattern>
+        <exampleNumber>51234567</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>
+          800(?:
+            0\d{3}|
+            1\d|
+            [2-9]
+          )\d{3}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,10}</possibleNumberPattern>
+        <exampleNumber>80012345</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>900\d{4}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+        <exampleNumber>9001234</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <nationalNumberPattern>70[0-2]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>70012345</exampleNumber>
+      </personalNumber>
+      <uan>
+        <!-- All 4-5 digit numbers listed in the plan as being a "short number for a service" are
+             included here. -->
+        <nationalNumberPattern>
+          1(?:
+            2[01245]|
+            3[0-6]|
+            4[1-489]|
+            5[0-59]|
+            6[1-46-9]|
+            7[0-27-9]|
+            8[189]|
+            9[012]
+          )\d{1,2}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{4,5}</possibleNumberPattern>
+        <exampleNumber>12123</exampleNumber>
+      </uan>
+      <shortCode>
+        <nationalNumberPattern>
+          1(?:
+            1[13-9]|
+            [2-9]\d
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>116</exampleNumber>
+      </shortCode>
+      <emergency>
+        <nationalNumberPattern>11[02]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Egypt -->
+    <!-- http://www.itu.int/oth/T020200003E/en -->
+    <territory id="EG" countryCode="20" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+       <availableFormats>
+         <!-- Note that no explicit formatting rule is here for 5-digit numbers starting with a 16
+              or 19. These are formatted without national prefix, as a block, so do not need to be
+              listed here. -->
+         <numberFormat pattern="(\d)(\d{7,8})">
+           <leadingDigits>[23]</leadingDigits>
+           <format>$1 $2</format>
+         </numberFormat>
+         <numberFormat pattern="(\d{3})(\d{3})(\d{4})">
+           <leadingDigits>
+             1[012]|
+             [89]00
+           </leadingDigits>
+           <format>$1 $2 $3</format>
+         </numberFormat>
+         <numberFormat pattern="(\d{2})(\d{6,7})">
+           <leadingDigits>
+             1(?:
+               3|
+               5[23]
+             )|
+             [4-6]|
+             [89][2-9]
+           </leadingDigits>
+           <format>$1 $2</format>
+         </numberFormat>
+       </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          1\d{4,9}|
+          [2456]\d{8}|
+          3\d{7}|
+          [89]\d{8,9}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,10}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- Short numbers used for businesses (starting with 16 or 19) are covered here. Note also
+             that the plan says numbers starting with 15 should be followed by seven digit
+             subscriber numbers, but all numbers we have found online are in fact six digit.
+             Subscriber numbers starting with 5 are also permitted for the area codes 040, with 5, 6
+             and 7 for the area code 050, with 5 and 7 for 082, with 6 for 084, with 7 for 086 and
+             092 and with 5 and 6 for 96. -->
+        <nationalNumberPattern>
+          (?:
+            1(
+              3[23]\d|
+              5[23]
+            )|
+            2[2-4]\d{2}|
+            3\d{2}|
+            4(?:
+              0[2-5]|
+              [578][23]|
+              64
+            )\d|
+            5(?:
+              0[2-7]|
+              [57][23]
+            )\d|
+            6[24-689]3\d|
+            8(?:
+              2[2-57]|
+              4[26]|
+              6[237]|
+              8[2-4]
+            )\d|
+            9(?:
+              2[27]|
+              3[24]|
+              52|
+              6[2356]|
+              7[2-4]
+            )\d
+          )\d{5}|
+          1[69]\d{3}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,9}</possibleNumberPattern>
+        <exampleNumber>234567890</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Adding the extra prefixes 102 and 121 from user reports that Vodafone and Mobinil have
+             started allocating numbers beginning with these prefixes, along with 115 from numbers
+             found online. -->
+        <nationalNumberPattern>
+          1(?:
+            0[01269]|
+            1[1245]|
+            2[0-278]
+          )\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>1001234567</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>800\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8001234567</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>900\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9001234567</exampleNumber>
+      </premiumRate>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            2[23]|
+            80
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>122</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Western Sahara -->
+    <!-- Country calling code shared with Morocco (MA). -->
+    <!-- Two area codes are defined in the Morocco ITU document; 05288 XXXXX and 05289 XXXXX -->
+    <!-- http://www.itu.int/oth/T0202000090/en -->
+    <territory id="EH" countryCode="212" leadingDigits="528[89]" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <!-- Uses MA formatting rules and shares general description
+           (non-geographical numbers for Morocco are still valid). -->
+      <generalDesc>
+        <nationalNumberPattern>[5689]\d{8}</nationalNumberPattern>
+        <!-- Closed numbering plan. -->
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>528[89]\d{5}</nationalNumberPattern>
+        <exampleNumber>528812345</exampleNumber>
+      </fixedLine>
+      <!-- The following sections are copied verbatim from Morocco to allow these non-geographical
+           numbers to be recognized as available from within Western Sahara. -->
+      <mobile>
+        <!-- Prefixes 60[1-578], 62[0147-9], 63[04-8] and 68[01] are from numbers found online,
+             bug-reports, and information provided directly by the carriers. -->
+        <nationalNumberPattern>
+          6(?:
+            0[0-8]|
+            [14-7]\d|
+            2[0-46-9]|
+            3[03-8]|
+            8[01]|
+            99
+          )\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>650123456</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>80\d{7}</nationalNumberPattern>
+        <exampleNumber>801234567</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>89\d{7}</nationalNumberPattern>
+        <exampleNumber>891234567</exampleNumber>
+      </premiumRate>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            [59]|
+            77
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{2,3}</possibleNumberPattern>
+        <exampleNumber>15</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Eritrea -->
+    <!-- http://www.itu.int/oth/T0202000042/en -->
+    <territory id="ER" countryCode="291" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat pattern="(\d)(\d{3})(\d{3})">
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[178]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6,7}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          1(?:
+            1[12568]|
+            20|
+            40|
+            55|
+            6[146]
+          )\d{4}|
+          8\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>8370362</exampleNumber><!-- Test number from plan. -->
+      </fixedLine>
+      <mobile>
+        <!-- It is unclear in the plan whether the 07 mobile prefix superseded the previous 017[1-3]
+             numbers or was in addition to them, so we support both here. -->
+        <nationalNumberPattern>
+          17[1-3]\d{4}|
+          7\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+        <exampleNumber>7123456</exampleNumber>
+      </mobile>
+      <!-- No emergency numbers information can be found. -->
+    </territory>
+
+    <!-- Spain -->
+    <!-- http://www.mityc.es/telecomunicaciones/es-ES/Servicios/Numeracion/Paginas/Plan.aspx -->
+    <territory id="ES" countryCode="34" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="([5-9]\d{2})(\d{2})(\d{2})(\d{2})">
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[5-9]\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+      </generalDesc>
+      <!-- The pattern is complex because the Lleida Networks mobile ranges are inside the
+           fixed-line ranges. -->
+      <fixedLine>
+        <nationalNumberPattern>
+          8(?:
+            [13]0|
+            [28][0-8]|
+            [47][1-9]|
+            5[01346-9]|
+            6[0457-9]
+          )\d{6}|
+          9(?:
+            [1238][0-8]\d{6}|
+            4[1-9]\d{6}|
+            5\d{7}|
+            6(?:
+              [0-8]\d{6}|
+              9(?:
+                0(?:
+                  [0-57-9]\d{4}|
+                  6(?:
+                    0[0-8]|
+                    1[1-9]|
+                    [2-9]\d
+                  )\d{2}
+                )|
+                [1-9]\d{5}
+              )
+            )|
+            7(?:
+              [124-9]\d{2}|
+              3(?:
+                [0-8]\d|
+                9[1-9]
+              )
+            )\d{4}
+          )
+        </nationalNumberPattern>
+        <exampleNumber>810123456</exampleNumber>
+      </fixedLine>
+      <!-- The ranges 969060900 to 969061099 and 973900000 to 973909999 are mobile according to
+           information received from Lleida Networks. -->
+      <mobile>
+        <nationalNumberPattern>
+          (?:
+            6\d{6}|
+            7[1-4]\d{5}|
+            9(?:
+              6906(?:
+                09|
+                10
+              )|
+              7390\d{2}
+            )
+          )\d{2}
+        </nationalNumberPattern>
+        <exampleNumber>612345678</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>[89]00\d{6}</nationalNumberPattern>
+        <exampleNumber>800123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>80[367]\d{6}</nationalNumberPattern>
+        <exampleNumber>803123456</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <nationalNumberPattern>90[12]\d{6}</nationalNumberPattern>
+        <exampleNumber>901123456</exampleNumber>
+      </sharedCost>
+      <personalNumber>
+        <nationalNumberPattern>70\d{7}</nationalNumberPattern>
+        <exampleNumber>701234567</exampleNumber>
+      </personalNumber>
+      <!-- Modelling non-geographic nomadic numbers as UAN. -->
+      <uan>
+        <nationalNumberPattern>51\d{7}</nationalNumberPattern>
+        <exampleNumber>511234567</exampleNumber>
+      </uan>
+      <emergency>
+        <!-- We include the Civil Guard here since it seems to perform similar duties as the police
+             force. -->
+        <nationalNumberPattern>
+          0(?:
+            [69][12]|
+            8[05]
+          )|
+          112
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Ethiopia -->
+    <!-- http://www.itu.int/oth/T0202000044/en -->
+    <territory id="ET" countryCode="251" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat pattern="([1-59]\d)(\d{3})(\d{4})">
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[1-59]\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7,9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            11(?:
+              1(?:
+                1[124]|
+                2[2-57]|
+                3[1-5]|
+                5[5-8]|
+                8[6-8]
+              )|
+              2(?:
+                13|
+                3[6-8]|
+                5[89]|
+                7[05-9]|
+                8[2-6]
+              )|
+              3(?:
+                2[01]|
+                3[0-289]|
+                4[1289]|
+                7[1-4]|
+                87
+              )|
+              4(?:
+                1[69]|
+                3[2-49]|
+                4[0-3]|
+                6[5-8]
+              )|
+              5(?:
+                1[57]|
+                44|
+                5[0-4]
+              )|
+              6(?:
+                18|
+                2[69]|
+                4[5-7]|
+                5[1-5]|
+                6[0-59]|
+                8[015-8]
+              )
+            )|
+            2(?:
+              2(?:
+                11[1-9]|
+                22[0-7]|
+                33\d|
+                44[1467]|
+                66[1-68]
+              )|
+              5(?:
+                11[124-6]|
+                33[2-8]|
+                44[1467]|
+                55[14]|
+                66[1-3679]|
+                77[124-79]|
+                880
+              )
+            )|
+            3(?:
+              3(?:
+                11[0-46-8]|
+                22[0-6]|
+                33[0134689]|
+                44[04]|
+                55[0-6]|
+                66[01467]
+              )|
+              4(?:
+                44[0-8]|
+                55[0-69]|
+                66[0-3]|
+                77[1-5]
+              )
+            )|
+            4(?:
+              6(?:
+                22[0-24-7]|
+                33[1-5]|
+                44[13-69]|
+                55[14-689]|
+                660|
+                88[1-4]
+              )|
+              7(?:
+                11[1-9]|
+                22[1-9]|
+                33[13-7]|
+                44[13-6]|
+                55[1-689]
+              )
+            )|
+            5(?:
+              7(?:
+                227|
+                55[05]|
+                (?:
+                  66|
+                  77
+                )[14-8]
+              )|
+              8(?:
+                11[149]|
+                22[013-79]|
+                33[0-68]|
+                44[013-8]|
+                550|
+                66[1-5]|
+                77\d
+              )
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>111112345</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- The data here is not regularly updated by the Ethiopian authorities, and many more
+             numbers are visible online than are reported in the ITU document. This pattern is
+             therefore somewhat more relaxed than in the ITU document. According to the ETC, the
+             prefix 93 is assigned to Addis Ababa Mobile and 95[89] to some CDMA providers. -->
+        <nationalNumberPattern>
+          9(?:
+            [1-3]\d|
+            5[89]
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>911234567</exampleNumber>
+      </mobile>
+      <emergency>
+        <!-- http://www.addisculturetourism.gov.et/en/component/k2/itemlist/category/64.html?layout=category -->
+        <!-- http://www.netglobers.com/africa/ethiopia-emergency-numbers-in-ethiopia-.html -->
+        <!-- http://www.addisababacity.gov.et/index.php?option=com_content&view=article&id=139&Itemid=136 -->
+        <!-- http://studentsabroad.state.gov/content/pdfs/911_ABROAD.pdf -->
+        <!-- The 91, 92, and 93 numbers are for the city of Addis Ababa. -->
+        <nationalNumberPattern>
+          9(?:
+            11?|
+            [23]|
+            9[17]
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{2,3}</possibleNumberPattern>
+        <exampleNumber>991</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Finland -->
+    <!-- Metadata shared with Åland (AX) -->
+    <!-- http://www.ficora.fi/en/index/palvelut/palvelutaiheittain/numerointi/numerotyypitjaalueet.html -->
+    <territory id="FI" countryCode="358" internationalPrefix="00|99[049]" nationalPrefix="0"
+               nationalPrefixFormattingRule="$NP$FG" mainCountryForCode="true">
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{3,7})">
+          <leadingDigits>
+            (?:
+              [1-3]00|
+              [6-8]0
+            )
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{4,10})">
+          <leadingDigits>
+            2[09]|
+            [14]|
+            50|
+            7[135]
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d)(\d{4,11})">
+          <leadingDigits>
+            [25689][1-8]|
+            3
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          1\d{4,11}|
+          [2-9]\d{4,10}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,12}</possibleNumberPattern>
+      </generalDesc>
+      <noInternationalDialling>
+        <!-- According to the national numbering plan, service numbers are in general not accessible
+             from abroad, although 600/700/800 numbers may be. -->
+        <nationalNumberPattern>
+          [13]00\d{3,7}|
+          2(?:
+            0(?:
+              0\d{3,7}|
+              2[023]\d{1,6}|
+              9[89]\d{1,6}
+            )
+          )|
+          60(?:
+            [12]\d{5,6}|
+            6\d{7}
+          )|
+          7(?:
+            1\d{7}|
+            3\d{8}|
+            5[03-9]\d{2,7}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,10}</possibleNumberPattern>
+        <exampleNumber>100123</exampleNumber>
+      </noInternationalDialling>
+      <fixedLine>
+        <!-- This is limited to geographic numbers - non-geographic nationwide subscriber numbers
+             are listed under UAN. It also excludes Åland numbers. -->
+        <nationalNumberPattern>
+          1(?:
+            [3569][1-8]\d{3,9}|
+            [47]\d{5,10}
+          )|
+          2[1-8]\d{3,9}|
+          3(?:
+            [1-8]\d{3,9}|
+            9\d{4,8}
+          )|
+          [5689][1-8]\d{3,9}
+        </nationalNumberPattern>
+        <exampleNumber>1312345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          4\d{5,10}|
+          50\d{4,8}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,11}</possibleNumberPattern>
+        <exampleNumber>412345678</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>800\d{4,7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7,10}</possibleNumberPattern>
+        <exampleNumber>8001234567</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>[67]00\d{5,6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8,9}</possibleNumberPattern>
+        <exampleNumber>600123456</exampleNumber>
+      </premiumRate>
+      <uan>
+        <!-- Covers nationwide non-geographic numbers, and nationwide "service numbers", typically
+             assigned to institutions such as universities, the national post, etc, where they are
+             not otherwise classified as toll-free or premium-rate numbers. -->
+        <nationalNumberPattern>
+          [13]0\d{4,8}|
+          2(?:
+            0(?:
+              [016-8]\d{3,7}|
+              [2-59]\d{2,7}
+            )|
+            9\d{4,8}
+          )|
+          60(?:
+            [12]\d{5,6}|
+            6\d{7}
+          )|
+          7(?:
+            1\d{7}|
+            3\d{8}|
+            5[03-9]\d{2,7}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,10}</possibleNumberPattern>
+        <exampleNumber>10112345</exampleNumber>
+      </uan>
+      <emergency>
+        <nationalNumberPattern>112</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Fiji -->
+    <!-- http://www.itu.int/oth/T0202000048/en -->
+    <!-- www.tfl.com.fj -->
+    <territory id="FJ" countryCode="679" internationalPrefix="0(?:0|52)"
+               preferredInternationalPrefix="00" leadingZeroPossible="true">
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{4})">
+          <leadingDigits>[36-9]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{4})(\d{3})(\d{4})">
+          <leadingDigits>0</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [36-9]\d{6}|
+          0\d{10}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7}(?:\d{4})?</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- Adding the prefixes 30X, 31X and 62X, since numbers with these prefixes have been found
+             online, including in the white pages. 35X and 85X were found in the exchanges listed on
+             www.tfl.com.fj. -->
+        <nationalNumberPattern>
+          (?:
+            3[0-5]|
+            6[25-7]|
+            8[58]
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+        <exampleNumber>3212345</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Adding 7[67], 8[367], and 9[034678] from numbers found online and numbers where SMSs
+             have been received from. Adding 9[15] and 84 from Vodafone Fiji IR21. -->
+        <nationalNumberPattern>
+          (?:
+            7[0-467]|
+            8[3467]|
+            9\d
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+        <exampleNumber>7012345</exampleNumber>
+      </mobile>
+      <tollFree>
+        <!-- Information found on www.tfl.com.fj. It is not clear if these are internationally
+             diallable, or if so, how. -->
+        <nationalNumberPattern>0800\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{11}</possibleNumberPattern>
+        <exampleNumber>08001234567</exampleNumber>
+      </tollFree>
+      <shortCode>
+        <!-- From the Emergency Numbers page on the Telecom Fiji website. -->
+        <nationalNumberPattern>
+          0(?:
+           04|
+           1[34]|
+           8[1-4]
+          )|
+          1(?:
+            0[1-3]|
+            [25]9
+          )|
+          2[289]|
+          30|
+          [45]4|
+          75|
+          913
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{2,3}</possibleNumberPattern>
+        <exampleNumber>22</exampleNumber>
+      </shortCode>
+      <emergency>
+        <nationalNumberPattern>91[17]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>911</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Falkland Islands (Malvinas) -->
+    <!-- http://www.itu.int/oth/T0202000046/en -->
+    <territory id="FK" countryCode="500" internationalPrefix="00">
+      <!-- All numbers are formatted together, as a block. -->
+      <generalDesc>
+        <nationalNumberPattern>[2-7]\d{4}</nationalNumberPattern>
+        <possibleNumberPattern>\d{5}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>[2-47]\d{4}</nationalNumberPattern>
+        <exampleNumber>31234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>[56]\d{4}</nationalNumberPattern>
+        <exampleNumber>51234</exampleNumber>
+      </mobile>
+      <shortCode>
+        <!-- Service numbers use 3 digit short codes -->
+        <nationalNumberPattern>1\d{2}</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>123</exampleNumber>
+      </shortCode>
+      <emergency>
+        <!-- http://studentsabroad.state.gov/content/pdfs/911_ABROAD.pdf -->
+        <nationalNumberPattern>999</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>999</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Micronesia, Federated States of -->
+    <!-- http://www.itu.int/oth/T020200008B/en -->
+    <territory id="FM" countryCode="691" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{4})">
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[39]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+            3[2357]0[1-9]\d{3}|
+            9[2-6]\d{5}
+        </nationalNumberPattern>
+        <exampleNumber>3201234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Note that most ranges are used for both fixed and mobile but numbers starting with 970
+             are exclusively mobile. -->
+        <nationalNumberPattern>
+          3[2357]0[1-9]\d{3}|
+          9[2-7]\d{5}
+        </nationalNumberPattern>
+        <exampleNumber>3501234</exampleNumber>
+      </mobile>
+      <emergency>
+        <!-- http://travel.state.gov/travel/cis_pa_tw/cis/cis_971.html -->
+        <nationalNumberPattern>
+          911|
+          320221
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}(?:\d{3})?</possibleNumberPattern>
+        <exampleNumber>911</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Faroe Islands -->
+    <!-- http://www.itu.int/oth/T0202000047/en -->
+    <territory id="FO" countryCode="298" internationalPrefix="00"
+               nationalPrefixForParsing="(10(?:01|[12]0|88))"
+               carrierCodeFormattingRule="$CC $FG">
+      <!-- All numbers are formatted together, as a block. -->
+      <availableFormats>
+        <numberFormat pattern="(\d{6})">
+          <format>$1</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[2-9]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            20|
+            [3-4]\d|
+            8[19]
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>201234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          (?:
+            2[1-9]|
+            5\d|
+            7[1-79]
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>211234</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>80[257-9]\d{3}</nationalNumberPattern>
+        <exampleNumber>802123</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>
+          90(?:
+            [1345][15-7]|
+            2[125-7]|
+            99
+            )\d{2}
+        </nationalNumberPattern>
+        <exampleNumber>901123</exampleNumber>
+      </premiumRate>
+      <voip>
+        <nationalNumberPattern>
+          (?:
+            6[0-36]|
+            88
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>601234</exampleNumber>
+      </voip>
+      <shortCode>
+        <!-- Includes special numbers, special services and universal services.  -->
+        <nationalNumberPattern>
+          1(?:
+            1[48]|
+            4[124]\d|
+            71\d|
+            8[7-9]\d
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3,4}</possibleNumberPattern>
+        <exampleNumber>114</exampleNumber>
+      </shortCode>
+      <emergency>
+        <nationalNumberPattern>112</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- France -->
+    <!-- http://www.itu.int/oth/T020200004A/en -->
+    <!-- http://www.arcep.fr/index.php?id=8146 -->
+    <!-- http://en.wikipedia.org/wiki/%2B33 -->
+    <territory id="FR" countryCode="33" internationalPrefix="[04579]0"
+               preferredInternationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <!-- 4-digit premium-rate numbers will be formatted as a block without a national prefix. -->
+      <availableFormats>
+        <numberFormat pattern="([1-79])(\d{2})(\d{2})(\d{2})(\d{2})">
+          <leadingDigits>[1-79]</leadingDigits>
+          <format>$1 $2 $3 $4 $5</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$NP $FG"
+          pattern="(8\d{2})(\d{2})(\d{2})(\d{2})">
+          <leadingDigits>8</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [124-9]\d{8}|
+          3\d{3}(?:\d{5})?
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{4}(?:\d{5})?</possibleNumberPattern>
+      </generalDesc>
+      <noInternationalDialling>
+        <nationalNumberPattern>3\d{3}</nationalNumberPattern>
+        <possibleNumberPattern>\d{4}</possibleNumberPattern>
+        <exampleNumber>3123</exampleNumber>
+      </noInternationalDialling>
+      <fixedLine>
+        <nationalNumberPattern>[1-5]\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>123456789</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          6\d{8}|
+          7[5-9]\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>612345678</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>80\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>801234567</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <!-- We are putting 4-digit premium-rate numbers here for now, since they are used by
+             agencies such as CPAM and the national unemployment agency. -->
+        <nationalNumberPattern>
+          3\d{3}|
+          89[1-37-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{4}(?:\d{5})?</possibleNumberPattern>
+        <exampleNumber>891123456</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <nationalNumberPattern>
+          8(?:
+            1[019]|
+            2[0156]|
+            84|
+            90
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>810123456</exampleNumber>
+      </sharedCost>
+      <voip>
+        <!-- 087 numbers used to be used for this. -->
+        <nationalNumberPattern>9\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>912345678</exampleNumber>
+      </voip>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            [578]|
+            12
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{2,3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Gabon -->
+    <!-- http://www.itu.int/oth/T020200004E/en -->
+    <territory id="GA" countryCode="241" internationalPrefix="00" leadingZeroPossible="true"
+               nationalPrefix="0">
+      <availableFormats>
+        <numberFormat pattern="(1)(\d{2})(\d{2})(\d{2})" nationalPrefixFormattingRule="$NP$FG">
+          <leadingDigits>1</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(0\d)(\d{2})(\d{2})(\d{2})">
+          <leadingDigits>0</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[01]\d{6,7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7,8}</possibleNumberPattern>
+      </generalDesc>
+      <!-- A 7-digit fixed-line plan was scheduled to be implemented on June 17, 2012 to unify fixed
+           line and mobile numbering. However the change to remove the leading '0' from mobile NDCs
+           has not gone through. This is now scheduled to happen on October 28, 2012. -->
+      <fixedLine>
+        <nationalNumberPattern>1\d{6}</nationalNumberPattern>
+        <exampleNumber>1441234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>0[2-7]\d{6}</nationalNumberPattern>
+        <exampleNumber>06031234</exampleNumber>
+      </mobile>
+      <emergency>
+        <nationalNumberPattern>
+          1730|
+          18|
+          13\d{2}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{2,4}</possibleNumberPattern>
+        <exampleNumber>1730</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- United Kingdom -->
+    <!-- http://stakeholders.ofcom.org.uk/telecoms/numbering/ -->
+    <!-- http://en.wikipedia.org/wiki/List_of_United_Kingdom_dialling_codes -->
+    <!-- http://www.numberingplans.com/?page=dialling&sub=areacodes&ac=GB -->
+    <!-- Note that this excludes Isle of Man, Jersey and Guernsey prefixes for the purposes of
+         validation, although the formatting rules are shared. -->
+    <territory id="GB" countryCode="44" internationalPrefix="00"
+               nationalPrefix="0" preferredExtnPrefix=" x" nationalPrefixFormattingRule="$NP$FG"
+               mainCountryForCode="true">
+      <availableFormats>
+        <!-- 2d, 55, 56, 70 and 76 pager numbers (excludes 7624) with 10 digits. -->
+        <numberFormat pattern="(\d{2})(\d{4})(\d{4})">
+          <leadingDigits>
+            2|
+            5[56]|
+            7(?:
+              0|
+              6[013-9]
+            )
+          </leadingDigits>
+          <leadingDigits>
+            2|
+            5[56]|
+            7(?:
+              0|
+              6(?:
+                [013-9]|
+                2[0-35-9]
+              )
+            )
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <!-- 11d, 1d1, 3dd, 9dd with 10 digits. -->
+        <numberFormat pattern="(\d{3})(\d{3})(\d{4})">
+          <leadingDigits>
+            1(?:
+              1|
+              \d1
+            )|
+            3|
+            9[018]
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <!-- 1dddd with 9 or 10 digits.
+             These area codes are very rare in GB, and are only available in the following places:
+             13873(Langholm), 15242(Hornby), 15394(Hawkshead), 15395(Grange-over-Sands),
+             15396(Sedbergh), 16973(Wigton), 16974(Raughton Head), 16977(Brampton),
+             17683(Appleby), 17684(Pooley Bridge), 17687(Keswick), 19467(Gosforth). -->
+        <numberFormat pattern="(\d{5})(\d{4,5})">
+          <leadingDigits>
+            1(?:
+              38|
+              5[23]|
+              69|
+              76|
+              94
+            )
+          </leadingDigits>
+          <leadingDigits>
+            1(?:
+              387|
+              5(?:
+                24|
+                39
+              )|
+              697|
+              768|
+              946
+            )
+          </leadingDigits>
+          <leadingDigits>
+            1(?:
+              3873|
+              5(?:
+                242|
+                39[456]
+              )|
+              697[347]|
+              768[347]|
+              9467
+            )
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <!-- 1ddd with 9 or 10 digits. -->
+        <numberFormat pattern="(1\d{3})(\d{5,6})">
+          <leadingDigits>1</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <!-- 7ddd (not 70, 76) with 10 digits. Note: DOES include 7624 when used for IM. -->
+        <numberFormat pattern="(7\d{3})(\d{6})">
+          <leadingDigits>
+            7(?:
+              [1-5789]|
+              62
+            )
+          </leadingDigits>
+          <leadingDigits>
+            7(?:
+              [1-5789]|
+              624
+            )
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <!-- 800 1111 : UK ChildLine. -->
+        <numberFormat pattern="(800)(\d{4})">
+          <leadingDigits>800</leadingDigits>
+          <leadingDigits>8001</leadingDigits>
+          <leadingDigits>80011</leadingDigits>
+          <leadingDigits>800111</leadingDigits>
+          <leadingDigits>8001111</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <!-- 845 46 47 : UK NHS Direct. -->
+        <numberFormat pattern="(845)(46)(4\d)">
+          <leadingDigits>845</leadingDigits>
+          <leadingDigits>8454</leadingDigits>
+          <leadingDigits>84546</leadingDigits>
+          <leadingDigits>845464</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <!-- 84d, 87d with 10 digits. -->
+        <numberFormat pattern="(8\d{2})(\d{3})(\d{4})">
+          <leadingDigits>
+            8(?:
+              4[2-5]|
+              7[0-3]
+            )
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <!-- 80d (including 800) with 10 digits. -->
+        <numberFormat pattern="(80\d)(\d{3})(\d{4})">
+          <leadingDigits>80</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <!-- 500, 800 with 9 digits. -->
+        <numberFormat pattern="([58]00)(\d{6})">
+          <leadingDigits>[58]00</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>\d{7,10}</nationalNumberPattern>
+        <possibleNumberPattern>\d{4,10}</possibleNumberPattern>
+      </generalDesc>
+      <areaCodeOptional>
+        <!-- These are a subset of the fixed-line rules, with digits 2-9 as the leading digit of the
+             subscriber number. There are patterns for 2+8, 3+7 and a combined pattern for all
+             4+6/4+5 and 5+5/5+4 numbers. Note that numbers matching this pattern are not
+             necessarily valid numbers. -->
+        <nationalNumberPattern>
+          2\d[2-9]\d{7}|
+          1(?:
+            1\d|
+            \d1
+          )[2-9]\d{6}|
+          1(?:
+            [248][02-9]\d[2-9]\d{4,5}|
+            (?:
+              3(?:
+                [02-79]\d|
+                8[0-69]
+              )|
+              5(?:
+                [04-9]\d|
+                2[0-35-9]|
+                3[0-8]
+              )|
+              6(?:
+                [02-8]\d|
+                9[0-689]
+              )|
+              7(?:
+                [02-5789]\d|
+                6[0-79]
+              )|
+              9(?:
+                [0235-9]\d|
+                4[0-5789]
+              )
+            )[2-9]\d{4,5}|
+            (?:
+              387(?:
+                3[2-9]|
+                [24-9]\d
+              )|
+              5(?:
+                24(?:
+                  2[2-9]|
+                  [3-9]\d
+                )|
+                39(?:
+                  [4-6][2-9]|
+                  [237-9]\d
+                )
+              )|
+              697(?:
+                [347][2-9]|
+                [25689]\d
+              )|
+              768(?:
+                [347][2-9]|
+                [25679]\d
+              )|
+              946(?:
+                7[2-9]|
+                [2-689]\d
+              )
+            )\d{3,4}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9,10}</possibleNumberPattern>
+        <exampleNumber>1332456789</exampleNumber>
+      </areaCodeOptional>
+      <fixedLine>
+        <!-- http://en.wikipedia.org/wiki/List_of_United_Kingdom_dialling_codes -->
+        <!-- Pattern matches geographic NSN=10 numbers as follows:
+             - area code and local number first digit for 2+8,
+             - area code and local number first digit for 3+7,
+             - area code only for 4+6 (including areas with embedded 5+5).
+             Pattern matches geographic NSN=9 numbers as follows:
+             - area code and local number first two digits for 4+5,
+             - area code and local number first three digits for 4+5 special case (01768) 88Ddd,
+             - area code and local number first digit for 5+4 special case (016977) Dddd.
+             All patterns exclude ranges used in GG, IM, JE. -->
+        <nationalNumberPattern>
+          2(?:
+            0[01378]|
+            3[0189]|
+            4[017]|
+            8[0-46-9]|
+            9[012]
+          )\d{7}|
+          1(?:
+            (?:
+              1(?:
+                3[0-48]|
+                [46][0-4]|
+                5[012789]|
+                7[0-49]|
+                8[01349]
+              )|
+              21[0-7]|
+              31[0-8]|
+              [459]1\d|
+              61[0-46-9]
+            )
+          )\d{6}|
+          1(?:
+            2(?:
+              0[024-9]|
+              2[3-9]|
+              3[3-79]|
+              4[1-689]|
+              [58][02-9]|
+              6[0-4789]|
+              7[013-9]|
+              9\d
+            )|
+            3(?:
+              0\d|
+              [25][02-9]|
+              3[02-579]|
+              [468][0-46-9]|
+              7[1235679]|
+              9[24578]
+            )|
+            4(?:
+              0[03-9]|
+              [28][02-5789]|
+              [37]\d|
+              4[02-69]|
+              5[0-8]|
+              [69][0-79]
+            )|
+            5(?:
+              0[1235-9]|
+              2[024-9]|
+              3[015689]|
+              4[02-9]|
+              5[03-9]|
+              6\d|
+              7[0-35-9]|
+              8[0-468]|
+              9[0-5789]
+            )|
+            6(?:
+              0[034689]|
+              2[0-35689]|
+              [38][013-9]|
+              4[1-467]|
+              5[0-69]|
+              6[13-9]|
+              7[0-8]|
+              9[0124578]
+            )|
+            7(?:
+              0[0246-9]|
+              2\d|
+              3[023678]|
+              4[03-9]|
+              5[0-46-9]|
+              6[013-9]|
+              7[0-35-9]|
+              8[024-9]|
+              9[02-9]
+            )|
+            8(?:
+              0[35-9]|
+              2[1-5789]|
+              3[02-578]|
+              4[0-578]|
+              5[124-9]|
+              6[2-69]|
+              7\d|
+              8[02-9]|
+              9[02569]
+            )|
+            9(?:
+              0[02-589]|
+              2[02-689]|
+              3[1-5789]|
+              4[2-9]|
+              5[0-579]|
+              6[234789]|
+              7[0124578]|
+              8\d|
+              9[2-57]
+            )
+          )\d{6}|
+          1(?:
+            2(?:
+              0(?:
+                46[1-4]|
+                87[2-9]
+              )|
+              545[1-79]|
+              76(?:
+                2\d|
+                3[1-8]|
+                6[1-6]
+              )|
+              9(?:
+                7(?:
+                  2[0-4]|
+                  3[2-5]
+                )|
+                8(?:
+                  2[2-8]|
+                  7[0-4789]|
+                  8[345]
+                )
+              )
+            )|
+            3(?:
+              638[2-5]|
+              647[23]|
+              8(?:
+                47[04-9]|
+                64[015789]
+              )
+            )|
+            4(?:
+              044[1-7]|
+              20(?:
+                2[23]|
+                8\d
+              )|
+              6(?:
+                0(?:
+                  30|
+                  5[2-57]|
+                  6[1-8]|
+                  7[2-8]
+                )|
+                140
+              )|
+              8(?:
+                052|
+                87[123]
+              )
+            )|
+            5(?:
+              24(?:
+                3[2-79]|
+                6\d
+              )|
+              276\d|
+              6(?:
+                26[06-9]|
+                686
+              )
+            )|
+            6(?:
+              06(?:
+                4\d|
+                7[4-79]
+              )|
+              295[567]|
+              35[34]\d|
+              47(?:
+                24|
+                61
+              )|
+              59(?:
+                5[08]|
+                6[67]|
+                74
+              )|
+              955[0-4]
+            )|
+            7(?:
+              26(?:
+                6[13-9]|
+                7[0-7]
+              )|
+              442\d|
+              50(?:
+                2[0-3]|
+                [3-68]2|
+                76
+              )
+            )|
+            8(?:
+              27[56]\d|
+              37(?:
+                5[2-5]|
+                8[239]
+              )|
+              84(?:
+                3[2-58]
+              )
+            )|
+            9(?:
+              0(?:
+                0(?:
+                  6[1-8]|
+                  85
+                )|
+                52\d
+              )|
+              3583|
+              4(?:
+                66[1-8]|
+                9(?:
+                  2[01]|
+                  81
+                )
+              )|
+              63(?:
+                23|
+                3[1-4]
+              )|
+              9561
+            )
+          )\d{3}|
+          176888[234678]\d{2}|
+          16977[23]\d{3}
+        </nationalNumberPattern>
+        <exampleNumber>1212345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- http://stakeholders.ofcom.org.uk/telecoms/numbering/telephone-no-availability/numbers-administered/
+             7100-7599, 7700-7999 with 10 digits; excluding ranges used in GG, IM, JE. -->
+        <nationalNumberPattern>
+          7(?:
+            [1-4]\d\d|
+            5(?:
+              0[0-8]|
+              [13-9]\d|
+              2[0-35-9]
+            )|
+            7(?:
+              0[1-9]|
+              [1-7]\d|
+              8[02-9]|
+              9[0-689]
+            )|
+            8(?:
+              [014-9]\d|
+              [23][0-8]
+            )|
+            9(?:
+              [04-9]\d|
+              1[02-9]|
+              2[0-35-9]|
+              3[0-689]
+            )
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>7400123456</exampleNumber>
+      </mobile>
+      <pager>
+        <!-- 76 with 10 digits; excluding ranges used in IM. -->
+        <nationalNumberPattern>
+          76(?:
+            0[012]|
+            2[356]|
+            4[0134]|
+            5[49]|
+            6[0-369]|
+            77|
+            81|
+            9[39]
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>7640123456</exampleNumber>
+      </pager>
+      <!-- Source for non geographic numbers:
+           http://en.wikipedia.org/wiki/Non-geographic_telephone_numbers_in_the_United_Kingdom -->
+      <tollFree>
+        <!-- 800 1111 with 7 digits, 800 with 9 or 10 digits, 808 with 10 digits, 500 with 9 digits.
+             -->
+        <nationalNumberPattern>
+          80(?:
+            0(?:
+              1111|
+              \d{6,7}
+            )|
+            8\d{7}
+          )|
+          500\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7}(?:\d{2,3})?</possibleNumberPattern>
+        <exampleNumber>8001234567</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <!-- 871, 872, 873 with 10 digits are now Controlled Premium Rate Services, so are listed
+             here as well as 900-909, 910-919, 982-984, 989 with 10 digits.
+             Note that only 908, 909, 980-989 are reserved for "adult services" while 900-907 and
+             910-919 are reserved for standard premium rate services. -->
+        <nationalNumberPattern>
+          (?:
+            87[123]|
+            9(?:
+              [01]\d|
+              8[2349]
+            )
+          )\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9012345678</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <!-- Using shared cost to deal with the various revenue sharing number prefixes in the
+             United Kingdom: 845 46 47 with 7 digits, 842-845, 870 with 10 digits. -->
+        <nationalNumberPattern>
+          8(?:
+            4(?:
+              5464\d|
+              [2-5]\d{7}
+            )|
+            70\d{7}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7}(?:\d{3})?</possibleNumberPattern>
+        <exampleNumber>8431234567</exampleNumber>
+      </sharedCost>
+      <personalNumber>
+        <!-- 70 with 10 digits. -->
+        <nationalNumberPattern>70\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>7012345678</exampleNumber>
+      </personalNumber>
+      <voip>
+        <!-- 56 with 10 digits. -->
+        <nationalNumberPattern>56\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5612345678</exampleNumber>
+      </voip>
+      <uan>
+        <!-- 30d, 33d, 34d, 37d, 55 with 10 digits. -->
+        <nationalNumberPattern>
+          (?:
+            3[0347]|
+            55
+          )\d{8}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5512345678</exampleNumber>
+      </uan>
+      <shortCode>
+        <!-- This is a list of the ones that can be called. -->
+        <nationalNumberPattern>
+          1(?:
+            0[01]|
+            1(?:
+              1|
+              [68]\d{3}
+            )|
+            2[123]|
+            33|
+            4(?:
+              1|
+              7\d
+            )|
+            5\d|
+            70\d|
+            800\d|
+            9[15]
+          )|
+          2(?:
+            02|
+            2(?:
+              02|
+              11|
+              2
+            )|
+            3(?:
+              02|
+              45
+            )|
+            425
+          )|
+          3[13]3|
+          4(?:
+            0[02]|
+            35[01]|
+            44[45]|
+            5\d
+          )|
+          650|
+          789|
+          901
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3,6}</possibleNumberPattern>
+        <exampleNumber>150</exampleNumber>
+      </shortCode>
+      <emergency>
+        <nationalNumberPattern>
+          112|
+          999
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Grenada -->
+    <!-- http://www.itu.int/oth/T0202000057/en -->
+    <territory id="GD" countryCode="1" leadingDigits="473" nationalPrefix="1"
+               internationalPrefix="011">
+      <generalDesc>
+        <!-- NANPA country - uses US formatting rules -->
+        <nationalNumberPattern>[4589]\d{9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}(?:\d{3})?</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          473(?:
+            2(?:
+              3[0-2]|
+              69
+            )|
+            3(?:
+              2[89]|
+              86
+            )|
+            4(?:
+              [06]8|
+              3[5-9]|
+              4[0-49]|
+              5[5-79]|
+              68|
+              73|
+              90
+            )|
+            63[68]|
+            7(?:
+              58|
+              84
+            )|
+            938
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>4732691234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          473(?:
+            4(?:
+              0[3-79]|
+              1[04-9]|
+              20|
+              58
+            )|
+            53[3-8]
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>4734031234</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>
+          8(?:
+            00|
+            55|
+            66|
+            77|
+            88
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8002123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>900[2-9]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9002123456</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <!-- http://www.nanpa.com/pdf/PL_416.pdf -->
+        <nationalNumberPattern>
+          5(?:
+            00|
+            33|
+            44
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5002345678</exampleNumber>
+      </personalNumber>
+      <emergency>
+        <!-- http://barbados.usembassy.gov/emergency-grenada.html -->
+        <nationalNumberPattern>911</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>911</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Georgia -->
+    <!-- http://www.itu.int/oth/T0202000050/en -->
+    <!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_Georgia. -->
+    <territory id="GE" countryCode="995" preferredInternationalPrefix="8~10"
+               internationalPrefix="810" nationalPrefix="8">
+      <availableFormats>
+        <!-- Format isn't very strictly defined - the yellow pages omits area code and does 2 2 2,
+             the communications commission uses 2 3 3. Wikipedia says 3 2 3. Some use 2 6. -->
+        <numberFormat pattern="(\d{3})(\d{2})(\d{2})(\d{2})" nationalPrefixFormattingRule="$NP $FG">
+          <leadingDigits>[348]</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{2})(\d{2})(\d{2})" nationalPrefixFormattingRule="$FG">
+          <leadingDigits>5</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[3458]\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6,9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            3(?:
+              [256]\d|
+              4[124-9]|
+              7[0-4]
+            )|
+            4(?:
+              1\d|
+              2[2-7]|
+              3[1-79]|
+              4[2-8]|
+              7[239]|
+              9[1-7]
+            )
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,9}</possibleNumberPattern>
+        <exampleNumber>322123456</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- The ITU document says 790 instead of 590, but this contradicts their press release
+             about the change in numbers, and online numbers found. -->
+        <nationalNumberPattern>
+          5(?:
+            14|
+            5[01578]|
+            68|
+            7[0147-9]|
+            9[0-35-9]
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>555123456</exampleNumber>
+      </mobile>
+      <!-- Information from www.yell.ge, examples such as Wissol Petroleum Georgia hotline. -->
+      <tollFree>
+        <nationalNumberPattern>800\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>800123456</exampleNumber>
+      </tollFree>
+      <!-- It seems there may be special 6 digit numbers beginning with 91, but we are not sure, so
+           these are omitted for now. -->
+      <emergency>
+        <!-- According to Wikipedia, 011, 022 and 033 will be replaced by 111, 122, 113 and 114 in
+             2011. We are not sure if that has happened, so we support both versions for now. -->
+        <nationalNumberPattern>
+          0(?:
+            11|
+            22|
+            33
+          )|
+          1(?:
+            1[123]|
+            22
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- French Guiana (French Dept. of) -->
+    <!-- http://www.itu.int/oth/T020200004C/en -->
+    <!-- http://www.arcep.fr/index.php?id=2137&bloc=0594&CMD=RESULTS_NUMEROTATION -->
+    <!-- http://www.arcep.fr/uploads/tx_gsavis/11-1297.pdf -->
+    <!-- Using a national prefix here as online numbers are formatted with it.  -->
+    <territory id="GF" countryCode="594" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{2})(\d{2})(\d{2})">
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[56]\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          594(?:
+            10|
+            2[012457-9]|
+            3[0-57-9]|
+            4[3-9]|
+            5[7-9]|
+            6[0-3]|
+            9[014]
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>594101234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          694(?:
+            [04][0-7]|
+            1[0-5]|
+            3[018]|
+            [29]\d
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>694201234</exampleNumber>
+      </mobile>
+      <!-- The 876 prefix is mentioned in the plan, but the plan is from 2006 and in France VOIP
+           numbers were changed from 087 to the 09 prefix in 2009. It is likely this occurred here
+           too. -->
+      <emergency>
+        <nationalNumberPattern>1[578]</nationalNumberPattern>
+        <possibleNumberPattern>\d{2}</possibleNumberPattern>
+        <exampleNumber>15</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Guernsey -->
+    <!-- Inherits formatting rules from the UK. -->
+    <!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_the_United_Kingdom -->
+    <territory id="GG" countryCode="44" internationalPrefix="00"
+               nationalPrefix="0" preferredExtnPrefix=" x" nationalPrefixFormattingRule="$NP$FG">
+      <generalDesc>
+        <nationalNumberPattern>[135789]\d{6,9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6,10}</possibleNumberPattern>
+      </generalDesc>
+      <areaCodeOptional>
+        <nationalNumberPattern>1481[2-9]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>1481250123</exampleNumber>
+      </areaCodeOptional>
+      <!-- Specific to GG. -->
+      <fixedLine>
+        <!-- 1481 with 10 digits. -->
+        <nationalNumberPattern>1481\d{6}</nationalNumberPattern>
+        <exampleNumber>1481456789</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- 7781, 7839, 7911 with 10 digits. -->
+        <nationalNumberPattern>
+          7(?:
+            781|
+            839|
+            911
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>7781123456</exampleNumber>
+      </mobile>
+      <!-- Other numbers as per GB. -->
+      <pager>
+        <nationalNumberPattern>
+          76(?:
+            0[012]|
+            2[356]|
+            4[0134]|
+            5[49]|
+            6[0-369]|
+            77|
+            81|
+            9[39]
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>7640123456</exampleNumber>
+      </pager>
+      <tollFree>
+        <nationalNumberPattern>
+          80(?:
+            0(?:
+              1111|
+              \d{6,7}
+            )|
+            8\d{7}
+          )|
+          500\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7}(?:\d{2,3})?</possibleNumberPattern>
+        <exampleNumber>8001234567</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>
+          (?:
+            87[123]|
+            9(?:
+              [01]\d|
+              8[0-3]
+            )
+          )\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9012345678</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <nationalNumberPattern>
+          8(?:
+            4(?:
+              5464\d|
+              [2-5]\d{7}
+            )|
+            70\d{7}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7}(?:\d{3})?</possibleNumberPattern>
+        <exampleNumber>8431234567</exampleNumber>
+      </sharedCost>
+      <personalNumber>
+        <nationalNumberPattern>70\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>7012345678</exampleNumber>
+      </personalNumber>
+      <voip>
+        <nationalNumberPattern>56\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5612345678</exampleNumber>
+      </voip>
+      <uan>
+        <nationalNumberPattern>
+          (?:
+            3[0347]|
+            55
+          )\d{8}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5512345678</exampleNumber>
+      </uan>
+      <shortCode>
+        <!-- Taken from numbers listed explicitly as Public Telephone Network Numbers in
+             http://stakeholders.ofcom.org.uk/binaries/telecoms/numbering/numplan201210.pdf -->
+        <nationalNumberPattern>
+          1(?:
+            0[01]|
+            1(?:
+              1|
+              [68]\d{3}
+            )|
+            23|
+            4(?:
+              1|
+              7\d
+            )|
+            55|
+            800\d|
+            95
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3,6}</possibleNumberPattern>
+        <exampleNumber>155</exampleNumber>
+      </shortCode>
+      <emergency>
+        <!-- http://en.wikipedia.org/wiki/Guernsey#Emergency_services -->
+        <nationalNumberPattern>
+          112|
+          999
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>999</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Ghana -->
+    <!-- http://www.itu.int/oth/T0202000052/en -->
+    <!-- http://www.nca.org.gh/index.php?option=com_content&view=article&id=90&Itemid=65 -->
+    <territory id="GH" countryCode="233" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{4})">
+          <leadingDigits>[235]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{5})">
+          <leadingDigits>8</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [235]\d{8}|
+          8\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,9}</possibleNumberPattern>
+      </generalDesc>
+      <noInternationalDialling>
+        <nationalNumberPattern>800\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>80012345</exampleNumber>
+      </noInternationalDialling>
+      <fixedLine>
+        <nationalNumberPattern>
+          3(?:
+            0[237]\d|
+            [167](?:
+              2[0-6]|
+              7\d
+            )|
+            2(?:
+              2[0-5]|
+              7\d
+            )|
+            3(?:
+              2[0-3]|
+              7\d
+            )|
+            4(?:
+              2[013-9]|
+              3[01]|
+              7\d
+            )|
+            5(?:
+              2[0-7]|
+              7\d
+            )|
+            8(?:
+              2[0-2]|
+              7\d
+            )|
+            9(?:
+              20|
+              7\d
+            )
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,9}</possibleNumberPattern>
+        <exampleNumber>302345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          (?:
+            2[034678]|
+            5[047]
+          )\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>231234567</exampleNumber>
+      </mobile>
+      <tollFree>
+        <!-- Found online references to these numbers, although they are not in the plan since they
+             are not internationally diallable. -->
+        <nationalNumberPattern>800\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>80012345</exampleNumber>
+      </tollFree>
+      <!-- No premiumRate information can be found. -->
+      <emergency>
+        <nationalNumberPattern>
+          19[123]|
+          999
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>999</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Gibraltar -->
+    <territory id="GI" countryCode="350" internationalPrefix="00">
+      <!-- No formatting rules - numbers are always formatted as a block. -->
+      <generalDesc>
+        <nationalNumberPattern>[2568]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          2(?:
+            00\d|
+            16[0-7]|
+            22[2457]
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>20012345</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          (?:
+            5[4-8]|
+            60
+          )\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>57123456</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>80\d{6}</nationalNumberPattern>
+        <exampleNumber>80123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>8[1-689]\d{6}</nationalNumberPattern>
+        <exampleNumber>88123456</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <nationalNumberPattern>87\d{6}</nationalNumberPattern>
+        <exampleNumber>87123456</exampleNumber>
+      </sharedCost>
+      <shortCode>
+        <nationalNumberPattern>
+          1(?:
+            00|
+            1(?:
+              6(?:
+                00[06]|
+                11[17]
+              )|
+              8\d{2}
+            )|
+            23|
+            4(?:
+              1|
+              7[014]
+            )|
+            5[015]|
+            9[34]
+          )|
+          8(?:
+            00|
+            4[0-2]|
+            8\d
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3,6}</possibleNumberPattern>
+        <exampleNumber>116123</exampleNumber>
+      </shortCode>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            12|
+            9[09]
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Greenland -->
+    <!-- http://www.itu.int/oth/T0202000056/en -->
+    <territory id="GL" countryCode="299" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{2})(\d{2})(\d{2})">
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[1-689]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- Including VSAT numbers here. -->
+        <nationalNumberPattern>
+          (?:
+            19|
+            3[1-6]|
+            6[14689]|
+            8[14-79]|
+            9\d
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>321000</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>[245][2-9]\d{4}</nationalNumberPattern>
+        <exampleNumber>221234</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>80\d{4}</nationalNumberPattern>
+        <exampleNumber>801234</exampleNumber>
+      </tollFree>
+      <voip>
+        <nationalNumberPattern>3[89]\d{4}</nationalNumberPattern>
+        <exampleNumber>381234</exampleNumber>
+      </voip>
+      <emergency>
+        <nationalNumberPattern>112</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Gambia -->
+    <!-- http://www.itu.int/oth/T020200004F/en -->
+    <territory id="GM" countryCode="220" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{4})">
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[2-9]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            4(?:
+              [23]\d{2}|
+              4(?:
+                1[024679]|
+                [6-9]\d
+              )
+            )|
+            5(?:
+              54[0-7]|
+              6(?:
+                [67]\d
+              )|
+              7(?:
+                1[04]|
+                2[035]|
+                3[58]|
+                48
+              )
+            )|
+            8\d{3}
+          )\d{3}
+        </nationalNumberPattern>
+        <exampleNumber>5661234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          (?:
+            2[0-2]|
+            [3679]\d
+          )\d{5}
+        </nationalNumberPattern>
+        <exampleNumber>3012345</exampleNumber>
+      </mobile>
+      <emergency>
+        <!-- http://travel.state.gov/travel/cis_pa_tw/cis/cis_1121.html -->
+        <!-- http://www.netglobers.com/africa/gambia-emergency-numbers-in-the-gambia.html -->
+        <nationalNumberPattern>1?1[678]</nationalNumberPattern>
+        <possibleNumberPattern>\d{2,3}</possibleNumberPattern>
+        <exampleNumber>117</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Guinea -->
+    <!-- http://www.itu.int/oth/T020200005B/en -->
+    <territory id="GN" countryCode="224" internationalPrefix="00">
+      <!-- We have two formatting patterns here since the 8 digit case is more normal and we want
+           that to be preferred for the AYTF. -->
+      <availableFormats>
+        <numberFormat pattern="(\d{2})(\d{2})(\d{2})(\d{2})">
+          <leadingDigits>[23567]</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{2})(\d{2})(\d{2})">
+          <leadingDigits>6[02356]</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[23567]\d{7,8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8,9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          30(?:
+            24|
+            3[12]|
+            4[1-35-7]|
+            5[13]|
+            6[189]|
+            [78]1|
+            9[1478]
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>30241234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- WiMAX is in the plan - which is a wireless broadband protocol. Not including this in
+             the metadata for now unless this proves to be necessary. These would start with 79.
+             61[0-5] is assigned to Orange. Also includes the new 9-digit mobile numbers that are
+             coming into effect on March 29, 2013. -->
+        <nationalNumberPattern>
+          (?:
+            24|
+            55
+          )\d{6}|
+          6(?:
+            0(?:
+              2[0-35-9]|
+              3[3467]|
+              5[2457-9]
+            )|
+            1[0-5]\d|
+            2\d{2}|
+            [4-9]\d{2}|
+            3(?:
+              [14]0|
+              35
+            )
+          )\d{4}|
+          6(?:
+            [03]1|
+            2[128]|
+            5[57]|
+            6[2469]
+          )\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>60201234</exampleNumber>
+      </mobile>
+      <voip>
+        <nationalNumberPattern>78\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>78123456</exampleNumber>
+      </voip>
+      <!-- No national emergency numbers were located for Guinea. -->
+    </territory>
+
+    <!-- Guadeloupe -->
+    <!-- http://www.itu.int/oth/T0202000058/en -->
+    <!-- http://www.arcep.fr/index.php?id=interactivenumeros - ZABPQ-ZNE.xls -->
+    <territory id="GP" countryCode="590" internationalPrefix="00"
+               mainCountryForCode="true" nationalPrefix="0"
+               nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat pattern="([56]90)(\d{2})(\d{4})">
+          <format>$1 $2-$3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[56]\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          590(?:
+            0[13468]|
+            1[012]|
+            2[0-68]|
+            3[28]|
+            4[0-8]|
+            5[579]|
+            6[0189]|
+            70|
+            8[0-689]|
+            9\d
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>590201234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Any ranges assigned from
+             http://www.arcep.fr/index.php?id=interactivenumeros have been listed as belonging to
+             Guadeloupe, St Martin and St Barthélemy, since we can't reliably distinguish between
+             them. -->
+        <nationalNumberPattern>
+          690(?:
+            0[0-7]|
+            [1-9]\d
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>690301234</exampleNumber>
+      </mobile>
+      <!-- http://www.guadeloupe.franceantilles.fr/pratique/urgences/numeros-urgence-guadeloupe-14950.php -->
+      <emergency>
+        <nationalNumberPattern>1[578]</nationalNumberPattern>
+        <possibleNumberPattern>\d{2}</possibleNumberPattern>
+        <exampleNumber>18</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Equatorial Guinea -->
+    <!-- http://www.itu.int/oth/T0202000041/en -->
+    <territory id="GQ" countryCode="240" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{3})(\d{3})">
+          <leadingDigits>[235]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{6})">
+          <leadingDigits>[89]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[23589]\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          3(?:
+            3(?:
+              3\d[7-9]|
+              [0-24-9]\d[46]
+            )|
+            5\d{2}[7-9]
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>333091234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          (?:
+            222|
+            551
+          )\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>222123456</exampleNumber>
+      </mobile>
+      <!-- Note that personal and sharedCost numbers are said to go under here too - hopefully when
+           they start allocating them there will be a differentiation of prefixes, but this is not
+           clear now. -->
+      <tollFree>
+        <nationalNumberPattern>80\d[1-9]\d{5}</nationalNumberPattern>
+        <exampleNumber>800123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>90\d[1-9]\d{5}</nationalNumberPattern>
+        <exampleNumber>900123456</exampleNumber>
+      </premiumRate>
+      <!-- No national emergency numbers were located for Equatorial Guinea. -->
+    </territory>
+
+    <!-- Greece -->
+    <!-- http://www.itu.int/oth/T0202000055/en -->
+    <!-- http://en.wikipedia.org/wiki/%2B30 -->
+    <territory id="GR" countryCode="30" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="([27]\d)(\d{4})(\d{4})">
+          <leadingDigits>
+            21|
+            7
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{3})(\d{4})">
+          <leadingDigits>
+            2[2-9]1|
+            [689]
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(2\d{3})(\d{6})">
+          <leadingDigits>2[2-9][02-9]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[26-9]\d{9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          2(?:
+            1\d{2}|
+            2(?:
+              3[1-8]|
+              4[1-7]|
+              5[1-4]|
+              6[1-8]|
+              7[1-5]|
+              [289][1-9]
+            )|
+            3(?:
+              1\d|
+              2[1-57]|
+              3[1-4]|
+              [45][1-3]|
+              7[1-7]|
+              8[1-6]|
+              9[1-79]
+            )|
+            4(?:
+              1\d|
+              2[1-8]|
+              3[1-4]|
+              4[13-5]|
+              6[1-578]|
+              9[1-5]
+            )|
+            5(?:
+              1\d|
+              [239][1-4]|
+              4[124]|
+              5[1-6]
+            )|
+            6(?:
+              1\d|
+              3[124]|
+              4[1-7]|
+              5[13-9]|
+              [269][1-6]|
+              7[14]|
+              8[1-5]
+            )|
+            7(?:
+              1\d|
+              2[1-5]|
+              3[1-6]|
+              4[1-7]|
+              5[1-57]|
+              6[134]|
+              9[15-7]
+            )|
+            8(?:
+              1\d|
+              2[1-5]|
+              [34][1-4]|
+              9[1-7]
+            )
+          )\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>2123456789</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>69\d{8}</nationalNumberPattern>
+        <exampleNumber>6912345678</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>800\d{7}</nationalNumberPattern>
+        <exampleNumber>8001234567</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>90[19]\d{7}</nationalNumberPattern>
+        <exampleNumber>9091234567</exampleNumber>
+      </premiumRate>
+      <!-- Including calls with maximum charge of 0,25 EUR/minute here instead of under premium
+           rate. -->
+      <sharedCost>
+        <nationalNumberPattern>
+          8(?:
+            0[16]|
+            12|
+            25
+          )\d{7}
+        </nationalNumberPattern>
+        <exampleNumber>8011234567</exampleNumber>
+      </sharedCost>
+      <personalNumber>
+        <nationalNumberPattern>70\d{8}</nationalNumberPattern>
+        <exampleNumber>7012345678</exampleNumber>
+      </personalNumber>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            00|
+            12|
+            66|
+            99
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Guatemala -->
+    <!-- http://www.itu.int/oth/T020200005A/en -->
+    <!-- http://www.sit.gob.gt/index.php?page=plan-de-numeracion -->
+    <!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_Guatemala -->
+    <territory id="GT" countryCode="502" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{4})(\d{4})">
+          <leadingDigits>[2-7]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{4})(\d{3})(\d{4})">
+          <leadingDigits>1</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [2-7]\d{7}|
+          1[89]\d{9}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8}(?:\d{3})?</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>[267][2-9]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>22456789</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Wikipedia claims numbers with 3 are also mobile although in ITU document it says that
+             they are just reserved. -->
+        <nationalNumberPattern>[345]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>51234567</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>18[01]\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{11}</possibleNumberPattern>
+        <exampleNumber>18001112222</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>19\d{9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{11}</possibleNumberPattern>
+        <exampleNumber>19001112222</exampleNumber>
+      </premiumRate>
+      <shortCode>
+        <nationalNumberPattern>
+          1(?:
+            2[124-9]|
+            [57]\d{2}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3,4}</possibleNumberPattern>
+        <exampleNumber>123</exampleNumber>
+      </shortCode>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            10|
+            2[03]
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>110</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Guam -->
+    <!-- http://www.nationalnanpa.com/nas/public/assigned_code_query_step1.do?method=resetCodeQueryModel -->
+    <territory id="GU" countryCode="1" leadingDigits="671" nationalPrefix="1"
+               internationalPrefix="011">
+      <generalDesc>
+        <!-- NANPA country - uses US formatting rules -->
+        <nationalNumberPattern>[5689]\d{9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}(?:\d{3})?</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- Added 671 555/720/721 based on information from
+             http://www.area-codes.com/area-code/area-code-671.asp -->
+        <nationalNumberPattern>
+          671(?:
+            3(?:
+              00|
+              3[39]|
+              4[349]|
+              55|
+              6[26]
+            )|
+            4(?:
+              56|
+              7[1-9]|
+              8[23678]
+            )|
+            5(?:
+              55|
+              6[2-5]|
+              88
+            )|
+            6(?:
+              3[2-578]|
+              4[24-9]|
+              5[34]|
+              78|
+              8[5-9]
+            )|
+            7(?:
+              [079]7|
+              2[0167]|
+              3[45]|
+              8[789]
+            )|
+            8(?:
+              [2-5789]8|
+              6[48]
+            )|
+            9(?:
+              2[29]|
+              6[79]|
+              7[179]|
+              8[789]|
+              9[78]
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>6713001234</exampleNumber>
+      </fixedLine>
+      <!-- We assume mobile phone numbers to be the same as fixed-line - further info unavailable
+           -->
+      <mobile>
+        <nationalNumberPattern>
+          671(?:
+            3(?:
+              00|
+              3[39]|
+              4[349]|
+              55|
+              6[26]
+            )|
+            4(?:
+              56|
+              7[1-9]|
+              8[23678]
+            )|
+            5(?:
+              55|
+              6[2-5]|
+              88
+            )|
+            6(?:
+              3[2-578]|
+              4[24-9]|
+              5[34]|
+              78|
+              8[5-9]
+            )|
+            7(?:
+              [079]7|
+              2[0167]|
+              3[45]|
+              8[789]
+            )|
+            8(?:
+              [2-5789]8|
+              6[48]
+            )|
+            9(?:
+              2[29]|
+              6[79]|
+              7[179]|
+              8[789]|
+              9[78]
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>6713001234</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>
+          8(?:
+            00|
+            55|
+            66|
+            77|
+            88
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8002123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>900[2-9]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9002123456</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <!-- http://www.nanpa.com/pdf/PL_416.pdf -->
+        <nationalNumberPattern>
+          5(?:
+            00|
+            33|
+            44
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5002345678</exampleNumber>
+      </personalNumber>
+      <emergency>
+        <!-- http://www.justice.gov.gu/compileroflaws/gca/10gca/10gc084.PDF -->
+        <nationalNumberPattern>911</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>911</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Guinea-Bissau -->
+    <!-- http://www.itu.int/oth/T020200005C/en -->
+    <territory id="GW" countryCode="245" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{4})">
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[3567]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          3(?:
+            2[0125]|
+            3[1245]|
+            4[12]|
+            5[1-4]|
+            70|
+            9[1-467]
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>3201234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>[5-7]\d{6}</nationalNumberPattern>
+        <exampleNumber>5012345</exampleNumber>
+      </mobile>
+      <emergency>
+        <!-- https://www.osac.gov/pages/ContentReportDetails.aspx?cid=10970 -->
+        <nationalNumberPattern>11[378]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>113</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Guyana -->
+    <!-- http://www.itu.int/oth/T020200005D/en -->
+    <territory id="GY" countryCode="592" internationalPrefix="001">
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{4})">
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[2-4679]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            2(?:
+              1[6-9]|
+              2[0-35-9]|
+              3[1-4]|
+              5[3-9]|
+              6\d|
+              7[0-24-79]
+            )|
+            3(?:
+              2[25-9]|
+              3\d
+            )|
+            4(?:
+              4[0-24]|
+              5[56]
+            )|
+            77[1-57]
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>2201234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- The ITU document only describes a few ranges for mobile numbers but there is evidence
+             that SMS messages have been succesfully sent to numbers in the entire range prefixed
+             with 6. -->
+        <nationalNumberPattern>6\d{6}</nationalNumberPattern>
+        <exampleNumber>6091234</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>
+          (?:
+            289|
+            862
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>2891234</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>9008\d{3}</nationalNumberPattern>
+        <exampleNumber>9008123</exampleNumber>
+      </premiumRate>
+      <shortCode>
+        <nationalNumberPattern>
+          0(?:
+            02|
+            171|
+            444|
+            7[67]7|
+            801|
+            9(?:
+              0[78]|
+              [2-47]
+            )
+          )
+       </nationalNumberPattern>
+       <possibleNumberPattern>\d{3,4}</possibleNumberPattern>
+       <exampleNumber>0801</exampleNumber>
+      </shortCode>
+      <emergency>
+        <nationalNumberPattern>91[123]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>911</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Hong Kong -->
+    <!-- http://www.ofca.gov.hk/en/industry_focus/telecommunications/portability/index.html -->
+    <territory id="HK" countryCode="852" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{4})(\d{4})">
+          <leadingDigits>
+            [235-7]|
+            [89](?:
+              0[1-9]|
+              [1-9]
+            )
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(800)(\d{3})(\d{3})">
+          <leadingDigits>800</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(900)(\d{2})(\d{3})(\d{3})">
+          <leadingDigits>900</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(900)(\d{2,5})">
+          <leadingDigits>900</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <!-- Slightly more complex pattern to allow the country code to be stripped off if
+             necessary. -->
+        <nationalNumberPattern>
+          [235-7]\d{7}|
+          8\d{7,8}|
+          9\d{4,10}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,11}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            [23]\d|
+            5[78]
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>21234567</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          (?:
+            5[1-69]\d|
+            6\d{2}|
+            9(?:
+              0[1-9]|
+              [1-8]\d
+            )
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>51234567</exampleNumber>
+      </mobile>
+      <pager>
+        <nationalNumberPattern>7\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>71234567</exampleNumber>
+      </pager>
+      <tollFree>
+        <nationalNumberPattern>800\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>800123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>
+          900(?:
+            [0-24-9]\d{7}|
+            3\d{1,4}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,11}</possibleNumberPattern>
+        <exampleNumber>90012345678</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <nationalNumberPattern>8[1-3]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>81123456</exampleNumber>
+      </personalNumber>
+      <emergency>
+        <nationalNumberPattern>
+          112|
+          99[29]
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>999</exampleNumber>
+      </emergency>
+   </territory>
+
+    <!-- Honduras -->
+    <!-- http://www.itu.int/oth/T020200005F/en -->
+    <!-- It seems there is no longer a trunk prefix in use, based on websites like
+         http://www.howtocallabroad.com/codes.html and on seeing how locals write their numbers in
+         national format. -->
+    <territory id="HN" countryCode="504" internationalPrefix="00" >
+      <availableFormats>
+       <numberFormat pattern="(\d{4})(\d{4})">
+         <format>$1-$2</format>
+       </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[237-9]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- Extra prefixes 228X and 2292 were added from numbers found online.  -->
+        <nationalNumberPattern>
+          2(?:
+            2(?:
+              0[019]|
+              1[1-36]|
+              [23]\d|
+              4[056]|
+              5[57]|
+              8[0146-9]|
+              9[012]
+            )|
+            4(?:
+              2|3-59]|
+              3[13-689]|
+              4[0-68]|
+              5[1-35]
+            )|
+            5(?:
+              4[3-5]|
+              5\d|
+              6[56]|
+              74
+            )|
+            6(?:
+              4[0-378]|
+              [56]\d|
+              [78][0-8]|
+              9[01]
+            )|
+            7(?:
+              6[46-9]|
+              7[02-9]|
+              8[34]
+            )|
+            8(?:
+              79|
+              8[0-35789]|
+              9[1-57-9]
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>22123456</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>[37-9]\d{7}</nationalNumberPattern>
+        <exampleNumber>91234567</exampleNumber>
+      </mobile>
+      <emergency>
+        <nationalNumberPattern>199</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>199</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Croatia -->
+    <!-- http://www.itu.int/oth/T0202000032/en -->
+    <!-- http://en.wikipedia.org/wiki/%2B385 -->
+    <territory id="HR" countryCode="385" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <!-- The plan says 1 XXX XXXX but the government and local telecom websites are formatted 1
+             XXXX XXX, so we prefer that formatting here. These same sources prefer XXX XXX to XX
+             XXXX as well. -->
+       <numberFormat pattern="(1)(\d{4})(\d{3})">
+         <leadingDigits>1</leadingDigits>
+         <format>$1 $2 $3</format>
+       </numberFormat>
+       <numberFormat pattern="(6[09])(\d{4})(\d{3})">
+         <leadingDigits>6[09]</leadingDigits>
+         <format>$1 $2 $3</format>
+       </numberFormat>
+       <numberFormat pattern="(62)(\d{3})(\d{3,4})">
+         <leadingDigits>62</leadingDigits>
+         <format>$1 $2 $3</format>
+       </numberFormat>
+       <numberFormat pattern="([2-5]\d)(\d{3})(\d{3})">
+         <leadingDigits>[2-5]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(9\d)(\d{3})(\d{3,4})">
+          <leadingDigits>9</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(9\d)(\d{4})(\d{4})">
+          <leadingDigits>9</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(9\d)(\d{3,4})(\d{3})(\d{3})">
+          <leadingDigits>9</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{2})(\d{2,3})">
+          <leadingDigits>
+            6[145]|
+            7
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{3,4})(\d{3})">
+          <leadingDigits>
+            6[145]|
+            7
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(80[01])(\d{2})(\d{2,3})">
+          <leadingDigits>8</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(80[01])(\d{3,4})(\d{3})">
+          <leadingDigits>8</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [1-7]\d{5,8}|
+          [89]\d{6,11}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,12}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          1\d{7}|
+          (?:
+            2[0-3]|
+            3[1-5]|
+            4[02-47-9]|
+            5[1-3]
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,8}</possibleNumberPattern>
+        <exampleNumber>12345678</exampleNumber>
+      </fixedLine>
+      <uan>
+        <!-- ITU numbering plan doesn't specify the length of the numbers with prefix 62, but there
+             are numbers on the internet with 6 or 7 digits after the prefix. -->
+        <nationalNumberPattern>62\d{6,7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8,9}</possibleNumberPattern>
+        <exampleNumber>62123456</exampleNumber>
+      </uan>
+      <mobile>
+        <nationalNumberPattern>9[1257-9]\d{6,10}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8,12}</possibleNumberPattern>
+        <exampleNumber>912345678</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>80[01]\d{4,7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7,10}</possibleNumberPattern>
+        <exampleNumber>8001234567</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <!-- The prefixes 060, 061, 064, 065 and 069 are named as premium rate numbers by
+             http://www.vipnet.hr/en/poslovni-korisnici/telefon-internet/vip-adsl-usluga#panel_4.
+             -->
+        <nationalNumberPattern>
+          6(?:
+            [09]\d{7}|
+            [145]\d{4,7}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,9}</possibleNumberPattern>
+        <exampleNumber>611234</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <nationalNumberPattern>7[45]\d{4,7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6,9}</possibleNumberPattern>
+        <exampleNumber>741234567</exampleNumber>
+      </personalNumber>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            12|
+            92
+          )|
+          9[34]
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{2,3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Haiti -->
+    <!-- http://www.itu.int/oth/T020200005E/en -->
+    <!-- http://www.numberingplans.com/ -->
+    <territory id="HT" countryCode="509" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{2})(\d{2})(\d{4})">
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[2-489]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- The prefix 24 seems to be also used, based on online searches. -->
+        <nationalNumberPattern>
+          2(?:
+            [24]\d|
+            5[1-5]|
+            94
+          )\d{5}
+        </nationalNumberPattern>
+        <exampleNumber>22453300</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- The prefix 31 seems to be also used, based on online searches. -->
+        <nationalNumberPattern>
+          (?:
+            3[1-9]|
+            4\d
+          )\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>34101234</exampleNumber>
+      </mobile>
+      <tollFree>
+        <!-- ITU document says numbers with prefix 8 are "value-added services and free numbers
+             without making any further distinction. However, http://www.numberingplans.com/ seems
+             to suggest they are free. -->
+        <nationalNumberPattern>8\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>80012345</exampleNumber>
+      </tollFree>
+      <voip>
+        <!-- ITU document suggests 98\d{6}, but http://www.numberingplans.com/ restricts it to
+             98[89]\d{5}. -->
+        <nationalNumberPattern>98[89]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>98901234</exampleNumber>
+      </voip>
+      <shortCode>
+        <nationalNumberPattern>1\d{2}</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>114</exampleNumber>
+      </shortCode>
+      <!-- http://studentsabroad.state.gov/content/pdfs/911_ABROAD.pdf -->
+      <emergency>
+        <nationalNumberPattern>11[48]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>118</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Hungary -->
+    <!-- http://www.itu.int/oth/T0202000061/en -->
+    <territory id="HU" countryCode="36" internationalPrefix="00"
+               nationalPrefix="06" nationalPrefixFormattingRule="($FG)">
+      <!-- Although the national prefix is necessary for dialling, the preferred format (confirmed
+           by a Hungarian person and following the yellow pages) is to omit this when formatting.
+           Yellow pages: www.aranyoldalak.hu -->
+      <availableFormats>
+        <numberFormat pattern="(1)(\d{3})(\d{4})">
+          <leadingDigits>1</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{3,4})">
+          <leadingDigits>[2-9]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[1-9]\d{7,8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6,9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- Includes numbers for corporate networks. -->
+        <nationalNumberPattern>
+          (?:
+            1\d|
+            2(?:
+              1\d|
+              [2-9]
+            )|
+            3[2-7]|
+            4[24-9]|
+            5[2-79]|
+            6[23689]|
+            7(?:
+              1\d|
+              [2-9]
+            )|
+            8[2-57-9]|
+            9[2-69]
+          )\d{6}
+        </nationalNumberPattern>
+        <exampleNumber>12345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          (?:
+            [27]0|
+            3[01]
+          )\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>201234567</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>80\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>80123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>9[01]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>90123456</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <nationalNumberPattern>40\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>40123456</exampleNumber>
+      </sharedCost>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            0[457]|
+            12
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Indonesia -->
+    <!-- http://www.itu.int/oth/T0202000064/en (from 2001, very out-of-date) -->
+    <!-- http://en.wikipedia.org/wiki/%2B62 -->
+    <territory id="ID" countryCode="62" internationalPrefix="0(?:0[1789]|10(?:00|1[67]))"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat nationalPrefixFormattingRule="($NP$FG)"
+          pattern="(\d{2})(\d{7,8})">
+          <leadingDigits>
+            2[124]|
+            [36]1
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="($NP$FG)"
+          pattern="(\d{3})(\d{5,7})">
+          <leadingDigits>
+            [4579]|
+            2[035-9]|
+            [36][02-9]
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(8\d{2})(\d{3,4})(\d{3,4})">
+          <leadingDigits>8[1-35-9]</leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(177)(\d{6,8})">
+          <leadingDigits>1</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <!-- http://en.wikipedia.org/wiki/Toll-free_telephone_number, and examples on the web show
+             that sometimes they are followed by less digits. -->
+        <numberFormat pattern="(800)(\d{5,7})">
+          <leadingDigits>800</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(809)(\d)(\d{3})(\d{3})">
+          <leadingDigits>809</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[1-9]\d{6,10}</nationalNumberPattern>
+        <possibleNumberPattern>\d{5,11}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- Area codes taken from wikipedia, with missing ones added from
+             http://www.telkom.co.id/customer-services/area-and-country-code/?type=area.
+             We also added 0770 after user feedback because it seems to be used on Bintan island.
+             Where known, fixed mobile prefixes have been represented as Mobile. -->
+        <nationalNumberPattern>
+          2(?:
+            1(?:
+              [0-8]\d{6,7}|
+              9\d{6}
+            )|
+            [24]\d{7,8}
+          )|
+          (?:
+            2(?:
+              [35][1-4]|
+              6[0-8]|
+              7[1-6]|
+              8\d|
+              9[1-8]
+            )|
+            3(?:
+              1|
+              2[1-578]|
+              3[1-68]|
+              4[1-3]|
+              5[1-8]|
+              6[1-3568]|
+              7[0-46]|
+              8\d
+            )|
+            4(?:
+              0[1-589]|
+              1[01347-9]|
+              2[0-36-8]|
+              3[0-24-68]|
+              5[1-378]|
+              6[1-5]|
+              7[134]|
+              8[1245]
+            )|
+            5(?:
+              1[1-35-9]|
+              2[25-8]|
+              3[1246-9]|
+              4[1-3589]|
+              5[1-46]|
+              6[1-8]
+            )|
+            6(?:
+              19?|
+              [25]\d|
+              3[1-469]|
+              4[1-6]
+            )|
+            7(?:
+              1[1-46-9]|
+              2[14-9]|
+              [36]\d|
+              4[1-8]|
+              5[1-9]|
+              7[0-36-9]
+            )|
+            9(?:
+              0[12]|
+              1[013-8]|
+              2[0-479]|
+              5[125-8]|
+              6[23679]|
+              7[159]|
+              8[01346]
+            )
+          )\d{5,8}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,10}</possibleNumberPattern>
+        <exampleNumber>612345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- It is unclear exactly which prefixes could be mobile phones, based on the information
+             on the wikipedia page. However, Bakrie have provided a list of their prefixes, which
+             are captured below. The pattern covers the area code plus the first one-two digits of
+             the subscriber number. -->
+        <nationalNumberPattern>
+          (?:
+            2(?:
+              1(?:
+                3[145]|
+                4[01]|
+                5[1-469]|
+                60|
+                8[0359]|
+                9\d
+              )|
+              2(?:
+                88|
+                9[1256]
+              )|
+              3[1-4]9|
+              4(?:
+                36|
+                91
+              )|
+              5(?:
+                1[349]|
+                [2-4]9
+              )|
+              6[0-7]9|
+              7(?:
+                [1-36]9|
+                4[39]
+              )|
+              8[1-5]9|
+              9[1-48]9
+            )|
+            3(?:
+              19[1-3]|
+              2[12]9|
+              3[13]9|
+              4(?:
+                1[69]|
+                39
+              )|
+              5[14]9|
+              6(?:
+                1[69]|
+                2[89]
+              )|
+              709
+            )|
+            4[13]19|
+            5(?:
+              1(?:
+                19|
+                8[39]
+              )|
+              4[129]9|
+              6[12]9
+            )|
+            6(?:
+              19[12]|
+              2(?:
+                [23]9|
+                77
+              )
+            )|
+            7(?:
+              1[13]9|
+              2[15]9|
+              419|
+              5(?:
+                1[89]|
+                29
+              )|
+              6[15]9|
+              7[178]9
+            )
+          )\d{5,6}|
+          8[1-35-9]\d{7,9}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9,11}</possibleNumberPattern>
+        <exampleNumber>812345678</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>
+          177\d{6,8}|
+          800\d{5,7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8,11}</possibleNumberPattern>
+        <exampleNumber>8001234567</exampleNumber>
+      </tollFree>
+      <!-- The infomation below is provided by an Indonesian -->
+      <premiumRate>
+        <nationalNumberPattern>809\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8091234567</exampleNumber>
+      </premiumRate>
+      <emergency>
+        <nationalNumberPattern>11[02389]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Ireland -->
+    <!-- http://www.comreg.ie/licensing_and_services/numbering_plan_for_ireland.552.440.html -->
+    <!-- http://www.comreg.ie/_fileupload/publications/ComReg1119.pdf -->
+    <territory id="IE" countryCode="353" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="($NP$FG)">
+      <availableFormats>
+        <numberFormat pattern="(1)(\d{3,4})(\d{4})">
+          <leadingDigits>1</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{5})">
+          <leadingDigits>
+            2[24-9]|
+            47|
+            58|
+            6[237-9]|
+            9[35-9]
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{5})">
+          <leadingDigits>
+            40[24]|
+            50[45]
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(48)(\d{4})(\d{4})">
+          <leadingDigits>48</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(818)(\d{3})(\d{3})">
+          <leadingDigits>81</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{3,4})">
+          <leadingDigits>
+            [24-69]|
+            7[14]
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$NP$FG"
+          pattern="([78]\d)(\d{3,4})(\d{4})">
+          <leadingDigits>
+            76|
+            8[35-9]
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$NP$FG"
+          pattern="(700)(\d{3})(\d{3})">
+          <leadingDigits>70</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$FG" pattern="(\d{4})(\d{3})(\d{3})">
+          <leadingDigits>
+            1(?:
+              8[059]|
+              5
+            )
+          </leadingDigits>
+          <leadingDigits>
+            1(?:
+              8[059]0|
+              5
+            )
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[124-9]\d{6,9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{5,10}</possibleNumberPattern>
+      </generalDesc>
+      <noInternationalDialling>
+        <nationalNumberPattern>18[59]0\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>1850123456</exampleNumber>
+      </noInternationalDialling>
+      <fixedLine>
+        <!-- We allow 6-7 digit subscriber numbers for the 021 area code since that seems to be
+             reflected by the numbers in the Yellow Pages. Another peculiarity is that 048 actually
+             replaces 00 44 28 when Irish people dial, allowing them to easily dial Northern
+             Ireland. We support these numbers here, although technically they are numbers for the
+             UK. -->
+        <nationalNumberPattern>
+          1\d{7,8}|
+          2(?:
+            1\d{6,7}|
+            3\d{7}|
+            [24-9]\d{5}
+          )|
+          4(?:
+            0[24]\d{5}|
+            [1-469]\d{7}|
+            5\d{6}|
+            7\d{5}|
+            8[0-46-9]\d{7}
+          )|
+          5(?:
+            0[45]\d{5}|
+            1\d{6}|
+            [23679]\d{7}|
+            8\d{5}
+          )|
+          6(?:
+            1\d{6}|
+            [237-9]\d{5}|
+            [4-6]\d{7}
+          )|
+          7[14]\d{7}|
+          9(?:
+            1\d{6}|
+            [04]\d{7}|
+            [35-9]\d{5}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,10}</possibleNumberPattern>
+        <exampleNumber>2212345</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          8(?:
+            22\d{6}|
+            [35-9]\d{7}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>850123456</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>1800\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>1800123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>
+          15(?:
+            1[2-8]|
+            [2-8]0|
+            9[089]
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>1520123456</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <nationalNumberPattern>18[59]0\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>1850123456</exampleNumber>
+      </sharedCost>
+      <personalNumber>
+        <nationalNumberPattern>700\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>700123456</exampleNumber>
+      </personalNumber>
+      <voip>
+        <nationalNumberPattern>76\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>761234567</exampleNumber>
+      </voip>
+      <uan>
+        <nationalNumberPattern>818\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>818123456</exampleNumber>
+      </uan>
+      <voicemail>
+        <nationalNumberPattern>8[35-9]\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8501234567</exampleNumber>
+      </voicemail>
+      <emergency>
+        <nationalNumberPattern>
+          112|
+          999
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Israel -->
+    <!-- http://www.itu.int/oth/T020200006A/en -->
+    <!-- http://en.wikipedia.org/wiki/%2B972 -->
+    <!-- http://he.wikipedia.org/wiki/%D7%A7%D7%99%D7%93%D7%95%D7%9E%D7%AA_%D7%98%D7%9C%D7%A4%D7%95%D7%9F_%D7%91%D7%99%D7%A9%D7%A8%D7%90%D7%9C
+         (in Hebrew) -->
+    <!-- Formatting practice following wikipedia, and government sites. -->
+    <territory id="IL" countryCode="972" internationalPrefix="0(?:0|1[2-9])"
+               nationalPrefix="0" nationalPrefixFormattingRule="$FG">
+      <availableFormats>
+        <numberFormat nationalPrefixFormattingRule="$NP$FG"
+          pattern="([2-489])(\d{3})(\d{4})">
+          <leadingDigits>[2-489]</leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat nationalPrefixFormattingRule="$NP$FG"
+          pattern="([57]\d)(\d{3})(\d{4})">
+          <leadingDigits>[57]</leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(1)([7-9]\d{2})(\d{3})(\d{3})">
+          <leadingDigits>1[7-9]</leadingDigits>
+          <format>$1-$2-$3-$4</format>
+        </numberFormat>
+        <!-- The following number is for hospitals. -->
+        <numberFormat pattern="(1255)(\d{3})">
+          <leadingDigits>125</leadingDigits>
+          <format>$1-$2</format>
+        </numberFormat>
+        <numberFormat pattern="(1200)(\d{3})(\d{3})">
+          <leadingDigits>120</leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(1212)(\d{2})(\d{2})">
+          <leadingDigits>121</leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <!-- The following is for voicemail access. -->
+        <numberFormat pattern="(1599)(\d{6})">
+          <leadingDigits>15</leadingDigits>
+          <format>$1-$2</format>
+        </numberFormat>
+        <!-- These are 4-digit star numbers which are only accessible within Israel and must be
+             dialed with a star in front of the number. -->
+        <numberFormat pattern="(\d{4})">
+          <leadingDigits>[2-689]</leadingDigits>
+          <format>*$1</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc >
+        <nationalNumberPattern>
+          [17]\d{6,9}|
+          [2-589]\d{3}(?:\d{3,6})?|
+          6\d{3}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{4,10}</possibleNumberPattern>
+      </generalDesc>
+      <noInternationalDialling>
+        <nationalNumberPattern>
+          1700\d{6}|
+          [2-689]\d{3}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{4,10}</possibleNumberPattern>
+        <exampleNumber>1700123456</exampleNumber>
+      </noInternationalDialling>
+      <fixedLine>
+        <nationalNumberPattern>[2-489]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7,8}</possibleNumberPattern>
+        <exampleNumber>21234567</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- The ITU document has only some of these prefixes - wikipedia lists more. We are fairly
+             sure wikipedia is accurate based on news coverage of the launch of these numbers. -->
+        <nationalNumberPattern>
+          5(?:
+            [02347-9]\d{2}|
+            5(?:
+              2[23]|
+              3[34]|
+              4[45]|
+              5[5689]|
+              6[67]|
+              7[78]|
+              8[89]
+            )|
+            6[2-9]\d
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>501234567</exampleNumber>
+      </mobile>
+      <tollFree>
+        <!-- Online 1-809 numbers now classify themselves as "toll-free". -->
+        <nationalNumberPattern>
+          1(?:
+            80[019]\d{3}|
+            255
+          )\d{3}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,10}</possibleNumberPattern>
+        <exampleNumber>1800123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+          <!-- Peculiarly, one source states that 1956 and 1957 are the new premium rate prefixes.
+               However, no online numbers starting with these prefixes can be found, and this data
+               is not found in any other source. -->
+          <!-- 1200 and 1212 numbers are for televoting. -->
+        <nationalNumberPattern>
+          1(?:
+            212|
+            (?:
+              9(?:
+                0[01]|
+                19
+              )|
+              200
+            )\d{2}
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8,10}</possibleNumberPattern>
+        <exampleNumber>1919123456</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <nationalNumberPattern>1700\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>1700123456</exampleNumber>
+      </sharedCost>
+      <voip>
+        <!-- These rules are a union of the wikipedia and ITU document prefixes. They are mostly
+             marked as VoIP on wikipedia, but it seems they may indeed be DID (Direct Inward
+             Dialing) numbers, that most people forward to VoIP numbers. -->
+        <nationalNumberPattern>
+          7(?:
+            2[23]\d|
+            3[237]\d|
+            47\d|
+            6(?:
+              5\d|
+              8[08]
+            )|
+            7\d{2}|
+            8(?:
+              33|
+              55|
+              77|
+              81
+            )
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>771234567</exampleNumber>
+      </voip>
+      <uan>
+        <!-- 4-digit star numbers. -->
+        <nationalNumberPattern>[2-689]\d{3}</nationalNumberPattern>
+        <possibleNumberPattern>\d{4}</possibleNumberPattern>
+        <exampleNumber>2250</exampleNumber>
+      </uan>
+      <voicemail>
+        <nationalNumberPattern>1599\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>1599123456</exampleNumber>
+      </voicemail>
+      <shortCode>
+        <nationalNumberPattern>1\d{3}</nationalNumberPattern>
+        <possibleNumberPattern>\d{4}</possibleNumberPattern>
+        <exampleNumber>1455</exampleNumber>
+      </shortCode>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            0[012]|
+            12
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Isle of Man -->
+    <!-- Inherits formatting rules from the UK. -->
+    <!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_the_United_Kingdom -->
+    <territory id="IM" countryCode="44" internationalPrefix="00"
+               nationalPrefix="0" preferredExtnPrefix=" x" nationalPrefixFormattingRule="$NP$FG">
+      <generalDesc>
+        <nationalNumberPattern>[135789]\d{6,9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6,10}</possibleNumberPattern>
+      </generalDesc>
+      <areaCodeOptional>
+        <nationalNumberPattern>1624[2-9]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>1624250123</exampleNumber>
+      </areaCodeOptional>
+      <!-- Specific to IM. -->
+      <fixedLine>
+        <!-- 1624 with 10 digits. -->
+        <nationalNumberPattern>1624\d{6}</nationalNumberPattern>
+        <exampleNumber>1624456789</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- 7524, 7624, 7924 with 10 digits. -->
+        <nationalNumberPattern>7[569]24\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>7924123456</exampleNumber>
+      </mobile>
+      <tollFree>
+        <!-- 808 162 with 10 digits. -->
+        <nationalNumberPattern>808162\d{4}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8081624567</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <!-- 872 299, 900 624, 901 624, 906 624, 907 624 with 10 digits. -->
+        <nationalNumberPattern>
+          (?:
+            872299|
+            90[0167]624
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9016247890</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <!-- 844 040 6, 844 090 6, 845 624, 870 624 with 10 digits. -->
+        <nationalNumberPattern>
+          8(?:
+            4(?:
+              40[49]06|
+              5624\d
+            )|
+            70624\d
+          )\d{3}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8456247890</exampleNumber>
+      </sharedCost>
+      <!-- Other numbers as per GB. -->
+      <personalNumber>
+        <nationalNumberPattern>70\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>7012345678</exampleNumber>
+      </personalNumber>
+      <voip>
+        <nationalNumberPattern>56\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5612345678</exampleNumber>
+      </voip>
+      <uan>
+        <!-- 308 162, 33d, 344 040 6, 344 090 6, 345 624, 370 624, 372 299, 55 with 10 digits. -->
+        <nationalNumberPattern>
+          3(?:
+            08162\d|
+            3\d{5}|
+            4(?:
+              40[49]06|
+              5624\d
+            )|
+            7(?:
+              0624\d|
+              2299\d
+            )
+          )\d{3}|
+          55\d{8}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5512345678</exampleNumber>
+      </uan>
+      <shortCode>
+        <nationalNumberPattern>1\d{2}(?:\d{3})?</nationalNumberPattern>
+        <possibleNumberPattern>\d{3,6}</possibleNumberPattern>
+        <exampleNumber>150</exampleNumber>
+      </shortCode>
+      <emergency>
+        <!-- http://www.directory.im/directory_useful.aspx -->
+        <nationalNumberPattern>999</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>999</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- India -->
+    <!-- http://www.dot.gov.in/numbering_plan/numberplanindex.htm -->
+    <!-- http://www.itu.int/oth/T0202000063/en -->
+    <!-- http://en.wikipedia.org/wiki/%2B91 -->
+    <!-- http://www.coai.in/msccodes.php -->
+    <!-- Note that several changes in area codes have occurred since the numbering plan was released
+         - fixed line changes are notified on the www.bsnl.co.in website. Area codes can be verified
+           here at http://dq.ndc.bsnl.co.in/bsnl-web/stdSearch.seam. -->
+    <territory id="IN" countryCode="91" internationalPrefix="00" nationalPrefix="0"
+               nationalPrefixFormattingRule="$NP$FG" nationalPrefixOptionalWhenFormatting="true" >
+       <availableFormats>
+         <!-- Mobile numbers. -->
+         <numberFormat pattern="(\d{2})(\d{2})(\d{6})">
+           <leadingDigits>
+             7(?:
+               2[0579]|
+               3[057-9]|
+               4[0-389]|
+               5[024-9]|
+               6[0-35-9]|
+               7[0346-9]|
+               8[0-79]
+             )|
+             8(?:
+               0[015689]|
+               1[0-57-9]|
+               2[2356-9]|
+               3[0-57-9]|
+               [45]|
+               6[0245789]|
+               7[1-69]|
+               8[0124-9]|
+               9[02-9]
+             )|
+             9
+           </leadingDigits>
+           <leadingDigits>
+             7(?:
+               2(?:
+                 0[04-9]|
+                 5[09]|
+                 7[5-8]|
+                 9[389]
+               )|
+               3(?:
+                 0[1-9]|
+                 [58]|
+                 7[3679]|
+                 9[689]
+               )|
+               4(?:
+                 0[1-9]|
+                 1[15-9]|
+                 [29][89]|
+                 39|
+                 8[389]
+               )|
+               5(?:
+                 0|
+                 [47]9|
+                 [25]0|
+                 6[6-9]|
+                 [89][7-9]
+               )|
+               6(?:
+                 0[027]|
+                 12|
+                 20|
+                 3[19]|
+                 5[45]|
+                 6[5-9]|
+                 7[679]|
+                 9[6-9]
+               )|
+               7(?:
+                 0[27-9]|
+                 3[5-9]|
+                 42|
+                 60|
+                 7[7-9]|
+                 8[1-9]|
+                 9[05-9]
+               )|
+               8(?:
+                 [03][07-9]|
+                 14|
+                 2[7-9]|
+                 [4-7]|
+                 9[013-9]
+               )
+             )|
+             8(?:
+               0(?:
+                 [01589]|
+                 6[67]
+               )|
+               1(?:
+                 [02-589]|
+                 1[0135-9]|
+                 7[0-79]
+               )|
+               2(?:
+                 [236-9]|
+                 5[1-9]
+               )|
+               3(?:
+                 [037-9]|
+                 4[1-9]|
+                 5[0-57-9]
+               )|
+               [45]|
+               6[02457-9]|
+               7[1-69]|
+               8(?:
+                 [0-26-9]|
+                 44|
+                 5[2-9]
+               )|
+               9(?:
+                 [035-9]|
+                 2[2-9]|
+                 4[0-8]
+               )
+             )|
+             9
+           </leadingDigits>
+           <format>$1 $2 $3</format>
+         </numberFormat>
+         <!-- 2 digits area code -->
+         <numberFormat pattern="(\d{2})(\d{4})(\d{4})">
+           <leadingDigits>
+             11|
+             2[02]|
+             33|
+             4[04]|
+             79|
+             80[2-46]
+           </leadingDigits>
+           <format>$1 $2 $3</format>
+         </numberFormat>
+         <!-- 3 digit area codes that don't clash with mobile patterns. -->
+         <numberFormat pattern="(\d{3})(\d{3})(\d{4})">
+           <leadingDigits>
+             1(?:
+               2[0-249]|
+               3[0-25]|
+               4[145]|
+               [569][14]|
+               7[1257]|
+               8[1346]|
+               [68][1-9]
+             )|
+             2(?:
+               1[257]|
+               3[013]|
+               4[01]|
+               5[0137]|
+               6[0158]|
+               78|
+               8[1568]|
+               9[14]
+             )|
+             3(?:
+               26|
+               4[1-3]|
+               5[34]|
+               6[01489]|
+               7[02-46]|
+               8[159]
+             )|
+             4(?:
+               1[36]|
+               2[1-47]|
+               3[15]|
+               5[12]|
+               6[126-9]|
+               7[0-24-9]|
+               8[013-57]|
+               9[014-7]
+             )|
+             5(?:
+               [136][25]|
+               22|
+               4[28]|
+               5[12]|
+               [78]1|
+               9[15]
+             )|
+             6(?:
+               12|
+               [2345]1|
+               57|
+               6[13]|
+               7[14]|
+               80
+             )
+           </leadingDigits>
+           <format>$1 $2 $3</format>
+         </numberFormat>
+         <!-- Three-digit area codes that potentially overlap with mobile. -->
+         <numberFormat pattern="(\d{3})(\d{3})(\d{4})">
+           <leadingDigits>
+             7(?:
+               12|
+               2[14]|
+               3[134]|
+               4[47]|
+               5[15]|
+               [67]1|
+               88
+             )
+           </leadingDigits>
+           <leadingDigits>
+             7(?:
+               12|
+               2[14]|
+               3[134]|
+               4[47]|
+               5(?:
+                 1|
+                 5[2-6]
+               )|
+               [67]1|
+               88
+             )
+           </leadingDigits>
+           <format>$1 $2 $3</format>
+         </numberFormat>
+         <numberFormat pattern="(\d{3})(\d{3})(\d{4})">
+           <leadingDigits>
+             8(?:
+               16|
+               2[014]|
+               3[126]|
+               6[136]|
+               7[078]|
+               8[34]|
+               91
+             )
+           </leadingDigits>
+           <format>$1 $2 $3</format>
+         </numberFormat>
+         <!-- 4 digits area code -->
+         <!-- Fallback for fixed-line numbers. -->
+         <numberFormat pattern="(\d{4})(\d{3})(\d{3})">
+           <leadingDigits>
+             1(?:
+               [2-579]|
+               [68][1-9]
+             )|
+             [2-8]
+           </leadingDigits>
+           <format>$1 $2 $3</format>
+         </numberFormat>
+         <numberFormat nationalPrefixFormattingRule="$FG"
+           pattern="(1600)(\d{2})(\d{4})">
+           <leadingDigits>160</leadingDigits>
+           <leadingDigits>1600</leadingDigits>
+           <format>$1 $2 $3</format>
+         </numberFormat>
+         <numberFormat nationalPrefixFormattingRule="$FG"
+           pattern="(1800)(\d{4,5})">
+           <leadingDigits>180</leadingDigits>
+           <leadingDigits>1800</leadingDigits>
+           <format>$1 $2</format>
+         </numberFormat>
+         <numberFormat nationalPrefixFormattingRule="$FG"
+           pattern="(18[06]0)(\d{2,4})(\d{4})">
+           <leadingDigits>18[06]</leadingDigits>
+           <leadingDigits>18[06]0</leadingDigits>
+           <format>$1 $2 $3</format>
+         </numberFormat>
+         <!-- Televoting numbers. Formatting information is from
+              http://www.bsnl.co.in/service/telev.htm -->
+         <numberFormat nationalPrefixFormattingRule="$FG"
+           pattern="(\d{4})(\d{3})(\d{4})(\d{2})">
+           <leadingDigits>18[06]</leadingDigits>
+           <leadingDigits>
+             18(?:
+               03|
+               6[12]
+             )
+           </leadingDigits>
+           <format>$1 $2 $3 $4</format>
+         </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          1\d{7,12}|
+          [2-9]\d{9,10}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,13}</possibleNumberPattern>
+      </generalDesc>
+      <noInternationalDialling>
+        <nationalNumberPattern>
+          1(?:
+            600\d{6}|
+            8(?:
+              0(?:
+                0\d{4,8}|
+                3\d{9}
+              )|
+              6(?:
+                0\d{7}|
+                [12]\d{9}
+              )
+            )
+           )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8,13}</possibleNumberPattern>
+        <exampleNumber>1800123456</exampleNumber>
+      </noInternationalDialling>
+      <fixedLine>
+        <!-- This is a list of the 2 and 3 digit area codes and the first 3 digits of 4 digit area
+             codes, so we can check the following digit belongs to one of the operator-codes (2-7).
+             Operator codes are from wikipedia, with the addition of 5 (HFCL Infotel in some areas).
+             Not all operator codes are available in all areas, but we don't maintain that
+             distinction here.
+             Area codes starting with a 7 are listed separately, since the prefixes need to be more
+             detailed so they clash less with mobile phone prefixes. -->
+        <nationalNumberPattern>
+          (?:
+            11|
+            2[02]|
+            33|
+            4[04]|
+            79
+          )[2-7]\d{7}|
+          80[2-467]\d{7}|
+          (?:
+            1(?:
+              2[0-249]|
+              3[0-25]|
+              4[145]|
+              [59][14]|
+              6[014]|
+              7[1257]|
+              8[01346]
+            )|
+            2(?:
+              1[257]|
+              3[013]|
+              4[01]|
+              5[0137]|
+              6[0158]|
+              78|
+              8[1568]|
+              9[14]
+            )|
+            3(?:
+              26|
+              4[1-3]|
+              5[34]|
+              6[01489]|
+              7[02-46]|
+              8[159]
+            )|
+            4(?:
+              1[36]|
+              2[1-47]|
+              3[15]|
+              5[12]|
+              6[126-9]|
+              7[0-24-9]|
+              8[013-57]|
+              9[014-7]
+            )|
+            5(?:
+              [136][25]|
+              22|
+              4[28]|
+              5[12]|
+              [78]1|
+              9[15]
+            )|
+            6(?:
+              12|
+              [2345]1|
+              57|
+              6[13]|
+              7[14]|
+              80
+            )|
+            7(?:
+              12|
+              2[14]|
+              3[134]|
+              4[47]|
+              5[15]|
+              [67]1|
+              88
+            )|
+            8(?:
+              16|
+              2[014]|
+              3[126]|
+              6[136]|
+              7[078]|
+              8[34]|
+              91
+            )
+          )[2-7]\d{6}|
+          (?:
+            (?:
+              1(?:
+                2[35-8]|
+                3[346-9]|
+                4[236-9]|
+                [59][0235-9]|
+                6[235-9]|
+                7[34689]|
+                8[257-9]
+              )|
+              2(?:
+                1[134689]|
+                3[24-8]|
+                4[2-8]|
+                5[25689]|
+                6[2-4679]|
+                7[13-79]|
+                8[2-479]|
+                9[235-9]
+              )|
+              3(?:
+                01|
+                1[79]|
+                2[1-5]|
+                4[25-8]|
+                5[125689]|
+                6[235-7]|
+                7[157-9]|
+                8[2-467]
+              )|
+              4(?:
+                1[14578]|
+                2[5689]|
+                3[2-467]|
+                5[4-7]|
+                6[35]|
+                73|
+                8[2689]|
+                9[2389]
+              )|
+              5(?:
+                [16][146-9]|
+                2[14-8]|
+                3[1346]|
+                4[14-69]|
+                5[46]|
+                7[2-4]|
+                8[2-8]|
+                9[246]
+              )|
+              6(?:
+                1[1358]|
+                2[2457]|
+                3[2-4]|
+                4[235-7]|
+                [57][2-689]|
+                6[24-58]|
+                8[1-6]
+              )|
+              8(?:
+                1[1357-9]|
+                2[235-8]|
+                3[03-57-9]|
+                4[0-24-9]|
+                5\d|
+                6[2457-9]|
+                7[1-6]|
+                8[1256]|
+                9[2-4]
+              )
+            )\d|
+            7(?:
+              (?:
+                1[013-9]|
+                2[0235-9]|
+                3[2679]|
+                4[1-35689]|
+                5[2-46-9]|
+                [67][02-9]|
+                9\d
+              )\d|
+              8(?:
+                2[0-6]|
+                [013-8]\d
+              )
+            )
+          )[2-7]\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,10}</possibleNumberPattern>
+        <exampleNumber>1123456789</exampleNumber>
+      </fixedLine>
+      <!-- http://en.wikipedia.org/wiki/Mobile_telephone_numbering_in_India -->
+      <!-- The document titled "List of MSC codes" linked off
+           http://www.dot.gov.in/numbering_plan/numberplanindex.htm is the best source for these.
+           -->
+      <mobile>
+        <!-- A couple of additional prefixes found neither on the wikipedia page nor in the MSC
+             codes list, are added because SMS messages have been successfully sent to these
+             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: 8299, 8309,
+             835[45].
+             New prefixes were added based on the document provided from mobile carriers:
+             https://code.google.com/p/libphonenumber/issues/detail?id=260 -->
+        <nationalNumberPattern>
+          (?:
+            7(?:
+              2(?:
+                0[04-9]|
+                5[09]|
+                7[5-8]|
+                9[389]
+              )|
+              3(?:
+                0[1-9]|
+                [58]\d|
+                7[3679]|
+                9[689]
+              )|
+              4(?:
+                0[1-9]|
+                1[15-9]|
+                [29][89]|
+                39|
+                8[389]
+              )|
+              5(?:
+                0\d|
+                [47]9|
+                [25]0|
+                6[6-9]|
+                [89][7-9]
+              )|
+              6(?:
+                0[027]|
+                12|
+                20|
+                3[19]|
+                5[45]|
+                6[5-9]|
+                7[679]|
+                9[6-9]
+              )|
+              7(?:
+                0[27-9]|
+                3[5-9]|
+                42|
+                6[03-9]|
+                [79]\d|
+                8[1-9]
+              )|
+              8(?:
+                [0-7]\d|
+                9[013-9]
+              )
+            )|
+            8(?:
+              0(?:
+                [01589]\d|
+                6[67]
+              )|
+              1(?:
+                [02-589]\d|
+                1[0135-9]|
+                7[0-79]
+              )|
+              2(?:
+                [236-9]\d|
+                5[1-9]
+              )|
+              3(?:
+                [037-9]\d|
+                4[1-9]|
+                5[0-57-9]
+              )|
+              [45]\d{2}|
+              6[02457-9]\d|
+              7[1-69]\d|
+              8(?:
+                [0-26-9]\d|
+                44|
+                5[2-9]
+              )|
+              9(?:
+                [035-9]\d|
+                2[2-9]|
+                4[0-8]
+              )
+            )|
+            9\d{3}
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9123456789</exampleNumber>
+      </mobile>
+      <tollFree>
+        <!-- Information gathered from sites such as
+             http://www.surfindia.com/india-facts/toll-free-no.html and
+             http://indmusings.blogspot.com/2008/09/free-help-line-numbersindia.html
+             http://www.bsnl.co.in/service/telev.htm -->
+        <nationalNumberPattern>
+          1(?:
+            600\d{6}|
+            80(?:
+              0\d{4,8}|
+              3\d{9}
+            )
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8,13}</possibleNumberPattern>
+        <exampleNumber>1800123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <!-- Only televoting numbers are covered here for now. The 900 numbers are not covered
+             because they overlap with mobile, and we haven't found any real numbers online. -->
+        <nationalNumberPattern>186[12]\d{9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{13}</possibleNumberPattern>
+        <exampleNumber>1861123456789</exampleNumber>
+      </premiumRate>
+      <uan>
+        <nationalNumberPattern>1860\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{11}</possibleNumberPattern>
+        <exampleNumber>18603451234</exampleNumber>
+      </uan>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            0[0128]|
+            12|
+            298
+          )|
+          2611
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3,4}</possibleNumberPattern>
+        <exampleNumber>108</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- British Indian Ocean Territory / Diego Garcia -->
+    <!-- http://www.itu.int/oth/T0202000039/en -->
+    <territory id="IO" countryCode="246" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{4})">
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>3\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>37\d{5}</nationalNumberPattern>
+        <exampleNumber>3709100</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>38\d{5}</nationalNumberPattern>
+        <exampleNumber>3801234</exampleNumber>
+      </mobile>
+      <!-- It seems that there are no emergency numbers for this island. -->
+    </territory>
+
+    <!-- Iraq -->
+    <!-- http://en.wikipedia.org/wiki/%2B964 -->
+    <!-- http://wtng.info/wtng-964-ik.html -->
+    <territory id="IQ" countryCode="964" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat pattern="(1)(\d{3})(\d{4})">
+          <leadingDigits>1</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="([2-6]\d)(\d{3})(\d{3,4})">
+          <leadingDigits>[2-6]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(7\d{2})(\d{3})(\d{4})">
+          <leadingDigits>7</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[1-7]\d{7,9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6,10}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          1\d{7}|
+          (?:
+            2[13-5]|
+            3[02367]|
+            4[023]|
+            5[03]|
+            6[026]
+          )\d{6,7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,9}</possibleNumberPattern>
+        <exampleNumber>12345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>7[3-9]\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>7912345678</exampleNumber>
+      </mobile>
+      <!-- No tollFree or premiumRate information can be found. -->
+      <!-- No national emergency numbers were located for Iraq. -->
+    </territory>
+
+    <!-- Iran, Islamic Republic of -->
+    <!-- http://en.wikipedia.org/wiki/%2B98 -->
+    <!-- http://www.itu.int/oth/T0202000066/en -->
+    <territory id="IR" countryCode="98" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <!-- Formatting follows wikipedia. -->
+        <numberFormat pattern="(21)(\d{3,5})">
+          <leadingDigits>21</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(21)(\d{3})(\d{3,4})">
+          <leadingDigits>21</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(2[16])(\d{4})(\d{4})">
+          <leadingDigits>2[16]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{3})(\d{3,4})">
+          <leadingDigits>
+            [13-9]|
+            2[02-9]
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [14-8]\d{6,9}|
+          [23]\d{5,9}|
+          9(?:
+            [1-4]\d{8}|
+            9\d{2,8}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{4,10}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            [145](?:
+              1[1-9]|
+              [2-9]\d
+            )\d{0,3}|
+            [23][1-9]\d{0,4}|
+            6[1-9]\d{1,4}|
+            [78]\d{2,5}
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,10}</possibleNumberPattern>
+        <exampleNumber>2123456789</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          9[1-3]\d{8}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9123456789</exampleNumber>
+      </mobile>
+      <pager>
+        <nationalNumberPattern>943\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9432123456</exampleNumber>
+      </pager>
+      <!-- No tollFree or premiumRate information can be found. -->
+      <voip>
+        <!-- Includes VSAT and Boomehen Satellite numbers. -->
+        <nationalNumberPattern>
+          (?:
+            [2-6]0\d|
+            993
+          )\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9932123456</exampleNumber>
+      </voip>
+      <uan>
+        <!-- MCI Public Relations numbers -->
+        <nationalNumberPattern>9990\d{0,6}</nationalNumberPattern>
+        <exampleNumber>9990123456</exampleNumber>
+      </uan>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            1[025]|
+            25
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Iceland -->
+    <!-- http://www.pta.is/default.aspx?cat_id=85 -->
+    <!-- http://www.pfs.is/default.aspx?cat_id=14&module_id=210&element_id=4 -->
+    <territory id="IS" countryCode="354" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{4})">
+          <leadingDigits>[4-9]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(3\d{2})(\d{3})(\d{3})">
+          <leadingDigits>3</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [4-9]\d{6}|
+          38\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- Including 87[23] XXXX here as it is listed as a fax number. -->
+        <nationalNumberPattern>
+          (?:
+            4(?:
+              [14][0-245]|
+              2[0-7]|
+              [37][0-8]|
+              5[0-3568]|
+              6\d|
+              8[0-36-8]
+            )|
+            5(?:
+              05|
+              [156]\d|
+              2[02578]|
+              3[013-7]|
+              4[03-7]|
+              7[0-2578]|
+              8[0-35-9]|
+              9[013-689]
+            )|
+            87[23]
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+        <exampleNumber>4101234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- TETRA = TErrestrial Trunked RAdio is included under mobile. -->
+        <nationalNumberPattern>
+          38[59]\d{6}|
+          (?:
+            6(?:
+              1[0-8]|
+              3[0-27-9]|
+              4[0-27]|
+              5[0-29]|
+              [67][0-69]|
+              9\d
+            )|
+            7(?:
+              5[057]|
+              7\d|
+              8[0-3]
+            )|
+            8(?:
+              2[0-5]|
+              [469]\d|
+              5[1-9]
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>6101234</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>800\d{4}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+        <exampleNumber>8001234</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>90\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+        <exampleNumber>9011234</exampleNumber>
+      </premiumRate>
+      <voip>
+        <nationalNumberPattern>49[0-24-79]\d{4}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+        <exampleNumber>4921234</exampleNumber>
+      </voip>
+      <voicemail>
+        <nationalNumberPattern>
+          388\d{6}|
+          (?:
+            6(?:
+              2[0-8]|
+              49|
+              8\d
+            )|
+            8(?:
+              2[6-9]|
+              [38]\d|
+              50|
+              7[014-9]
+            )|
+            95[48]
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>388123456</exampleNumber>
+      </voicemail>
+      <emergency>
+        <nationalNumberPattern>112</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Italy -->
+    <!-- http://en.wikipedia.org/wiki/%2B39 -->
+    <territory id="IT" countryCode="39" internationalPrefix="00" leadingZeroPossible="true">
+      <availableFormats>
+        <!-- The leading zero for fixed numbers will be prepended before the matching of these
+             regular expressions. -->
+        <numberFormat pattern="(\d{2})(\d{3,4})(\d{4})">
+          <leadingDigits>
+            0[26]|
+            55
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(0[26])(\d{4})(\d{5})">
+          <leadingDigits>0[26]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(0[26])(\d{4,6})">
+          <leadingDigits>0[26]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(0\d{2})(\d{3,4})(\d{4})">
+          <leadingDigits>0[13-57-9][0159]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{3,6})">
+          <leadingDigits>
+            0[13-57-9][0159]|
+            8(?:
+              03|
+              4[17]|
+              9[245]
+            )
+          </leadingDigits>
+          <leadingDigits>
+            0[13-57-9][0159]|
+            8(?:
+              03|
+              4[17]|
+              9(?:
+                2|
+                [45][0-4]
+              )
+            )
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(0\d{3})(\d{3})(\d{4})">
+          <leadingDigits>0[13-57-9][2-46-8]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(0\d{3})(\d{2,6})">
+          <leadingDigits>0[13-57-9][2-46-8]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{3})(\d{3,4})">
+          <leadingDigits>
+            [13]|
+            8(?:
+              00|
+              4[08]|
+              9[59]
+            )
+          </leadingDigits>
+          <leadingDigits>
+            [13]|
+            8(?:
+              00|
+              4[08]|
+              9(?:
+                5[5-9]|
+                9
+              )
+            )
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{4})(\d{4})">
+          <leadingDigits>894</leadingDigits>
+          <leadingDigits>894[5-9]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{4})(\d{4})">
+          <leadingDigits>3</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [01589]\d{5,10}|
+          3(?:
+            [12457-9]\d{8}|
+            [36]\d{7,9}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,11}</possibleNumberPattern>
+      </generalDesc>
+      <noInternationalDialling>
+        <nationalNumberPattern>848\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>848123456</exampleNumber>
+      </noInternationalDialling>
+      <fixedLine>
+        <!-- Maximum lengths in the ITU document are 10, but it states above that for numbers
+             starting with 01, the maximum length is in fact 11. In fact, online, numbers can be
+             found with other prefixes that are 11 digits long as well, so we allow it for all the
+             three and four digit area codes. -->
+        <nationalNumberPattern>
+          0(?:
+            [26]\d{4,9}|
+            (?:
+              1(?:
+                [0159]\d|
+                [27][1-5]|
+                31|
+                4[1-4]|
+                6[1356]|
+                8[2-57]
+              )|
+              3(?:
+                [0159]\d|
+                2[1-4]|
+                3[12]|
+                [48][1-6]|
+                6[2-59]|
+                7[1-7]
+              )|
+              4(?:
+                [0159]\d|
+                [23][1-9]|
+                4[245]|
+                6[1-5]|
+                7[1-4]|
+                81
+              )|
+              5(?:
+                [0159]\d|
+                2[1-5]|
+                3[2-6]|
+                4[1-79]|
+                6[4-6]|
+                7[1-578]|
+                8[3-8]
+              )|
+              7(?:
+                [0159]\d|
+                2[12]|
+                3[1-7]|
+                4[2346]|
+                6[13569]|
+                7[13-6]|
+                8[1-59]
+              )|
+              8(?:
+                [0159]\d|
+                2[34578]|
+                3[1-356]|
+                [6-8][1-5]
+              )|
+              9(?:
+                [0159]\d|
+                [238][1-5]|
+                4[12]|
+                6[1-8]|
+                7[1-6]
+              )
+            )\d{2,7}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,11}</possibleNumberPattern>
+        <exampleNumber>0212345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- According to wikipedia, TIM mobile numbers can be 9 digits long, but all others are 10
+             digits long. However, a user reported the existence of new 11 digit long numbers for
+             TIM with the prefix 33X, so this is supported also. -->
+        <nationalNumberPattern>
+          3(?:
+            [12457-9]\d{8}|
+            6\d{7,8}|
+            3\d{7,9}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9,11}</possibleNumberPattern>
+        <exampleNumber>3123456789</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>
+          80(?:
+            0\d{6}|
+            3\d{3}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,9}</possibleNumberPattern>
+        <exampleNumber>800123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <!-- Adding 0878 numbers, as per
+             http://www.aduc.it/notizia/polizia+mette+allerta+sul+numero+0878_73136.php. Other
+             premium prefixes are mentioned here:
+             http://www.dirittodellinformatica.it/news/telefonia/agcom-blocco-permanente-prefissi-144-166-892-899-20080520241.html -->
+        <nationalNumberPattern>
+          0878\d{5}|
+          1(?:
+            44|
+            6[346]
+          )\d{6}|
+          89(?:
+            2\d{3}|
+            4(?:
+              [0-4]\d{2}|
+              [5-9]\d{4}
+            )|
+            5(?:
+              [0-4]\d{2}|
+              [5-9]\d{6}
+            )|
+            9\d{6}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,10}</possibleNumberPattern>
+        <exampleNumber>899123456</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <nationalNumberPattern>
+          84(?:
+            [08]\d{6}|
+            [17]\d{3}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,9}</possibleNumberPattern>
+        <exampleNumber>848123456</exampleNumber>
+      </sharedCost>
+      <personalNumber>
+        <nationalNumberPattern>
+          1(?:
+            78\d|
+            99
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9,10}</possibleNumberPattern>
+        <exampleNumber>1781234567</exampleNumber>
+      </personalNumber>
+      <voip>
+        <nationalNumberPattern>55\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5512345678</exampleNumber>
+      </voip>
+      <shortCode>
+        <!-- Later, when we have better support for short-codes, we could add the codes
+             used for MMS and SMS services here too. -->
+        <nationalNumberPattern>
+          1(?:
+            1(?:
+              [47]|
+              6\d{3}
+            )|
+            2\d{2}|
+            4(?:
+              82|
+              9\d{1,3}
+            )|
+            5(?:
+              00|
+              1[58]|
+              2[25]|
+              3[03]|
+              44
+            )|
+            86|
+            9(?:
+              2(?:
+                [01]\d{2}|
+                [2-9]\d
+              )|
+              4\d|
+              696
+            )
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3,6}</possibleNumberPattern>
+        <exampleNumber>114</exampleNumber>
+      </shortCode>
+      <emergency>
+        <nationalNumberPattern>11[2358]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Jersey -->
+    <!-- Inherits formatting rules from the UK. -->
+    <!-- http://en.wikipedia.org/wiki/Telephone_numbers_in_the_United_Kingdom -->
+    <!-- http://www.jcra.je/cms3/v2/public/cmsChild.asp?pageID=1024&childID=1036 -->
+    <territory id="JE" countryCode="44" internationalPrefix="00"
+               nationalPrefix="0" preferredExtnPrefix=" x" nationalPrefixFormattingRule="$NP$FG">
+      <generalDesc>
+        <nationalNumberPattern>[135789]\d{6,9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6,10}</possibleNumberPattern>
+      </generalDesc>
+      <areaCodeOptional>
+        <nationalNumberPattern>1534[2-9]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>1534250123</exampleNumber>
+      </areaCodeOptional>
+      <!-- Specific to JE. -->
+      <fixedLine>
+        <!-- 1534 with 10 digits. -->
+        <nationalNumberPattern>1534\d{6}</nationalNumberPattern>
+        <exampleNumber>1534456789</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- 7509, 7700, 7797, 7829, 7937 with 10 digits. -->
+        <nationalNumberPattern>
+          7(?:
+            509|
+            7(?:
+              00|
+              97
+            )|
+            829|
+            937
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>7797123456</exampleNumber>
+      </mobile>
+      <pager>
+        <!-- Pager numbers as per GB. -->
+        <nationalNumberPattern>
+          76(?:
+            0[012]|
+            2[356]|
+            4[0134]|
+            5[49]|
+            6[0-369]|
+            77|
+            81|
+            9[39]
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>7640123456</exampleNumber>
+      </pager>
+      <!-- Specific to JE. -->
+      <tollFree>
+        <!-- 800 735, 800 781, 808 901 with 10 digits. -->
+        <nationalNumberPattern>
+          80(?:
+            07(?:
+              35|
+              81
+            )|
+            8901
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8007354567</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <!-- 871 206, 900 665, 900 669, 901 810, 907 107, 907 155 with 10 digits. -->
+        <nationalNumberPattern>
+          (?:
+            871206|
+            90(?:
+              066[59]|
+              1810|
+              71(?:
+                07|
+                55
+              )
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9018105678</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <!-- 844 405, 844 442, 844 469, 844 703, 845 041, 845 800, 870 002 with 10 digits. -->
+        <nationalNumberPattern>
+          8(?:
+            4(?:
+              4(?:
+                4(?:
+                  05|
+                  42|
+                  69
+                )|
+                703
+              )|
+              5(?:
+                041|
+                800
+              )
+            )|
+            70002
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8447034567</exampleNumber>
+      </sharedCost>
+      <personalNumber>
+        <!-- 70 1511 with 10 digits. -->
+        <nationalNumberPattern>701511\d{4}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>7015115678</exampleNumber>
+      </personalNumber>
+      <voip>
+        <!-- VoIP numbers as per GB. -->
+        <nationalNumberPattern>56\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5612345678</exampleNumber>
+      </voip>
+      <uan>
+        <!-- 300 735, 300 781, 308 901, 33d, 344 405, 344 442, 344 469, 344 703, 345 041, 345 800,
+             370 002, 371 206, 55 with 10 digits. -->
+        <nationalNumberPattern>
+          3(?:
+            0(?:
+              07(?:
+                35|
+                81
+              )|
+              8901
+            )|
+            3\d{4}|
+            4(?:
+              4(?:
+                4(?:
+                  05|
+                  42|
+                  69
+                )|
+                703
+              )|
+              5(?:
+                041|
+                800
+              )
+            )|
+            7(?:
+              0002|
+              1206
+            )
+          )\d{4}|
+          55\d{8}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5512345678</exampleNumber>
+      </uan>
+      <shortCode>
+        <!-- http://www.jcra.je/cms3/v2/public/cmsChild.asp?pageID=1024&childID=1036 -->
+        <nationalNumberPattern>
+          1(?:
+            00|
+            18\d{3}|
+            23|
+            4(?:
+              [14]|
+              28|
+              7\d
+            )|
+            5\d|
+            7(?:
+              0[12]|
+              [128]|
+              35?
+            )|
+            808|
+            9[135]
+          )|
+          23[234]
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3,6}</possibleNumberPattern>
+        <exampleNumber>150</exampleNumber>
+      </shortCode>
+      <emergency>
+        <!-- http://en.wikipedia.org/wiki/Jersey#Emergency_services -->
+        <nationalNumberPattern>
+          112|
+          999
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>999</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Jamaica -->
+    <!-- http://www.itu.int/oth/T020200006C/en -->
+    <territory id="JM" countryCode="1" leadingDigits="876" nationalPrefix="1"
+               internationalPrefix="011">
+      <generalDesc>
+        <!-- NANPA country - uses US formatting rules -->
+        <nationalNumberPattern>[589]\d{9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}(?:\d{3})?</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- Numbers have been found online for ranges 62x,63x, 656, 66[2-489]. -->
+        <nationalNumberPattern>
+          876(?:
+            5(?:
+              0[12]|
+              1[0-468]|
+              2[35]|
+              63
+            )|
+            6(?:
+              0[1-3579]|
+              1[027-9]|
+              [23]\d|
+              40|
+              5[06]|
+              6[2-489]|
+              7[05]|
+              8[04]|
+              9[4-9]
+            )|
+            7(?:
+              0[2-689]|
+              [1-6]\d|
+              8[056]|
+              9[45]
+            )|
+            9(?:
+              0[1-8]|
+              1[02378]|
+              [2-8]\d|
+              9[2-468]
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>8765123456</exampleNumber>
+      </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.
+
+             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
+             they are a mixture of fixed line and mobile. -->
+        <nationalNumberPattern>
+          876(?:
+            2[1789]\d|
+            [348]\d{2}|
+            5(?:
+              08|
+              27|
+              6[0-24-9]|
+              [3-578]\d
+            )|
+            7(?:
+              0[07]|
+              7\d|
+              8[1-47-9]|
+              9[0-36-9]
+            )|
+            9(?:
+              [01]9|
+              9[0579]
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8762101234</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>
+          8(?:
+            00|
+            55|
+            66|
+            77|
+            88
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8002123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>900[2-9]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9002123456</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <!-- http://www.nanpa.com/pdf/PL_416.pdf -->
+        <nationalNumberPattern>
+          5(?:
+            00|
+            33|
+            44
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5002345678</exampleNumber>
+      </personalNumber>
+      <emergency>
+        <nationalNumberPattern>11[09]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>119</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Jordan -->
+    <!-- http://www.trc.gov.jo/images/stories/pdf/NNP_ver200[1].pdf?lang=english -->
+    <!-- http://www.itu.int/oth/T020200006E/en -->
+    <!-- http://en.wikipedia.org/wiki/%2B962 -->
+    <territory id="JO" countryCode="962" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat nationalPrefixFormattingRule="($NP$FG)"
+          pattern="(\d)(\d{3})(\d{4})">
+          <leadingDigits>
+            [2356]|
+            87
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(7)(\d{4})(\d{4})">
+          <leadingDigits>7[457-9]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{5,6})">
+          <leadingDigits>
+            70|
+            8[0158]|
+            9
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[235-9]\d{7,8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7,9}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            2(?:
+              6(?:
+                2[0-35-9]|
+                3[0-57-8]|
+                4[24-7]|
+                5[0-24-8]|
+                [6-9][02]
+              )|
+              7(?:
+                0[1-79]|
+                10|
+                2[014-7]|
+                3[0-689]|
+                4[019]|
+                5[0-3578]
+              )
+            )|
+            32(?:
+              0[1-69]|
+              1[1-35-7]|
+              2[024-7]|
+              3\d|
+              [457][02]|
+              60
+            )|
+            53(?:
+              [013][02]|
+              2[0-59]|
+              49|
+              5[0-35-9]|
+              6[15]|
+              7[45]|
+              8[1-6]|
+              9[0-36-9]
+            )|
+            6(?:
+              2[50]0|
+              300|
+              4(?:
+                0[0125]|
+                1[2-7]|
+                2[0569]|
+                [38][07-9]|
+                4[025689]|
+                6[0-589]|
+                7\d|
+                9[0-2]
+              )|
+              5(?:
+                [01][056]|
+                2[034]|
+                3[0-57-9]|
+                4[17-8]|
+                5[0-69]|
+                6[0-35-9]|
+                7[1-379]|
+                8[0-68]|
+                9[02-39]
+              )
+            )|
+            87(?:
+              [02]0|
+              7[08]|
+              9[09]
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,8}</possibleNumberPattern>
+        <exampleNumber>62001234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          7(?:
+            55|
+            7[25-9]|
+            8[5-9]|
+            9[05-9]
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>790123456</exampleNumber>
+      </mobile>
+      <pager>
+        <nationalNumberPattern>
+          74(?:
+            66|
+            77
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>746612345</exampleNumber>
+      </pager>
+      <tollFree>
+        <nationalNumberPattern>80\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>80012345</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>900\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>90012345</exampleNumber>
+      </premiumRate>
+      <sharedCost>
+        <nationalNumberPattern>85\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>85012345</exampleNumber>
+      </sharedCost>
+      <personalNumber>
+        <nationalNumberPattern>70\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>700123456</exampleNumber>
+      </personalNumber>
+      <uan>
+        <!-- These numbers are Location Independent Services / Fixed cost according to
+             http://www.trc.gov.jo -->
+        <nationalNumberPattern>
+          8(?:
+            10|
+            8\d
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>88101234</exampleNumber>
+      </uan>
+      <shortCode>
+        <nationalNumberPattern>
+          1(?:
+            09|
+            1[01]|
+            9[024-79]
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>111</exampleNumber>
+      </shortCode>
+      <emergency>
+        <nationalNumberPattern>
+          1(?:
+            12|
+            91
+          )|
+          911
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Japan -->
+    <!-- http://www.soumu.go.jp/main_sosiki/joho_tsusin/top/tel_number/number_shitei.html -->
+    <!-- http://www.numberingplans.com/?page=dialling&sub=areacodes&ac=JP -->
+    <territory id="JP" countryCode="81" internationalPrefix="010" nationalPrefix="0"
+               nationalPrefixFormattingRule="$NP$FG" leadingZeroPossible="true" >
+      <availableFormats>
+        <!-- Toll-free, premium-rate and UAN numbers -->
+        <numberFormat pattern="(\d{3})(\d{3})(\d{3})">
+          <leadingDigits>
+            (?:
+              12|
+              57|
+              99
+            )0
+          </leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{3})(\d{4})">
+          <leadingDigits>800</leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <!-- National-only toll-free numbers (0077 and 0088) and VOIP numbers (0037) where the
+             leading "0" is considered the national prefix. -->
+        <numberFormat pattern="(\d{3})(\d{4})">
+          <leadingDigits>077</leadingDigits>
+          <format>$1-$2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{2})(\d{3,4})">
+          <leadingDigits>077</leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{2})(\d{4})">
+          <leadingDigits>088</leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{3})(\d{3,4})">
+          <leadingDigits>
+            0(?:
+              37|
+              66
+            )
+          </leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{4})(\d{4,5})">
+          <leadingDigits>
+            0(?:
+              37|
+              66
+            )
+          </leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{5})(\d{5,6})">
+          <leadingDigits>
+            0(?:
+              37|
+              66
+            )
+          </leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{6})(\d{6,7})">
+          <leadingDigits>
+            0(?:
+              37|
+              66
+            )
+          </leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <!-- Some leading digits are explicitly reserved for a particular purpose.
+             We handle them first in this rule, and let the following rules ignore those exceptions.
+             Note: The rule here is not in the files we rely on when creating the other rules.
+                   We would need to manually modify it if the Japanese goverment
+                   decided to change the rule.
+
+             (prefix): purpose
+             "20": Pagers
+             "50": IP phone
+             "70": PHS (Personal Handy-phone System, which has been used in Japan
+                   with Non-3G, Japanese-specific protocol).
+                   See also http://ja.wikipedia.org/wiki/PHS (Japanese)
+             "80" and "90": Mobile phone
+          -->
+        <numberFormat pattern="(\d{2})(\d{4})(\d{4})">
+          <leadingDigits>
+            [2579]0|
+            80[1-9]
+          </leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <!-- The order of the reg-exps are important.
+             Examples (not all):
+             - "15": 15420 -> 154-20, 15472 -> 1547-2, 15410 -> 15-410,
+             - "22": 22200 -> 22-200, 22300 -> 22-300, 22320 -> 223-20, 22350 -> 22-350
+             - "42": 42000 -> 4-2000, 42901 -> 4-2901, 42910 -> 42-910
+             - "82": 82200 -> 82-200, 82020 -> 820-20, 82400 -> 82-400
+             - "99": 99400 -> 99-400, 99430 -> 994-30, 99692 -> 9969-2, 99750 -> 997-50
+             - "993": 99330 -> 993-30, 99331 -> 99-331, 99332 -> 993-32
+          -->
+        <numberFormat pattern="(\d{4})(\d)(\d{4})">
+          <leadingDigits>
+            1(?:
+              26|
+              3[79]|
+              4[56]|
+              5[4-68]|
+              6[3-5]
+            )|
+            5(?:
+              76|
+              97
+            )|
+            499|
+            746|
+            8(?:
+              3[89]|
+              63|
+              47|
+              51
+            )|
+            9(?:
+              49|
+              80|
+              9[16]
+            )
+          </leadingDigits>
+          <leadingDigits>
+            1(?:
+              267|
+              3(?:
+                7[247]|
+                9[278]
+              )|
+              4(?:
+                5[67]|
+                66
+              )|
+              5(?:
+                47|
+                58|
+                64|
+                8[67]
+              )|
+              6(?:
+                3[245]|
+                48|
+                5[4-68]
+              )
+            )|
+            5(?:
+              76|
+              97
+            )9|
+            499[2468]|
+            7468|
+            8(?:
+              3(?:
+                8[78]|
+                96
+              )|
+              636|
+              477|
+              51[24]
+            )|
+            9(?:
+              496|
+              802|
+              9(?:
+                1[23]|
+                69
+              )
+            )
+          </leadingDigits>
+          <leadingDigits>
+            1(?:
+              267|
+              3(?:
+                7[247]|
+                9[278]
+              )|
+              4(?:
+                5[67]|
+                66
+              )|
+              5(?:
+                47|
+                58|
+                64|
+                8[67]
+              )|
+              6(?:
+                3[245]|
+                48|
+                5[4-68]
+              )
+            )|
+            5(?:
+              769|
+              979[2-69]
+            )|
+            499[2468]|
+            7468|
+            8(?:
+              3(?:
+                8[78]|
+                96[2457-9]
+              )|
+              636[2-57-9]|
+              477|
+              51[24]
+            )|
+            9(?:
+              496|
+              802|
+              9(?:
+                1[23]|
+                69
+              )
+            )
+          </leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{2})(\d{4})">
+          <leadingDigits>
+            1(?:
+              2[3-6]|
+              3[3-9]|
+              4[2-6]|
+              5[2-8]|
+              [68][2-7]|
+              7[2-689]|
+              9[1-578]
+            )|
+            2(?:
+              2[03-689]|
+              3[3-58]|
+              4[0-468]|
+              5[04-8]|
+              6[013-8]|
+              7[06-9]|
+              8[02-57-9]|
+              9[13]
+            )|
+            4(?:
+              2[28]|
+              3[689]|
+              6[035-7]|
+              7[05689]|
+              80|
+              9[3-5]
+            )|
+            5(?:
+              3[1-36-9]|
+              4[4578]|
+              5[013-8]|
+              6[1-9]|
+              7[2-8]|
+              8[14-7]|
+              9[4-9]
+            )|
+            7(?:
+              2[15]|
+              3[5-9]|
+              4[02-9]|
+              6[135-8]|
+              7[0-4689]|
+              9[014-9]
+            )|
+            8(?:
+              2[49]|
+              3[3-8]|
+              4[5-8]|
+              5[2-9]|
+              6[35-9]|
+              7[579]|
+              8[03-579]|
+              9[2-8]
+            )|
+            9(?:
+              [23]0|
+              4[02-46-9]|
+              5[024-79]|
+              6[4-9]|
+              7[2-47-9]|
+              8[02-7]|
+              9[3-7]
+            )
+          </leadingDigits>
+          <leadingDigits>
+            1(?:
+              2[3-6]|
+              3[3-9]|
+              4[2-6]|
+              5(?:
+                [236-8]|
+                [45][2-69]
+              )|
+              [68][2-7]|
+              7[2-689]|
+              9[1-578]
+            )|
+            2(?:
+              2(?:
+                [04-689]|
+                3[23]
+              )|
+              3[3-58]|
+              4[0-468]|
+              5(?:
+                5[78]|
+                7[2-4]|
+                [0468][2-9]
+              )|
+              6(?:
+                [0135-8]|
+                4[2-5]
+              )|
+              7(?:
+                [0679]|
+                8[2-7]
+              )|
+              8(?:
+                [024578]|
+                3[25-9]|
+                9[6-9]
+              )|
+              9(?:
+                11|
+                3[2-4]
+              )
+            )|
+            4(?:
+              2(?:
+                2[2-9]|
+                8[237-9]
+              )|
+              3[689]|
+              6[035-7]|
+              7(?:
+                [059][2-8]|
+                [68]
+              )|
+              80|
+              9[3-5]
+            )|
+            5(?:
+              3[1-36-9]|
+              4[4578]|
+              5[013-8]|
+              6[1-9]|
+              7[2-8]|
+              8[14-7]|
+              9(?:
+                [89][2-8]|
+                [4-7]
+              )
+            )|
+            7(?:
+              2[15]|
+              3[5-9]|
+              4[02-9]|
+              6[135-8]|
+              7[0-4689]|
+              9(?:
+                [017-9]|
+                4[6-8]|
+                5[2-478]|
+                6[2-589]
+              )
+            )|
+            8(?:
+              2(?:
+                4[4-8]|
+                9[2-8]
+              )|
+              3(?:
+                7[2-6]|
+                [3-6][2-9]|
+                8[2-5]
+              )|
+              4[5-8]|
+              5[2-9]|
+              6(?:
+                [37]|
+                5[4-7]|
+                6[2-9]|
+                8[2-8]|
+                9[236-9]
+              )|
+              7[579]|
+              8[03-579]|
+              9[2-8]
+            )|
+            9(?:
+              [23]0|
+              4[02-46-9]|
+              5[024-79]|
+              6[4-9]|
+              7[2-47-9]|
+              8[02-7]|
+              9(?:
+                3[34]|
+                [4-7]
+              )
+            )
+          </leadingDigits>
+          <leadingDigits>
+            1(?:
+              2[3-6]|
+              3[3-9]|
+              4[2-6]|
+              5(?:
+                [236-8]|
+                [45][2-69]
+              )|
+              [68][2-7]|
+              7[2-689]|
+              9[1-578]
+            )|
+            2(?:
+              2(?:
+                [04-689]|
+                3[23]
+              )|
+              3[3-58]|
+              4[0-468]|
+              5(?:
+                5[78]|
+                7[2-4]|
+                [0468][2-9]
+              )|
+              6(?:
+                [0135-8]|
+                4[2-5]
+              )|
+              7(?:
+                [0679]|
+                8[2-7]
+              )|
+              8(?:
+                [024578]|
+                3[25-9]|
+                9[6-9]
+              )|
+              9(?:
+                11|
+                3[2-4]
+              )
+            )|
+            4(?:
+              2(?:
+                2[2-9]|
+                8[237-9]
+              )|
+              3[689]|
+              6[035-7]|
+              7(?:
+                [059][2-8]|
+                [68]
+              )|
+              80|
+              9[3-5]
+            )|
+            5(?:
+              3[1-36-9]|
+              4[4578]|
+              5[013-8]|
+              6[1-9]|
+              7[2-8]|
+              8[14-7]|
+              9(?:
+                [89][2-8]|
+                [4-7]
+              )
+            )|
+            7(?:
+              2[15]|
+              3[5-9]|
+              4[02-9]|
+              6[135-8]|
+              7[0-4689]|
+              9(?:
+                [017-9]|
+                4[6-8]|
+                5[2-478]|
+                6[2-589]
+              )
+            )|
+            8(?:
+              2(?:
+                4[4-8]|
+                9(?:
+                  [3578]|
+                  20|
+                  4[04-9]|
+                  6[56]
+                )
+              )|
+              3(?:
+                7(?:
+                  [2-5]|
+                  6[0-59]
+                )|
+                [3-6][2-9]|
+                8[2-5]
+              )|
+              4[5-8]|
+              5[2-9]|
+              6(?:
+                [37]|
+                5(?:
+                  [467]|
+                  5[014-9]
+                )|
+                6(?:
+                  [2-8]|
+                  9[02-69]
+                )|
+                8[2-8]|
+                9(?:
+                  [236-8]|
+                  9[23]
+                )
+              )|
+              7[579]|
+              8[03-579]|
+              9[2-8]
+            )|
+            9(?:
+              [23]0|
+              4[02-46-9]|
+              5[024-79]|
+              6[4-9]|
+              7[2-47-9]|
+              8[02-7]|
+              9(?:
+                3(?:
+                  3[02-9]|
+                  4[0-24689]
+                )|
+                4[2-69]|
+                [5-7]
+              )
+            )
+          </leadingDigits>
+          <leadingDigits>
+            1(?:
+              2[3-6]|
+              3[3-9]|
+              4[2-6]|
+              5(?:
+                [236-8]|
+                [45][2-69]
+              )|
+              [68][2-7]|
+              7[2-689]|
+              9[1-578]
+            )|
+            2(?:
+              2(?:
+                [04-689]|
+                3[23]
+              )|
+              3[3-58]|
+              4[0-468]|
+              5(?:
+                5[78]|
+                7[2-4]|
+                [0468][2-9]
+              )|
+              6(?:
+                [0135-8]|
+                4[2-5]
+              )|
+              7(?:
+                [0679]|
+                8[2-7]
+              )|
+              8(?:
+                [024578]|
+                3[25-9]|
+                9[6-9]
+              )|
+              9(?:
+                11|
+                3[2-4]
+              )
+            )|
+            4(?:
+              2(?:
+                2[2-9]|
+                8[237-9]
+              )|
+              3[689]|
+              6[035-7]|
+              7(?:
+                [059][2-8]|
+                [68]
+              )|
+              80|
+              9[3-5]
+            )|
+            5(?:
+              3[1-36-9]|
+              4[4578]|
+              5[013-8]|
+              6[1-9]|
+              7[2-8]|
+              8[14-7]|
+              9(?:
+                [89][2-8]|
+                [4-7]
+              )
+            )|
+            7(?:
+              2[15]|
+              3[5-9]|
+              4[02-9]|
+              6[135-8]|
+              7[0-4689]|
+              9(?:
+                [017-9]|
+                4[6-8]|
+                5[2-478]|
+                6[2-589]
+              )
+            )|
+            8(?:
+              2(?:
+                4[4-8]|
+                9(?:
+                  [3578]|
+                  20|
+                  4[04-9]|
+                  6(?:
+                    5[25]|
+                    60
+                  )
+                )
+              )|
+              3(?:
+                7(?:
+                  [2-5]|
+                  6[0-59]
+                )|
+                [3-6][2-9]|
+                8[2-5]
+              )|
+              4[5-8]|
+              5[2-9]|
+              6(?:
+                [37]|
+                5(?:
+                  [467]|
+                  5[014-9]
+                )|
+                6(?:
+                  [2-8]|
+                  9[02-69]
+                )|
+                8[2-8]|
+                9(?:
+                  [236-8]|
+                  9[23]
+                )
+              )|
+              7[579]|
+              8[03-579]|
+              9[2-8]
+            )|
+            9(?:
+              [23]0|
+              4[02-46-9]|
+              5[024-79]|
+              6[4-9]|
+              7[2-47-9]|
+              8[02-7]|
+              9(?:
+                3(?:
+                  3[02-9]|
+                  4[0-24689]
+                )|
+                4[2-69]|
+                [5-7]
+              )
+            )
+          </leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{4})">
+          <leadingDigits>
+            1|
+            2(?:
+              2[37]|
+              5[5-9]|
+              64|
+              78|
+              8[39]|
+              91
+            )|
+            4(?:
+              2[2689]|
+              64|
+              7[347]
+            )|
+            5(?:
+              [2-589]|
+              39
+            )|
+            60|
+            8(?:
+              [46-9]|
+              3[279]|
+              2[124589]
+            )|
+            9(?:
+              [235-8]|
+              93
+            )
+          </leadingDigits>
+          <leadingDigits>
+            1|
+            2(?:
+              2[37]|
+              5(?:
+                [57]|
+                [68]0|
+                9[19]
+              )|
+              64|
+              78|
+              8[39]|
+              917
+            )|
+            4(?:
+              2(?:
+                [68]|
+                20|
+                9[178]
+              )|
+              64|
+              7[347]
+            )|
+            5(?:
+              [2-589]|
+              39[67]
+            )|
+            60|
+            8(?:
+              [46-9]|
+              3[279]|
+              2[124589]
+            )|
+            9(?:
+              [235-8]|
+              93[34]
+            )
+          </leadingDigits>
+          <leadingDigits>
+            1|
+            2(?:
+              2[37]|
+              5(?:
+                [57]|
+                [68]0|
+                9(?:
+                  17|
+                  99
+                )
+              )|
+              64|
+              78|
+              8[39]|
+              917
+            )|
+            4(?:
+              2(?:
+                [68]|
+                20|
+                9[178]
+              )|
+              64|
+              7[347]
+            )|
+            5(?:
+              [2-589]|
+              39[67]
+            )|
+            60|
+            8(?:
+              [46-9]|
+              3[279]|
+              2[124589]
+            )|
+            9(?:
+              [235-8]|
+              93(?:
+                31|
+                4
+              )
+            )
+          </leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{2})(\d{4})">
+          <leadingDigits>
+            2(?:
+              9[14-79]|
+              74|
+              [34]7|
+              [56]9
+            )|
+            82|
+            993
+          </leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d)(\d{4})(\d{4})">
+          <leadingDigits>
+            3|
+            4(?:
+              2[09]|
+              7[01]
+            )|
+            6[1-9]
+          </leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{4})">
+          <leadingDigits>[2479][1-9]</leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [1-9]\d{8,9}|
+          0(?:
+            [36]\d{7,14}|
+            7\d{5,7}|
+            8\d{7}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,16}</possibleNumberPattern>
+      </generalDesc>
+      <noInternationalDialling>
+        <!-- Toll-free numbers with a leading "00" cannot be dialled internationally. -->
+        <nationalNumberPattern>
+          0(?:
+            37\d{6,13}|
+            66\d{6,13}|
+            777(?:
+              [01]\d{2}|
+              5\d{3}|
+              8\d{4}
+            )|
+            882[1245]\d{4}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,16}</possibleNumberPattern>
+        <exampleNumber>0777012</exampleNumber>
+      </noInternationalDialling>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            1(?:
+              1[235-8]|
+              2[3-6]|
+              3[3-9]|
+              4[2-6]|
+              [58][2-8]|
+              6[2-7]|
+              7[2-9]|
+              9[1-9]
+            )|
+            2[2-9]\d|
+            [36][1-9]\d|
+            4(?:
+              6[02-8]|
+              [2-578]\d|
+              9[2-59]
+            )|
+            5(?:
+              6[1-9]|
+              7[2-8]|
+              [2-589]\d
+            )|
+            7(?:
+              3[4-9]|
+              4[02-9]|
+              [25-9]\d
+            )|
+            8(?:
+              3[2-9]|
+              4[5-9]|
+              5[1-9]|
+              8[03-9]|
+              [2679]\d
+            )|
+            9(?:
+              [679][1-9]|
+              [2-58]\d
+            )
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>312345678</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          (?:
+            [79]0\d|
+            80[1-9]
+          )\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>7012345678</exampleNumber>
+      </mobile>
+      <pager>
+        <nationalNumberPattern>20\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>2012345678</exampleNumber>
+      </pager>
+      <tollFree>
+        <!-- http://www.kddi.com/english/business/free_call_dx/number.html and
+             http://tm.softbank.jp/english/business/phone_service/freecall_sp/index.html
+             http://eonet.jp/home/denwa/service/access.html
+             http://ci.fusioncom.co.jp/feature/
+             http://www.auhikari.jp/service/tel/connection/index.html -->
+        <!-- Note that in fact, the number length for 0037 and 0066 numbers should extend to 21
+             digits, confirmed with Yahoo JP. However, this extends well beyond the maximum number
+             length allowed by ITU and hence our library, so we only allow numbers up to 17 digits
+             for now (including both leading 00s). -->
+        <nationalNumberPattern>
+          120\d{6}|
+          800\d{7}|
+          0(?:
+            37\d{6,13}|
+            66\d{6,13}|
+            777(?:
+              [01]\d{2}|
+              5\d{3}|
+              8\d{4}
+            )|
+            882[1245]\d{4}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,16}</possibleNumberPattern>
+        <exampleNumber>120123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>990\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>990123456</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <nationalNumberPattern>60\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>601234567</exampleNumber>
+      </personalNumber>
+      <voip>
+        <nationalNumberPattern>50[1-9]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5012345678</exampleNumber>
+      </voip>
+      <!-- Storing "unified number service" as UAN. -->
+      <uan>
+        <nationalNumberPattern>570\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>570123456</exampleNumber>
+      </uan>
+      <emergency>
+        <nationalNumberPattern>11[09]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>110</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Kenya -->
+    <!-- http://www.cck.go.ke/licensing/numbering/plan.html -->
+    <!-- http://en.wikipedia.org/wiki/+254 -->
+    <territory id="KE" countryCode="254" internationalPrefix="000"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat pattern="(\d{2})(\d{4,7})">
+          <leadingDigits>[24-6]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{6,7})">
+          <leadingDigits>7</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{3})(\d{3,4})">
+          <leadingDigits>[89]</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          20\d{6,7}|
+          [4-9]\d{6,9}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,10}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- The prefix 066 is supposed to be used only for 9-digit numbers, but none of these can
+             be found online, and the plan says also it is migrating to 9 digit numbers. Both are
+             supported for now. -->
+        <nationalNumberPattern>
+          20\d{6,7}|
+          4(?:
+            [013]\d{7}|
+            [24-6]\d{5,7}
+          )|
+          5(?:
+            [0-36-8]\d{5,7}|
+            [459]\d{5}
+          )|
+          6(?:
+            [08]\d{5}|
+            [14-79]\d{5,7}|
+            2\d{7}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{5,9}</possibleNumberPattern>
+        <exampleNumber>202012345</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>
+          7(?:
+            0[0-8]|
+            [123]\d|
+            5[0-6]|
+            7[0-5]|
+            8[5-9]
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>712123456</exampleNumber>
+      </mobile>
+      <tollFree>
+        <!-- Longer numbers have been found than the plan suggests, so we support them here too. -->
+        <nationalNumberPattern>800[24-8]\d{5,6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9,10}</possibleNumberPattern>
+        <exampleNumber>800223456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>900[02-578]\d{5}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>900223456</exampleNumber>
+      </premiumRate>
+      <shortCode>
+        <!-- Excluding SMS-only premium-rate short codes for now. -->
+        <nationalNumberPattern>
+          1(?:
+            0[09]|
+            1(?:
+              [06]|
+              9[0-2579]
+            )|
+            2[13]|
+            3[01]
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3,4}</possibleNumberPattern>
+        <exampleNumber>116</exampleNumber>
+      </shortCode>
+      <emergency>
+        <!-- http://www.kenyapolice.go.ke/report_a_crime.asp -->
+        <nationalNumberPattern>
+          112|
+          999
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>999</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Kyrgyzstan -->
+    <!-- http://www.itu.int/oth/T0202000074/en -->
+    <territory id="KG" countryCode="996" internationalPrefix="00"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{3})(\d{3})">
+          <leadingDigits>
+            31[25]|
+            [5-7]
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{4})(\d{5})">
+          <leadingDigits>
+            3(?:
+              1[36]|
+              [2-9]
+            )
+          </leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{3})(\d)(\d{3})">
+          <leadingDigits>8</leadingDigits>
+          <format>$1 $2 $3 $4</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[35-8]\d{8,9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{5,10}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- Extra area codes found on Web Search: 3147, 3150, 3948. -->
+        <nationalNumberPattern>
+          (?:
+            3(?:
+              1(?:
+                2\d|
+                3[1-9]|
+                47|
+                5[02]|
+                6[1-8]
+              )|
+              2(?:
+                22|
+                3[0-479]|
+                6[0-7]
+              )|
+              4(?:
+                22|
+                5[6-9]|
+                6[0-4]
+              )|
+              5(?:
+                22|
+                3[4-7]|
+                59|
+                6[0-5]
+              )|
+              6(?:
+                22|
+                5[35-7]|
+                6[0-3]
+              )|
+              7(?:
+                22|
+                3[468]|
+                4[1-9]|
+                59|
+                6\d|
+                7[5-7]
+              )|
+              9(?:
+                22|
+                4[1-8]|
+                6[0-8]
+              )
+            )|
+            6(?:
+              09|
+              12|
+              2[2-4]
+            )\d
+          )\d{5}
+        </nationalNumberPattern>
+        <exampleNumber>312123456</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Added 70[1235789] since SMS messages have been successfully sent to numbers with this
+             prefix, and numbers have been found like this online.  -->
+        <nationalNumberPattern>
+          5[124-7]\d{7}|
+          7(?:
+            0[0-357-9]|
+            7\d
+          )\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>700123456</exampleNumber>
+      </mobile>
+      <tollFree>
+        <!-- Add an extra digit to the number pattern since the only toll-free number found on Web
+             Search contains 10 digits instead of the 9 digits specified in the ITU document. -->
+        <nationalNumberPattern>800\d{6,7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9,10}</possibleNumberPattern>
+        <exampleNumber>800123456</exampleNumber>
+      </tollFree>
+      <!-- No premiumRate information can be found. -->
+      <!-- http://www.iru-nelti.org/index/info-app/id.216 -->
+      <emergency>
+        <nationalNumberPattern>10[123]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>101</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Cambodia -->
+    <!-- http://www.itu.int/oth/T0202000023/en -->
+    <!-- http://en.wikipedia.org/wiki/+855 -->
+    <territory id="KH" countryCode="855" internationalPrefix="00[14-9]"
+               nationalPrefix="0">
+      <availableFormats>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{3,4})" nationalPrefixFormattingRule="$NP$FG">
+          <leadingDigits>
+            1\d[1-9]|
+            [2-9]
+          </leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(1[89]00)(\d{3})(\d{3})">
+          <leadingDigits>1[89]0</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[1-9]\d{7,9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{6,10}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- Allowing subscriber numbers beginning with 5 since Mobitel have informed us they have
+             started issuing fixed-line numbers like this. Apparently, mobile-company-issued
+             fixed-line numbers are one digit longer than government-issued numbers. Moreover, the
+             range beginning with 6 seems to include some numbers that are one digit longer as well.
+             -->
+        <nationalNumberPattern>
+          (?:
+            2[3-6]|
+            3[2-6]|
+            4[2-4]|
+            [567][2-5]
+          )(?:
+            [2-47-9]|
+            5\d|
+            6\d?
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,9}</possibleNumberPattern>
+        <exampleNumber>23456789</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Adding 86 and 87 from numbers found online, along with 88 (the 88 numbers seem to be
+             one digit longer as well.) Adding 97 followed by 7 digits as such numbers have been
+             found online. Adding 14 as Mobitel have informed us they are using this prefix. Adding
+             60[1-9] based on information received from Beeline, and 857 and 61 from Cellcard. 76
+             numbers seem now to be 9 digits long. -->
+        <nationalNumberPattern>
+          (?:
+            (?:
+              1\d|
+              6[016-9]|
+              7(?:
+                [07-9]|
+                6\d
+              )
+            )[1-9]|
+            8(?:
+              0[89]|
+              [134679]\d|
+              5[2-9]|
+              8\d{2}
+            )|
+            9(?:
+              [0-589][1-9]|
+              [67][1-9]\d?
+            )
+          )\d{5}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8,9}</possibleNumberPattern>
+        <exampleNumber>91234567</exampleNumber>
+      </mobile>
+      <tollFree>
+        <!-- Adding extra prefix 180021 used by tollfreetc.com.kh. -->
+        <nationalNumberPattern>
+          1800(?:
+            1\d|
+            2[019]
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>1800123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>
+          1900(?:
+            1\d|
+            2[09]
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>1900123456</exampleNumber>
+      </premiumRate>
+      <emergency>
+        <!-- http://www.phnompenh.gov.kh/phnom-penh-city-emergency-numbers-24-hrs-169.html -->
+        <nationalNumberPattern>
+          11[789]|
+          666
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>117</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Kiribati -->
+    <!-- http://www.itu.int/oth/T0202000071/en -->
+    <!-- We include the national prefix for parsing here just in case numbers can be dialled with a
+         leading 0 - the main ITU document says this is not the case and no numbers online have been
+         found formatted this way, but Kiribati's own document lists it as a national dialling
+         prefix. -->
+    <territory id="KI" countryCode="686" internationalPrefix="00"
+               nationalPrefixForParsing="0">
+      <!-- Numbers should be formatted as a block." -->
+      <generalDesc>
+        <nationalNumberPattern>[2-689]\d{4}</nationalNumberPattern>
+        <possibleNumberPattern>\d{5}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            [234]\d|
+            50|
+            8[1-5]
+          )\d{3}
+        </nationalNumberPattern>
+        <exampleNumber>31234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Exclude 99[2349] from mobile since these are emergency numbers. -->
+        <nationalNumberPattern>
+          6\d{4}|
+          9(?:
+            [0-8]\d|
+            9[015-8]
+          )\d{2}
+        </nationalNumberPattern>
+        <exampleNumber>61234</exampleNumber>
+      </mobile>
+      <shortCode>
+        <nationalNumberPattern>
+          10(?:
+            [0-8]|
+            5[01259]
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3,4}</possibleNumberPattern>
+        <exampleNumber>100</exampleNumber>
+      </shortCode>
+      <emergency>
+        <!-- www.tskl.net.ki/directory.pdf -->
+        <nationalNumberPattern>99[2349]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>999</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Comoros -->
+    <!-- http://www.itu.int/oth/T020200002D/en -->
+    <territory id="KM" countryCode="269" internationalPrefix="00">
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{2})(\d{2})">
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>[379]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- CDMA phones are included here, as they are considered as an extension of fixed line:
+             http://www.comorestelecom.km/presentationcdma.php -->
+        <nationalNumberPattern>
+          7(?:
+            6[0-37-9]|
+            7[0-57-9]
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>7712345</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>3[234]\d{5}</nationalNumberPattern>
+        <exampleNumber>3212345</exampleNumber>
+      </mobile>
+      <premiumRate>
+        <!-- These are referred to as value-added services in the plan and no further information
+             can be found. -->
+        <nationalNumberPattern>
+          (?:
+            39[01]|
+            9[01]0
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>9001234</exampleNumber>
+      </premiumRate>
+      <!-- http://travel.state.gov/travel/cis_pa_tw/cis/cis_1091.html -->
+      <emergency>
+        <nationalNumberPattern>1[78]</nationalNumberPattern>
+        <possibleNumberPattern>\d{2}</possibleNumberPattern>
+        <exampleNumber>17</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Saint Kitts and Nevis -->
+    <!-- http://www.itu.int/oth/T02020000B0/en -->
+    <territory id="KN" countryCode="1" leadingDigits="869" nationalPrefix="1"
+               internationalPrefix="011">
+      <generalDesc>
+        <!-- NANPA country - uses US formatting rules -->
+        <nationalNumberPattern>[589]\d{9}</nationalNumberPattern>
+        <possibleNumberPattern>\d{7}(?:\d{3})?</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- Adding the 869 302 prefix as it is used by Marriott Hotels, even though no other record
+             of it can be found. -->
+        <nationalNumberPattern>
+          869(?:
+            2(?:
+              29|
+              36
+            )|
+            302|
+            4(?:
+              6[5-9]|
+              70
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <exampleNumber>8692361234</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <!-- Added some more prefixes in the 66 and 76 range from online numbers. -->
+        <nationalNumberPattern>
+          869(?:
+            5(?:
+              5[6-8]|
+              6[5-7]
+            )|
+            66\d|
+            76[02-6]
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8695561234</exampleNumber>
+      </mobile>
+      <tollFree>
+        <nationalNumberPattern>
+          8(?:
+            00|
+            55|
+            66|
+            77|
+            88
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>8002123456</exampleNumber>
+      </tollFree>
+      <premiumRate>
+        <nationalNumberPattern>900[2-9]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>9002123456</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <!-- http://www.nanpa.com/pdf/PL_416.pdf -->
+        <nationalNumberPattern>
+          5(?:
+            00|
+            33|
+            44
+          )[2-9]\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5002345678</exampleNumber>
+      </personalNumber>
+      <emergency>
+        <!-- http://www.stkittstourism.kn/explore-st-kitts-facts.php
+             http://barbados.usembassy.gov/emergency-st_kitts_nevis.html -->
+        <nationalNumberPattern>
+          333|
+          9(?:
+            11|
+            99
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>999</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!--  Korea, Dem. People's Rep. of -->
+    <!-- http://en.wikipedia.org/wiki/%2B850 -->
+    <territory id="KP" countryCode="850" internationalPrefix="00|99"
+               nationalPrefix="0" nationalPrefixFormattingRule="$NP$FG">
+      <availableFormats>
+        <numberFormat pattern="(\d{3})(\d{3})(\d{4})">
+          <leadingDigits>1</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d)(\d{3})(\d{4})">
+          <leadingDigits>2</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{3})(\d{3})">
+          <leadingDigits>8</leadingDigits>
+          <format>$1 $2 $3</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          1\d{9}|
+          [28]\d{7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>
+          \d{6,8}|
+          \d{10}
+        </possibleNumberPattern>
+      </generalDesc>
+      <noInternationalDialling>
+        <!-- For numbers starting with 2, only the 2381 range can be dialed internationally. -->
+        <nationalNumberPattern>
+          2(?:
+            [0-24-9]\d{2}|
+            3(?:
+              [0-79]\d|
+              8[02-9]
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>23821234</exampleNumber>
+      </noInternationalDialling>
+      <fixedLine>
+        <!-- Covers only numbers from Pyongyang and Rason Economic Special Zone. According to
+             wikipedia, other ranges of phone numbers are top secret, unpublished, and not dialable
+             from overseas. Also, there is conflicting information about the length of fixed-line
+             numbers, so here we are following Wikipedia. -->
+        <nationalNumberPattern>
+          2\d{7}|
+          85\d{6}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{6,8}</possibleNumberPattern>
+        <exampleNumber>21234567</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>19[123]\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>1921234567</exampleNumber>
+      </mobile>
+      <!-- According to the following webpage, there is no emergency number in
+           North Korea: http://www.netglobers.com/asia/north-korea-emergency-numbers-in-north-korea.html -->
+    </territory>
+
+    <!-- Korea (Rep. of) -->
+    <!-- http://www.itu.int/oth/T0202000072/en -->
+    <!-- http://en.wikipedia.org/wiki/%2B82 -->
+    <!-- http://www.kcc.go.kr/user.do?mode=view&page=P02030300&dc=K02030300&boardId=1074&boardSeq=2349 -->
+    <!-- http://www.kcc.go.kr/user.do?mode=view&page=P02030300&dc=K02030300&boardId=1074&boardSeq=2240 -->
+    <!-- http://www.telecentro.co.kr/sub/index.php?job=detail&ebcf_id=faq&page=1&mid=0503&eb_seq=36 -->
+    <!-- Exceptions :
+        internationalPrefix
+            0031, 0033, 0071, 0073 - Special services of KT and DACOM, ignorable
+        nationalPrefix
+            1[4-6]XX-YYYY - Country-wide common number services, display as it is without hyphens -->
+    <territory id="KR" countryCode="82" internationalPrefix="00(?:[124-68]|[37]\d{2})"
+               nationalPrefix="0" nationalPrefixForParsing="0(8[1-46-8]|85\d{2})?"
+               nationalPrefixFormattingRule="$NP$FG" carrierCodeFormattingRule="$NP$CC-$FG">
+      <availableFormats>
+        <numberFormat pattern="(\d{2})(\d{4})(\d{4})">
+          <leadingDigits>
+            1(?:
+              0|
+              1[19]|
+              [69]9|
+              5[458]
+            )|
+            [57]0
+          </leadingDigits>
+          <leadingDigits>
+            1(?:
+              0|
+              1[19]|
+              [69]9|
+              5(?:
+                44|
+                59|
+                8
+              )
+            )|
+            [57]0
+          </leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{3,4})(\d{4})">
+          <leadingDigits>
+            1(?:
+              [169][2-8]|
+              [78]|
+              5[1-4]
+            )|
+            [68]0|
+            [3-6][1-9][1-9]
+          </leadingDigits>
+          <leadingDigits>
+            1(?:
+              [169][2-8]|
+              [78]|
+              5(?:
+                [1-3]|
+                4[56]
+              )
+            )|
+            [68]0|
+            [3-6][1-9][1-9]
+          </leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d)(\d{4})">
+          <leadingDigits>131</leadingDigits>
+          <leadingDigits>1312</leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{2})(\d{4})">
+          <leadingDigits>131</leadingDigits>
+          <leadingDigits>131[13-9]</leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{3})(\d{3})(\d{4})">
+          <leadingDigits>13[2-9]</leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <!-- 030 numbers are used for Unified Messaging Services, according to the plan. There is a
+             limit of what digits may follow the 030, but we ignore that here. These numbers are
+             actually not supported for validation purposes by the library at the moment as no
+             online examples can be found, but we leave theme here so formatting continues to work
+             if they are entered. -->
+        <numberFormat pattern="(\d{2})(\d{2})(\d{3})(\d{4})">
+          <leadingDigits>30</leadingDigits>
+          <format>$1-$2-$3-$4</format>
+        </numberFormat>
+        <numberFormat pattern="(\d)(\d{3,4})(\d{4})">
+          <leadingDigits>2[1-9]</leadingDigits>
+          <format>$1-$2-$3</format>
+        </numberFormat>
+        <numberFormat pattern="(\d)(\d{3,4})">
+          <leadingDigits>21[0-46-9]</leadingDigits>
+          <format>$1-$2</format>
+        </numberFormat>
+        <numberFormat pattern="(\d{2})(\d{3,4})">
+          <leadingDigits>[3-6][1-9]1</leadingDigits>
+          <leadingDigits>
+            [3-6][1-9]1(?:
+              [0-46-9]
+            )
+          </leadingDigits>
+          <format>$1-$2</format>
+        </numberFormat>
+        <!-- Company numbers. -->
+        <numberFormat pattern="(\d{4})(\d{4})"
+          nationalPrefixFormattingRule="$FG">
+          <leadingDigits>
+            1(?:
+              5[46-9]|
+              6[04678]
+            )
+          </leadingDigits>
+          <leadingDigits>
+            1(?:
+              5(?:
+                44|
+                66|
+                77|
+                88|
+                99
+              )|
+              6(?:
+                00|
+                44|
+                6[16]|
+                70|
+                88
+              )
+            )
+          </leadingDigits>
+          <format>$1-$2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [1-7]\d{3,9}|
+          8\d{8}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{4,10}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <!-- We omit 049, supposedly for Kaesong Industrial Region, since real numbers can't be
+             found, and it is in North Korea anyway. We support 7-8 digits long subscriber numbers
+             starting with 1 based on evidence of real numbers found online. -->
+        <nationalNumberPattern>
+          (?:
+            2|
+            3[1-3]|
+            [46][1-4]|
+            5[1-5]
+          )(?:
+            1\d{2,3}|
+            [1-9]\d{6,7}
+          )
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{4,10}</possibleNumberPattern>
+        <exampleNumber>22123456</exampleNumber>
+      </fixedLine>
+      <mobile>
+        <nationalNumberPattern>1[0-26-9]\d{7,8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9,10}</possibleNumberPattern>
+        <exampleNumber>1023456789</exampleNumber>
+      </mobile>
+      <pager>
+        <nationalNumberPattern>15\d{7,8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9,10}</possibleNumberPattern>
+        <exampleNumber>1523456789</exampleNumber>
+      </pager>
+      <tollFree>
+        <nationalNumberPattern>80\d{7}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>801234567</exampleNumber>
+      </tollFree>
+      <!-- The information below is provided by a Korean person. -->
+      <premiumRate>
+        <nationalNumberPattern>60[2-9]\d{6}</nationalNumberPattern>
+        <possibleNumberPattern>\d{9}</possibleNumberPattern>
+        <exampleNumber>602345678</exampleNumber>
+      </premiumRate>
+      <personalNumber>
+        <nationalNumberPattern>50\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>5012345678</exampleNumber>
+      </personalNumber>
+      <voip>
+        <nationalNumberPattern>70\d{8}</nationalNumberPattern>
+        <possibleNumberPattern>\d{10}</possibleNumberPattern>
+        <exampleNumber>7012345678</exampleNumber>
+      </voip>
+      <uan>
+        <nationalNumberPattern>
+          1(?:
+            5(?:
+              44|
+              66|
+              77|
+              88|
+              99
+            )|
+            6(?:
+              00|
+              44|
+              6[16]|
+              70|
+              88
+            )
+          )\d{4}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{8}</possibleNumberPattern>
+        <exampleNumber>15441234</exampleNumber>
+      </uan>
+      <emergency>
+        <nationalNumberPattern>11[29]</nationalNumberPattern>
+        <possibleNumberPattern>\d{3}</possibleNumberPattern>
+        <exampleNumber>112</exampleNumber>
+      </emergency>
+    </territory>
+
+    <!-- Kuwait -->
+    <!-- http://www.itu.int/oth/T0202000073/en -->
+    <territory id="KW" countryCode="965" internationalPrefix="00">
+      <availableFormats>
+        <!-- Format is from ITU. -->
+        <numberFormat pattern="(\d{4})(\d{3,4})">
+          <leadingDigits>[1269]</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+        <numberFormat pattern="(5[015]\d)(\d{5})">
+          <leadingDigits>5</leadingDigits>
+          <format>$1 $2</format>
+        </numberFormat>
+      </availableFormats>
+      <generalDesc>
+        <nationalNumberPattern>
+          [12569]\d{6,7}
+        </nationalNumberPattern>
+        <possibleNumberPattern>\d{7,8}</possibleNumberPattern>
+      </generalDesc>
+      <fixedLine>
+        <nationalNumberPattern>
+          (?:
+            18\d|
+            2(?:
+              [23]\d{2}|
+              4(?:
+                [1-35-9]\d|
+                44
+              )|
+              5(?:
+                0[034]|
+                [2-46]\d|
+                5[1-3]|
+                7[1-7]
+              )
+            )
+          )\d{4}