1cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org// Copyright (C) 2013 Google Inc.
2cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org//
3cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org// Licensed under the Apache License, Version 2.0 (the "License");
4cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org// you may not use this file except in compliance with the License.
5cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org// You may obtain a copy of the License at
6cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org//
7cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org// http://www.apache.org/licenses/LICENSE-2.0
8cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org//
9cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org// Unless required by applicable law or agreed to in writing, software
10cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org// distributed under the License is distributed on an "AS IS" BASIS,
11cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org// See the License for the specific language governing permissions and
13cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org// limitations under the License.
14cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org//
15f5ef4fd1a0194fb339c286a0921a00a8dc9cc698rouslan@chromium.org// The data in this file is automatically generated.
16cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org
17cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org#include "region_data_constants.h"
18cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org
199f47fe3ed525accac995b095d408a825673a2ee1roubert@google.com#include <libaddressinput/address_field.h>
209f47fe3ed525accac995b095d408a825673a2ee1roubert@google.com#include <libaddressinput/util/basictypes.h>
219f47fe3ed525accac995b095d408a825673a2ee1roubert@google.com
22cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org#include <algorithm>
23e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com#include <cstddef>
24cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org#include <map>
25e23ab5d6f7e894252ed786304d3509c1ea19c431roubert@google.com#include <set>
26cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org#include <string>
27cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org#include <utility>
28cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org#include <vector>
29cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org
30e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com#include "address_field_util.h"
319f47fe3ed525accac995b095d408a825673a2ee1roubert@google.com#include "format_element.h"
32e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com#include "lookup_key.h"
33e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com
34cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.orgnamespace i18n {
35cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.orgnamespace addressinput {
36cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org
3762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com// ---- BEGIN AUTOGENERATED CODE ----
38cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.orgnamespace {
39cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org
40cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.orgstd::map<std::string, std::string> InitRegionData() {
41cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  std::map<std::string, std::string> region_data;
4262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com  region_data.insert(std::make_pair("AC", "{"
43212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"ASCN 1ZZ\","
4462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
4562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "}"));
46cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("AD", "{"
4739fc575f34f8024ae785ec597a3125d8d00ebd0alararennie@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
4839fc575f34f8024ae785ec597a3125d8d00ebd0alararennie@google.com      "\"require\":\"A\","
49212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"AD100,AD501,AD700\","
50212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.correos.es/comun/CodigosPostales/1010_s-CodPostal.asp\?Provincia=\","
5162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ca\""
52cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
53cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("AE", "{"
5462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C\","
5562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"AC\","
5662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar\""
57cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
58cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("AF", "{"
59212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"1001,2601,3801\","
60212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://afghanpost.gov.af/Postal%20Code/\","
6162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fa~ps\""
62cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
63cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("AG", "{"
6462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"A\","
6562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
66cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
67cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("AI", "{"
68212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"2640\","
6962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
70cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
71cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("AL", "{"
72212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"1001,1017,3501\","
7362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"sq\""
74cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
75cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("AM", "{"
7662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z%n%C%n%S\","
7762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"lfmt\":\"%N%n%O%n%A%n%Z%n%C%n%S\","
78212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"375010,0002,0010\","
7962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"hy\""
80cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
81cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("AO", "{"
8262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"pt\""
83cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
84cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("AQ", "{"
85212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"languages\":\"\""
86cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
87cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("AR", "{"
88cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%Z %C%n%S\","
8962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"state\","
90212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"C1070AAM,C1000WAM,B1000TBU,X5187XAB\","
9166cbb6769d5543af87dfe4040884248beff94f30lararennie@google.com      "\"posturl\":\"http://www.correoargentino.com.ar/formularios/cpa\","
9262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"es\""
93cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
94cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("AS", "{"
95cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%C %S %Z\","
9662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACSZ\","
97cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"zip_name_type\":\"zip\","
9862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"state\","
99212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"96799\","
100212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://zip4.usps.com/zip4/welcome.jsp\","
10162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"sm~en\""
102cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
103cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("AT", "{"
10462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%n%Z %C\","
10562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
106212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"1010,3741\","
107212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.post.at/post_subsite_postleitzahlfinder.php\","
10862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"de\""
109cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
110cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("AU", "{"
111cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%O%n%N%n%A%n%C %S %Z\","
11262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACSZ\","
11362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"state\","
114212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"2060,3171,6430,4000,4006,3001\","
115212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www1.auspost.com.au/postcodes/\","
11662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
117cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
118cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("AW", "{"
11962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"nl~pap\""
120cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
121cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("AX", "{"
12210f9a352e49e80a6061bdc354fc833dacf94a5e4rouslan@chromium.org      "\"fmt\":\"%O%n%N%n%A%nAX-%Z %C%n\\u00c5LAND\","
12362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
124212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"22150,22550,22240,22710,22270,22730,22430\","
125212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.posten.ax/department.con\?iPage=123\","
12662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"sv\""
127cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
128cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("AZ", "{"
12962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%nAZ %Z %C\","
130212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"1000\","
13162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"az-Latn~az-Cyrl\""
132cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
133cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BA", "{"
13462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
135212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"71000\","
136212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.post.ba/postanski_brojevi.php\","
13762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"bs-Cyrl~bs-Latn~hr~sr-Cyrl~sr-Latn\""
138cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
139cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BB", "{"
14062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"parish\","
141212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"BB23026,BB22025\","
142212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://barbadospostal.com/zipcodes.html\","
14362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
144cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
145cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BD", "{"
14662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C - %Z\","
147212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"1340,1000\","
148212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.bangladeshpost.gov.bd/PostCode.asp\","
14962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"bn\""
150cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
151cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BE", "{"
15262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%n%Z %C\","
15362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
154212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"4000,1000\","
155212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.post.be/site/nl/residential/customerservice/search/postal_codes.html\","
15662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"nl~fr~de\""
157cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
158cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BF", "{"
15962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %X\","
16062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
161cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
162cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BG", "{"
16362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
164212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"1000,1700\","
165212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.bgpost.bg/\?cid=5\","
16662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"bg\""
167cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
168cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BH", "{"
16962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %Z\","
170212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"317\","
17162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar\""
172cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
173cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BI", "{"
17462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"rn~fr\""
175cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
176cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BJ", "{"
17762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
178cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
179cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BL", "{"
18062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%n%Z %C %X\","
18162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
182212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"97100\","
183212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.laposte.fr/Particulier/Utiliser-nos-outils-pratiques/Outils-et-documents/Trouvez-un-code-postal\","
18462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
185cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
186cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BM", "{"
18762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %Z\","
188212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"FL 07,HM GX,HM 12\","
189212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.landvaluation.bm/\","
19062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
191cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
192cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BN", "{"
19362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %Z\","
194212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"BT2328,KA1131,BA1511\","
195212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.post.gov.bn/index.php/extensions/postcode-guide\","
19662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ms-Latn~ms-Arab\""
197cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
198cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BO", "{"
19962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"es~qu~ay\""
200cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
201cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BR", "{"
202cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%O%n%N%n%A%n%C-%S%n%Z\","
20362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ASCZ\","
20462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"state\","
205212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"40301-110,70002-900\","
206212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.correios.com.br/servicos/cep/cep_default.cfm\","
20762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"pt\""
208cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
209cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BS", "{"
210cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%C, %S\","
21162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"island\","
21262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
213cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
214cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BT", "{"
215212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"11001,31101,35003\","
216212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.bhutanpost.com.bt/postcode/postcode.php\","
21762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"dz\""
218cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
219cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BV", "{"
220212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"languages\":\"\""
221cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
222cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BW", "{"
22362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en~tn\""
224cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
225cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BY", "{"
22662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%S%n%Z %C %X%n%A%n%O%n%N\","
227212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"20050,223016,225860,220050\","
228212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://zip.belpost.by\","
22962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"be~ru\""
230cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
231cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("BZ", "{"
23262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
233cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
234cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("CA", "{"
23562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %S %Z\","
23662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACSZ\","
237212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"H3Z 2Y7,V8X 3X4,T0L 1K0,T0H 1A0,K1A 0B1\","
238212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.canadapost.ca/cpotools/apps/fpc/personal/findByCity\?execution=e2s1\","
23962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en~fr\""
240cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
241cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("CC", "{"
24262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%n%C %S %Z\","
24362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
244cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
245cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("CD", "{"
24662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %X\","
24762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
248cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
249cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("CF", "{"
25062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr~sg\""
251cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
252cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("CG", "{"
25362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr~ln\""
254cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
255cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("CH", "{"
25662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%nCH-%Z %C\","
25762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
258212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"2544,1211,1556,3030\","
259212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.post.ch/db/owa/pv_plz_pack/pr_main\","
26062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"de~fr~it\""
261cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
262cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("CI", "{"
26362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%X %A %C %X\","
26462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
265cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
266cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("CK", "{"
26762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %Z\","
26862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
269cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
270cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("CL", "{"
271cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%Z %C%n%S\","
27262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"state\","
273212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"8340457,8720019,1230000,8329100\","
274212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.correos.cl/SitePages/home.aspx\","
27562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"es\""
276cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
277cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("CM", "{"
27862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr~en\""
279cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
280cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("CN", "{"
28162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%Z%n%S%C%D%n%A%n%O%n%N\","
28266cbb6769d5543af87dfe4040884248beff94f30lararennie@google.com      "\"lfmt\":\"%N%n%O%n%A%n%D%n%C%n%S, %Z\","
28362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACSZ\","
284212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"266033,317204,100096,100808\","
285212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.cpdc.com.cn/postcdQueryAction.do\?reqCode=gotoQueryPostAddr\","
28662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"zh-Hans\""
287cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
288cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("CO", "{"
28962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C, %S\","
290212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"111221,130001,760011\","
291212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.codigopostal4-72.com.co/codigosPostales/\","
29262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"es\""
293cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
294cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("CR", "{"
29562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
296212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"1000,2010,1001\","
297212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"https://www.correos.go.cr/nosotros/codigopostal/busqueda.html\","
29862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"es\""
299cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
300cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("CV", "{"
301cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%Z %C%n%S\","
30262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"island\","
303212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"7600\","
30462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"pt\""
305cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
306cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("CX", "{"
30762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%n%C %S %Z\","
30862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
309cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
310cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("CY", "{"
31162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
312212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"2008,3304,1900\","
31362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"el~tr\""
314cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
315cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("CZ", "{"
31662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
317212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"100 00,251 66,530 87,110 00,225 99\","
318212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://psc.ceskaposta.cz/CleanForm.action\","
31962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"cs\""
320cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
321cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("DE", "{"
32262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
32362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
324212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"26133,53225\","
325212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.postdirekt.de/plzserver/\","
32662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"de\""
327cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
328cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("DJ", "{"
32962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar~fr\""
330cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
331cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("DK", "{"
332dcaf3df8a8051485562f94565cac2baa71dafe7dkeghani@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
33362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
334212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"8660,1566\","
335212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.postdanmark.dk/da/Privat/Kundeservice/postnummerkort/Sider/Find-postnummer.aspx\","
33662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"da\""
337cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
338cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("DM", "{"
33962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
340cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
341cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("DO", "{"
34262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
343212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"11903,10101\","
344212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://inposdom.gob.do/servicios/codigo-postal.html#buscar_codigo\","
34562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"es\""
346cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
347cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("DZ", "{"
34862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
349212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"40304,16027\","
35062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar~fr\""
351cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
352cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("EC", "{"
35362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z%n%C\","
354212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"EC090112,090105,H0103C,P0133B,P0133A,P0133V\","
35562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"es\""
356cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
357cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("EE", "{"
35862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
359212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"69501,11212,1001\","
360212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.post.ee/\?op=sihtnumbriotsing\","
36162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"et\""
362cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
363cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("EG", "{"
36462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C%n%S%n%Z\","
36562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"lfmt\":\"%N%n%O%n%A%n%C%n%S%n%Z\","
366212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"12411,11599\","
36762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar\""
368cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
369cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("EH", "{"
37062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
371212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"70000,72000\","
37262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar\""
373cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
374cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("ER", "{"
37562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ti~en~ar\""
376cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
377cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("ES", "{"
37862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C %S\","
37962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACSZ\","
380212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"28039,28300,28070\","
381212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.correos.es/contenido/13-MenuRec2/04-MenuRec24/1010_s-CodPostal.asp\","
38262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"es\""
383cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
384cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("ET", "{"
38562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
386212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"1000\","
38762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"am\""
388cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
389cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("FI", "{"
39062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%nFI-%Z %C\","
39162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
392212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"00550,00011\","
393212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.verkkoposti.com/e3/postinumeroluettelo\","
39462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fi~sv\""
395cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
396cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("FJ", "{"
39762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en~fj\""
398cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
399cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("FK", "{"
40062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%X%n%C%n%Z\","
40162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
402212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"FIQQ 1ZZ\","
40362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
404cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
405cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("FM", "{"
406cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%C %S %Z\","
40762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACSZ\","
408cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"zip_name_type\":\"zip\","
40962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"state\","
410212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"96941,96944\","
411212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://zip4.usps.com/zip4/welcome.jsp\","
41262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"chk~pon~kos~yap~en~uli\""
413cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
414cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("FO", "{"
41562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%nFO%Z %C\","
416212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"100\","
417212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.postur.fo/\","
41862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fo\""
419cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
420cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("FR", "{"
42162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%n%Z %C %X\","
42262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
423212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"33380,34092,33506\","
424212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.laposte.fr/Particulier/Utiliser-nos-outils-pratiques/Outils-et-documents/Trouvez-un-code-postal\","
42562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
426cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
427cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("GA", "{"
42862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
429cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
430cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("GB", "{"
431cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%C%n%S%n%Z\","
43262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
43362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"county\","
434212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"EC1Y 8SY,GIR 0AA,M2 5BQ,M34 4AB,CR0 2YR,DN16 9AA,W1A 4ZZ,EC1A 1HQ,OX14 4PG,BS18 8HF,NR25 7HG,RH6 OHP,BH23 6AA,B6 5BA,RH6 0HP,SO23 9AP,PO1 3AX,BFPO 61\","
435212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.royalmail.com/postcode-finder\","
43662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
437cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
438cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("GD", "{"
43962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
440cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
441cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("GE", "{"
44262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
443212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"0101\","
444212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.georgianpost.ge/index.php\?page=10\","
44562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ka\""
446cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
447cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("GF", "{"
44862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%n%Z %C %X\","
44962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
450212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"97300\","
451212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.laposte.fr/Particulier/Utiliser-nos-outils-pratiques/Outils-et-documents/Trouvez-un-code-postal\","
45262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
453cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
454cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("GG", "{"
45562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%X%n%C%nGUERNSEY%n%Z\","
45662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
457212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"GY1 1AA,GY2 2BT\","
458212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.guernseypost.com/postcode_finder/\","
45962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
460cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
461cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("GH", "{"
46262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
463cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
464cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("GI", "{"
46562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A\","
46662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"A\","
467212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"GX11 1AA\","
46862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
469cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
470cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("GL", "{"
47162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
47262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
473212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"3900,3950,3911\","
47462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"kl~da\""
475cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
476cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("GM", "{"
47762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
478cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
479cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("GN", "{"
48062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%Z %A %C\","
481212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"001,200,100\","
48262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
483cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
484cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("GP", "{"
48562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%n%Z %C %X\","
48662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
487212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"97100\","
488212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.laposte.fr/Particulier/Utiliser-nos-outils-pratiques/Outils-et-documents/Trouvez-un-code-postal\","
48962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
490cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
491cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("GQ", "{"
49262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"es~fr\""
493cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
494cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("GR", "{"
49562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
49662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
497212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"151 24,151 10,101 88\","
498212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.elta.gr/findapostcode.aspx\","
49962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"el\""
500cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
501cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("GS", "{"
50262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%X%n%C%n%Z\","
503212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"require\":\"ACZ\","
504212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"SIQQ 1ZZ\","
505212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"languages\":\"\""
506cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
507cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("GT", "{"
50862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z- %C\","
509212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"09001,01501\","
51062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"es\""
511cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
512cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("GU", "{"
513cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%C %S %Z\","
51462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACSZ\","
515cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"zip_name_type\":\"zip\","
51662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"state\","
517212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"96910,96931\","
518212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://zip4.usps.com/zip4/welcome.jsp\","
51962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en~ch\""
520cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
521cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("GW", "{"
52262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
523212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"1000,1011\","
52462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"pt\""
525cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
526cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("GY", "{"
52762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
528cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
529cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("HK", "{"
530cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%S%n%A%n%O%n%N\","
53162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"lfmt\":\"%N%n%O%n%A%n%S\","
53262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"AS\","
53362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"area\","
53462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"zh-Hant~en\""
535cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
536cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("HM", "{"
537212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"fmt\":\"%O%n%N%n%A%n%C %S %Z\","
538212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"languages\":\"\""
539cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
540cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("HN", "{"
54162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C, %S%n%Z\","
54262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACS\","
54362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"es\""
544cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
545cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("HR", "{"
54662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%nHR-%Z %C\","
547212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"10000,21001,10002\","
548212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.posta.hr/default.aspx\?pretpum\","
54962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"hr\""
550cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
551cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("HT", "{"
55262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%nHT%Z %C %X\","
553212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"6120,5310,6110,8510\","
55462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ht~fr\""
555cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
556cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("HU", "{"
55762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%C%n%A%n%Z\","
558212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"1037,2380,1540\","
559212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://posta.hu/ugyfelszolgalat/iranyitoszam_kereso\","
56062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"hu\""
561cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
562cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("ID", "{"
56362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C%n%S %Z\","
56462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"district\","
565212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"40115\","
56662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"id\""
567cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
568cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("IE", "{"
569cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%C%n%S\","
57062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"county\","
57162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
572cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
573cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("IL", "{"
57462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %Z\","
575212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"9614303\","
576212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.israelpost.co.il/zipcode.nsf/demozip\?openform\","
57762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"iw~ar\""
578cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
579cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("IM", "{"
58062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%X%n%C%n%Z\","
58162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
582212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"IM2 1AA,IM99 1PS\","
583212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.gov.im/post/postal/fr_main.asp\","
58462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en~gv\""
585cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
586cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("IN", "{"
587cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%C %Z%n%S\","
58862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACSZ\","
58962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"state\","
590212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"110034,110001\","
591212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.indiapost.gov.in/pin/pinsearch.aspx\","
59262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
593cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
594cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("IO", "{"
59562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%X%n%C%n%Z\","
59662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
597212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"BBND 1ZZ\","
59862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
599cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
600cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("IQ", "{"
60162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%n%C, %S%n%Z\","
60262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACS\","
60362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar\""
604cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
605cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("IS", "{"
60662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
607212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"320,121,220,110\","
608212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.postur.is/cgi-bin/hsrun.exe/Distributed/vefur/vefur.htx;start=HS_landakort_postnumer\","
60962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"is\""
610cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
611cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("IT", "{"
61262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C %S\","
61362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACSZ\","
614212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"00144,47037,39049\","
615212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.poste.it/online/cercacap/\","
61662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"it\""
617cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
618cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("JE", "{"
61962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%X%n%C%nJERSEY%n%Z\","
62062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
621212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"JE1 1AA,JE2 2BT\","
622212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.jerseypost.com/tools/postcode-address-finder/\","
62362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
624cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
625cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("JM", "{"
626cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%C%n%S %X\","
62762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACS\","
62862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"parish\","
62962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
630cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
631cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("JO", "{"
63262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %Z\","
633212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"11937,11190\","
63462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar\""
635cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
636cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("JP", "{"
63710f9a352e49e80a6061bdc354fc833dacf94a5e4rouslan@chromium.org      "\"fmt\":\"\\u3012%Z%n%S%C%n%A%n%O%n%N\","
63862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"lfmt\":\"%N%n%O%n%A%n%C, %S%n%Z\","
63962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACSZ\","
64062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"prefecture\","
641212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"154-0023,350-1106,951-8073,112-0001,208-0032,231-0012\","
642212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://search.post.japanpost.jp/zipcode/\","
64362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ja\""
644cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
645cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("KE", "{"
64662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C%n%Z\","
647212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"20100,00100\","
64862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en~sw\""
649cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
650cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("KG", "{"
65162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%Z %C %X%n%A%n%O%n%N\","
652212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"720001\","
65362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ky-Cyrl~ru\""
654cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
655cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("KH", "{"
65662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %Z\","
657212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"12203,14206,12000\","
65862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"km\""
659cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
660cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("KI", "{"
661cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%S%n%C\","
66262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"island\","
66362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en~gil\""
664cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
665cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("KM", "{"
66662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar~fr~zdj\""
667cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
668cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("KN", "{"
669cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%C, %S\","
67062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACS\","
67162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"island\","
67262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
673cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
674cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("KR", "{"
67562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%S %C%D%n%A%n%O%n%N%n%Z\","
67662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"lfmt\":\"%N%n%O%n%A%n%D%n%C%n%S%n%Z\","
67762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACSZ\","
67862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"do_si\","
679212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"110-110,699-800\","
680212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.epost.go.kr/search/zipcode/search5.jsp\","
68162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ko\""
682cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
683cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("KW", "{"
68462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
685212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"54541,54551,54404,13009\","
68662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar\""
687cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
688cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("KY", "{"
689cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%S\","
69062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"AS\","
69162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"island\","
692212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"KY1-1100,KY1-1702,KY2-2101\","
693212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.caymanpost.gov.ky/portal/page\?_pageid=3561,1&_dad=portal&_schema=PORTAL\","
69462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
695cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
696cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("KZ", "{"
69762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%Z%n%S%n%C%n%A%n%O%n%N\","
698212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"040900,050012\","
69962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ru~kk-Cyrl\""
700cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
701cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("LA", "{"
70262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
703212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"01160,01000\","
70462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"lo\""
705cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
706cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("LB", "{"
70762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %Z\","
708212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"2038 3054,1107 2810,1000\","
70962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar\""
710cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
711cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("LC", "{"
71262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
713cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
714cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("LI", "{"
71562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%nFL-%Z %C\","
71662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
717212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"9496,9491,9490,9485\","
718212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.post.ch/db/owa/pv_plz_pack/pr_main\","
71962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"de~gsw\""
720cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
721cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("LK", "{"
72262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C%n%Z\","
723212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"20000,00100\","
724212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.slpost.gov.lk/\","
72562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"si~ta\""
726cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
727cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("LR", "{"
72862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C %X\","
729212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"1000\","
73062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
731cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
732cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("LS", "{"
73362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %Z\","
734212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"100\","
73562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"st~en\""
736cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
737cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("LT", "{"
73862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%nLT-%Z %C\","
739212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"04340,03500\","
740212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.post.lt/lt/\?id=316\","
74162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"lt\""
742cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
743cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("LU", "{"
74462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%nL-%Z %C\","
74562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
746212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"4750,2998\","
747212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.pt.lu/portal/services_en_ligne/recherche_codes_postaux\","
74862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr~lb~de\""
749cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
750cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("LV", "{"
75162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C, %Z\","
752212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"LV-1073,LV-1000\","
753212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.pasts.lv/lv/uzzinas/nodalas/\","
75462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"lv\""
755cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
756cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("LY", "{"
75762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar\""
758cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
759cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MA", "{"
76062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
761212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"53000,10000,20050,16052\","
76262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar~fr~tzm-Latn\""
763cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
764cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MC", "{"
76562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%nMC-%Z %C %X\","
766212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"98000,98020,98011,98001\","
76762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
768cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
769cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MD", "{"
77062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%nMD-%Z %C\","
771212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"2012,2019\","
77262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ro\""
773cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
774cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("ME", "{"
77562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
776212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"81257,81258,81217,84314,85366\","
77762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"sr-Latn\""
778cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
779cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MF", "{"
78062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%n%Z %C %X\","
78162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
782212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"97100\","
783212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.laposte.fr/Particulier/Utiliser-nos-outils-pratiques/Outils-et-documents/Trouvez-un-code-postal\","
78462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
785cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
786cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MG", "{"
78762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
788212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"501,101\","
78962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"mg~fr~en\""
790cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
791cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MH", "{"
792cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%C %S %Z\","
79362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACSZ\","
794cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"zip_name_type\":\"zip\","
79562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"state\","
796212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"96960,96970\","
797212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://zip4.usps.com/zip4/welcome.jsp\","
79862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en~mh\""
799cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
800cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MK", "{"
80162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
802212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"1314,1321,1443,1062\","
80362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"mk~sq\""
804cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
805cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("ML", "{"
80662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
807cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
808cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MN", "{"
80962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%S %C-%X%n%Z\","
810212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"65030,65270\","
811212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.zipcode.mn/\","
81262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"mn-Cyrl\""
813cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
814cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MO", "{"
81562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%A%n%O%n%N\","
81662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"lfmt\":\"%N%n%O%n%A\","
81762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"A\","
81862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"zh-Hant~pt\""
819cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
820cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MP", "{"
821cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%C %S %Z\","
82262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACSZ\","
823cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"zip_name_type\":\"zip\","
82462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"state\","
825212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"96950,96951,96952\","
826212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://zip4.usps.com/zip4/welcome.jsp\","
82762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
828cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
829cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MQ", "{"
83062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%n%Z %C %X\","
83162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
832212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"97220\","
833212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.laposte.fr/Particulier/Utiliser-nos-outils-pratiques/Outils-et-documents/Trouvez-un-code-postal\","
83462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
835cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
836cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MR", "{"
83762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar\""
838cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
839cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MS", "{"
84062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
841cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
842cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MT", "{"
84362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %Z\","
844212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"NXR 01,ZTN 05,GPO 01,BZN 1130,SPB 6031,VCT 1753\","
845212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://postcodes.maltapost.com/\","
84662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"mt~en\""
847cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
848cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MU", "{"
84962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z%n%C\","
850212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"742CU001\","
85162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en~fr\""
852cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
853cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MV", "{"
85462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %Z\","
855212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"20026\","
856212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.maldivespost.com/\?lid=10\","
85762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"dv\""
858cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
859cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MW", "{"
86062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %X\","
86162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en~ny\""
862cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
863cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MX", "{"
86462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%D%n%Z %C, %S\","
86562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
86662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"state\","
867212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"02860,77520,06082\","
868212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.correosdemexico.gob.mx/ServiciosLinea/Paginas/ccpostales.aspx\","
86962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"es\""
870cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
871cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MY", "{"
872cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%Z %C, %S\","
87362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
87462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"state\","
875212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"43000,50754,88990,50670\","
876212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.pos.com.my/pos/homepage.aspx\","
87762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ms\""
878cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
879cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("MZ", "{"
88062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C\","
881212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"1102,1119,3212\","
88262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"pt\""
883cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
884cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("NA", "{"
88562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"af~en\""
886cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
887cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("NC", "{"
88862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%n%Z %C %X\","
88962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
890212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"98814,98800,98810\","
891212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://poste.opt.nc/index.php\?option=com_content&view=article&id=80&Itemid=131\","
89262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
893cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
894cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("NE", "{"
89562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
896212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"8001\","
89762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
898cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
899cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("NF", "{"
90062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%n%C %S %Z\","
90162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
902cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
903cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("NG", "{"
904cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%C %Z%n%S\","
90562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"state\","
906212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"930283,300001,931104\","
907212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.nigeriapostcodes.com/views/\","
90862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
909cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
910cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("NI", "{"
911cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%Z%n%C, %S\","
91262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"department\","
913212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"52000\","
914212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.correos.gob.ni/index.php/codigo-postal-2\","
91562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"es\""
916cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
917cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("NL", "{"
91862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%n%Z %C\","
91962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
920212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"1234 AB,2490 AA\","
921f0eae4d48c09a65d0d54e41e7f748c5f14e7fffbshaopengjia@google.com      "\"posturl\":\"http://www.postnl.nl/voorthuis/\","
92262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"nl\""
923cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
924cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("NO", "{"
92562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
92662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
927212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"0025,0107,6631\","
928212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://adressesok.posten.no/nb/postal_codes/search\","
92962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"no~nn\""
930cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
931cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("NP", "{"
93262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %Z\","
933212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"44601\","
934212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.gpo.gov.np/postalcode.aspx\","
93562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ne\""
936cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
937cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("NR", "{"
938cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%S\","
93962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"AS\","
94062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"district\","
94162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
942cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
943cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("NU", "{"
94462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en~niu\""
945cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
946cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("NZ", "{"
94762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %Z\","
94862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
949212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"6001,6015,6332,8252,1030\","
950212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.nzpost.co.nz/Cultures/en-NZ/OnlineTools/PostCodeFinder/\","
95162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en~mi\""
952cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
953cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("OM", "{"
95462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z%n%C\","
955212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"133,112,111\","
95662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar\""
957cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
958cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("PA", "{"
95962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C%n%S\","
96062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"es\""
961cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
962cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("PE", "{"
963212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"LIMA 23,LIMA 42,CALLAO 2,02001\","
964212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.serpost.com.pe/cpostal/codigo\","
96562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"es~qu\""
966cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
967cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("PF", "{"
968cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%Z %C %S\","
96962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACSZ\","
97062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"island\","
97162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr~ty\""
972cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
973cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("PG", "{"
97462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %Z %S\","
97562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACS\","
976212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"111\","
97762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"tpi~en~ho\""
978cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
979cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("PH", "{"
98062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C%n%S\","
981212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"1008,1050,1135,1207,2000,1000\","
982212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.philpost.gov.ph/\","
98362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
984cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
985cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("PK", "{"
98662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C-%Z\","
987212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"44000\","
988212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.pakpost.gov.pk/postcode/postcode.html\","
98962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ur~en\""
990cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
991cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("PL", "{"
99262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
99362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
994212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"00-950,05-470,48-300,32-015,00-940\","
995212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.poczta-polska.pl/kody.php\","
99662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"pl\""
997cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
998cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("PM", "{"
99962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%n%Z %C %X\","
100062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
1001212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"97500\","
100262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
1003cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1004cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("PN", "{"
100562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%X%n%C%n%Z\","
100662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
1007212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"PCRN 1ZZ\","
100862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
1009cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1010cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("PR", "{"
1011cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%C PR %Z\","
101262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
101362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"zip_name_type\":\"zip\","
1014212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"00930\","
1015212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://zip4.usps.com/zip4/welcome.jsp\","
101662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"es~en\""
1017cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1018cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("PS", "{"
101962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar\""
1020cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1021cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("PT", "{"
102262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
102362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
1024212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"2725-079,1250-096,1201-950,2860-571,1208-148\","
1025212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.ctt.pt/feapl_2/app/open/tools.jspx\?tool=1\","
102662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"pt\""
1027cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1028cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("PW", "{"
1029cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%C %S %Z\","
103062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACSZ\","
1031cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"zip_name_type\":\"zip\","
103262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"state\","
1033212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"96940\","
1034212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://zip4.usps.com/zip4/welcome.jsp\","
103562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"pau~en\""
1036cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1037cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("PY", "{"
103862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
1039212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"1536,1538,1209\","
104062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"gn~es\""
1041cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1042cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("QA", "{"
104362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar\""
1044cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1045cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("RE", "{"
104662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%n%Z %C %X\","
104762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
1048212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"97400\","
1049212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.laposte.fr/Particulier/Utiliser-nos-outils-pratiques/Outils-et-documents/Trouvez-un-code-postal\","
105062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
1051cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1052cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("RO", "{"
105362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
1054212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"060274,061357,200716\","
1055212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.posta-romana.ro/zip_codes\","
105662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ro\""
1057cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1058cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("RS", "{"
105962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
1060212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"106314\","
1061212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.posta.rs/struktura/lat/aplikacije/pronadji/nadji-postu.asp\","
106262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"sr-Cyrl~sr-Latn\""
1063cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1064cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("RU", "{"
106539fc575f34f8024ae785ec597a3125d8d00ebd0alararennie@google.com      "\"fmt\":\"%N%n%O%n%A%n%C%n%S%n%Z\","
106662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
106739fc575f34f8024ae785ec597a3125d8d00ebd0alararennie@google.com      "\"state_name_type\":\"oblast\","
1068212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"125075,247112,103375\","
1069212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://info.russianpost.ru/servlet/department\","
107062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ru\""
1071cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1072cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("RW", "{"
107362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"rw~fr~en\""
1074cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1075cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("SA", "{"
107662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %Z\","
1077212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"11564,11187,11142\","
107862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar\""
1079cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1080cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("SB", "{"
108162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
1082cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1083cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("SC", "{"
1084cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%C%n%S\","
108562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"island\","
108662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr~en\""
1087cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1088cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("SE", "{"
108962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%nSE-%Z %C\","
109062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
1091212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"11455,12345,10500\","
1092212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.posten.se/sv/Kundservice/Sidor/Sok-postnummer-resultat.aspx\","
109362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"sv\""
1094cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1095cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("SG", "{"
109662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%nSINGAPORE %Z\","
109762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"AZ\","
1098212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"546080,308125,408600\","
1099212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.singpost.com.sg/quick_services/index.htm\","
110062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en~zh-Hans~ms-Latn~ta\""
1101cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1102cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("SH", "{"
110362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%X%n%C%n%Z\","
110462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
1105212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"STHL 1ZZ\","
110662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
1107cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1108cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("SI", "{"
110962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%nSI- %Z %C\","
1110212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"4000,1001,2500\","
111162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"sl\""
1112cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1113cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("SJ", "{"
111462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
111562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
1116212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"9170\","
1117212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://epab.posten.no/\","
111862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"no\""
1119cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1120cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("SK", "{"
112162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
1122212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"010 01,023 14,972 48,921 01,975 99\","
1123212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://psc.posta.sk\","
112462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"sk\""
1125cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1126cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("SL", "{"
112762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
1128cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1129cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("SM", "{"
113062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
113162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"AZ\","
1132212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"47890,47891,47895,47899\","
1133212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.poste.it/online/cercacap/\","
113462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"it\""
1135cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1136cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("SN", "{"
113762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
1138212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"12500,46024,16556,10000\","
113962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr~wo\""
1140cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1141cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("SO", "{"
114262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C, %S %Z\","
114362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACS\","
1144212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"09010,11010\","
114562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"so\""
1146cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1147cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("SR", "{"
114862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %X%n%S\","
114962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"nl\""
1150cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1151cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("ST", "{"
115262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %X\","
115362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"pt\""
1154cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1155cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("SV", "{"
115662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z-%C%n%S\","
115762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACS\","
1158212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"CP 1101\","
115962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"es\""
1160cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1161cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("SZ", "{"
116262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C%n%Z\","
1163212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"H100\","
1164212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.sptc.co.sz/swazipost/codes.php\","
116562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en~ss\""
116662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "}"));
116762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com  region_data.insert(std::make_pair("TA", "{"
1168212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"TDCU 1ZZ\","
116962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
1170cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1171cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("TC", "{"
117262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%X%n%C%n%Z\","
117362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
1174212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"TKCA 1ZZ\","
117562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
1176cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1177cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("TD", "{"
117862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr~ar\""
1179cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1180cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("TF", "{"
118162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
1182cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1183cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("TG", "{"
118462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
1185cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1186cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("TH", "{"
118762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%D %C%n%S %Z\","
118862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"lfmt\":\"%N%n%O%n%A%n%D, %C%n%S %Z\","
1189212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"10150,10210\","
119062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"th\""
1191cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1192cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("TJ", "{"
119362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
1194212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"735450,734025\","
119562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"tg-Cyrl\""
1196cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1197cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("TK", "{"
119862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en~tkl\""
1199cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1200cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("TL", "{"
120162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"pt~tet\""
1202cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1203cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("TM", "{"
120462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
1205212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"744000\","
120662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"tk-Latn\""
1207cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1208cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("TN", "{"
120962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
1210212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"1002,8129,3100,1030\","
1211212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.poste.tn/codes.php\","
121262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar~fr\""
1213cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1214cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("TO", "{"
121562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"to~en\""
1216cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1217cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("TR", "{"
12181cc079798198a961e938b74e573588986afdca3blararennie@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C/%S\","
121962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
1220212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"01960,06101\","
1221212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://postakodu.ptt.gov.tr/\","
122262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"tr\""
1223cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1224cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("TT", "{"
122562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
1226cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1227cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("TV", "{"
1228cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%X%n%C%n%S\","
122962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"island\","
123062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"tyv\""
1231cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1232cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("TW", "{"
1233cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%Z%n%S%C%n%A%n%O%n%N\","
123462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"lfmt\":\"%N%n%O%n%A%n%C, %S %Z\","
123562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACSZ\","
123662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"county\","
1237212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"104,106,10603,40867\","
1238212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.post.gov.tw/post/internet/f_searchzone/index.jsp\?ID=190102\","
123962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"zh-Hant\""
1240cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1241cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("TZ", "{"
1242212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"6090\","
124362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"sw~en\""
1244cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1245cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("UA", "{"
1246a8cfad33049a40b2661d5a8dfd218b9de43f136broubert@google.com      "\"fmt\":\"%N%n%O%n%A%n%C%n%S%n%Z\","
1247a8cfad33049a40b2661d5a8dfd218b9de43f136broubert@google.com      "\"require\":\"ACZ\","
1248a8cfad33049a40b2661d5a8dfd218b9de43f136broubert@google.com      "\"state_name_type\":\"oblast\","
1249212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"15432,01055,01001\","
1250212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://services.ukrposhta.com/postindex_new/\","
125162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"uk~ru\""
1252cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1253cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("UG", "{"
125462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"sw~en\""
1255cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1256cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("UM", "{"
1257cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%C %S %Z\","
125862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACS\","
1259cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"zip_name_type\":\"zip\","
126062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"state\","
1261212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"96898\","
1262212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://zip4.usps.com/zip4/welcome.jsp\","
126362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
1264cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1265cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("US", "{"
1266f5ef4fd1a0194fb339c286a0921a00a8dc9cc698rouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%C, %S %Z\","
126762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACSZ\","
1268cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"zip_name_type\":\"zip\","
126962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"state\","
1270212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"95014,22162-1010\","
1271212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"https://tools.usps.com/go/ZipLookupAction!input.action\","
127262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
1273cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1274cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("UY", "{"
127562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C %S\","
1276212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"11600\","
1277212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.correo.com.uy/index.asp\?codPag=codPost&switchMapa=codPost\","
127862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"es\""
1279cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1280cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("UZ", "{"
128162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C%n%S\","
1282212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"702100,700000\","
1283212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.pochta.uz/index.php/uz/pochta-indekslari/9\","
128462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"uz-Latn~uz-Cyrl\""
1285cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1286cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("VA", "{"
128762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
1288212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"00120\","
128962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"la\""
1290cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1291cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("VC", "{"
1292212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"VC0100,VC0110,VC0400\","
1293212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.svgpost.gov.vc/\?option=com_content&view=article&id=3&Itemid=16\","
129462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
1295cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1296cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("VE", "{"
129762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C %Z, %S\","
129862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACS\","
1299212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"1010,3001,8011,1020\","
1300212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.ipostel.gob.ve/nlinea/codigo_postal.php\","
130162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"es\""
1302cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1303cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("VG", "{"
130462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"A\","
1305212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"VG1110,VG1150,VG1160\","
130662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
1307cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1308cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("VI", "{"
1309cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"fmt\":\"%N%n%O%n%A%n%C %S %Z\","
131062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACSZ\","
1311cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "\"zip_name_type\":\"zip\","
131262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"state\","
1313212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"00802-1222,00850-9802\","
1314212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://zip4.usps.com/zip4/welcome.jsp\","
131562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
1316cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1317cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("VN", "{"
131862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C%n%S\","
131962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"lfmt\":\"%N%n%O%n%A%n%C%n%S\","
132062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"AC\","
1321212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"119415,136065,720344\","
1322212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://postcode.vnpost.vn/services/search.aspx\","
132362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"vi\""
1324cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1325cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("VU", "{"
132662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"bi~en~fr\""
1327cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1328cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("WF", "{"
132962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%n%Z %C %X\","
133062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
1331212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"98600\","
133262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
1333cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1334cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("WS", "{"
133562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"sm~en\""
1336cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
13375a8fb229d0b92d07882a9e9d7a1448eabb38c422roubert@google.com  region_data.insert(std::make_pair("XK", "{"
133862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
1339212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"10000\","
134062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"sq~sr-Cyrl~sr-Latn\""
13415a8fb229d0b92d07882a9e9d7a1448eabb38c422roubert@google.com      "}"));
1342cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("YE", "{"
134362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"AC\","
134462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"ar\""
1345cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1346cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("YT", "{"
134762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%O%n%N%n%A%n%Z %C %X\","
134862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
1349212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"97600\","
135062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"fr\""
1351cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1352cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("ZA", "{"
135362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C%n%Z\","
135462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"ACZ\","
1355212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"0083,1451,0001\","
1356212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"posturl\":\"http://www.postoffice.co.za/tools/postalcode.html\","
135762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en~zu~xh~af~nso~tn~st~ts~ss~ve~nr\""
1358cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1359cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("ZM", "{"
136062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%Z %C\","
136162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"AC\","
1362212d6836eaf49b12748ebaab6b95c5144a988850keghani@google.com      "\"zipex\":\"50100,50101\","
136362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en\""
1364cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1365cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  region_data.insert(std::make_pair("ZW", "{"
136662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"languages\":\"en~sn~nd\""
1367cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      "}"));
1368cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  return region_data;
1369cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org}
1370cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org
137162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com}  // namespace
137262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com
137362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com// static
137462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.comconst std::string& RegionDataConstants::GetDefaultRegionData() {
137562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com  static const std::string kDefaultRegionData(
137662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "{"
137762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"fmt\":\"%N%n%O%n%A%n%C\","
137862677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"require\":\"AC\","
137962677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"zip_name_type\":\"postal\","
138062677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "\"state_name_type\":\"province\""
138162677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com      "}");
138262677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com  return kDefaultRegionData;
138362677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com}
138462677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com// ---- END AUTOGENERATED CODE ----
138562677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com
138662677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.comnamespace {
138762677c2b65948ec6e34a01de9b090d7c9599333edbeaumont@google.com
1388cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.orgconst std::map<std::string, std::string>& GetAllRegionData() {
1389cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  static const std::map<std::string, std::string> kRegionData(InitRegionData());
1390cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  return kRegionData;
1391cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org}
1392cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org
1393cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.orgstruct SelectFirst {
1394cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  template <typename Pair>
1395cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  const typename Pair::first_type& operator()(const Pair& pair) const {
1396cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org    return pair.first;
1397cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  }
1398cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org};
1399cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org
1400cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.orgstd::vector<std::string> InitRegionCodes() {
1401cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  std::vector<std::string> region_codes(GetAllRegionData().size());
1402000aa6dbb70273ccefa77a5d4cd1a400939a2666roubert@google.com  std::transform(GetAllRegionData().begin(),
1403000aa6dbb70273ccefa77a5d4cd1a400939a2666roubert@google.com                 GetAllRegionData().end(),
1404000aa6dbb70273ccefa77a5d4cd1a400939a2666roubert@google.com                 region_codes.begin(),
1405000aa6dbb70273ccefa77a5d4cd1a400939a2666roubert@google.com                 SelectFirst());
1406cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  return region_codes;
1407cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org}
1408cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org
1409e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.comconst std::map<std::string, size_t> InitMaxLookupKeyDepth() {
1410e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com  std::map<std::string, size_t> max_depth;
1411e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com  for (std::map<std::string, std::string>::const_iterator
1412e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com       it = GetAllRegionData().begin(); it != GetAllRegionData().end(); ++it) {
1413c8efd308315b65f36c0d056e04dc98cb3d98f204lararennie@google.com    std::vector<FormatElement> fields;
1414e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com    // Here it->second actually contains the entire JSON blob for this region,
1415e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com    // and not only the format field, but it doesn't really matter when just
1416e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com    // checking whether a particular formatting code (eg. "%C") is present, as
1417e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com    // there isn't anything else in the JSON that erroneously could match a
1418e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com    // formatting code.
1419c8efd308315b65f36c0d056e04dc98cb3d98f204lararennie@google.com    ParseFormatRule(it->second, &fields);
1420e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com    size_t depth = 1;
1421e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com    for (; depth < arraysize(LookupKey::kHierarchy); ++depth) {
1422e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com      AddressField field = LookupKey::kHierarchy[depth];
1423e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com      // Check to see if a particular field in the hierarchy is used by
1424e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com      // addresses in this country. If not, the maximum depth has been reached.
1425c8efd308315b65f36c0d056e04dc98cb3d98f204lararennie@google.com      if (std::find(fields.begin(), fields.end(), FormatElement(field)) ==
1426c8efd308315b65f36c0d056e04dc98cb3d98f204lararennie@google.com          fields.end()) {
1427e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com        break;
1428e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com      }
1429e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com    }
1430e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com    max_depth.insert(std::make_pair(it->first, depth - 1));
1431e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com  }
1432e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com  return max_depth;
1433e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com}
1434e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com
1435cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org}  // namespace
1436cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org
1437cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org// static
1438e23ab5d6f7e894252ed786304d3509c1ea19c431roubert@google.comconst bool RegionDataConstants::IsSupported(const std::string& region_code) {
1439e23ab5d6f7e894252ed786304d3509c1ea19c431roubert@google.com  static const std::set<std::string> kRegionCodes(GetRegionCodes().begin(),
1440e23ab5d6f7e894252ed786304d3509c1ea19c431roubert@google.com                                                  GetRegionCodes().end());
1441e23ab5d6f7e894252ed786304d3509c1ea19c431roubert@google.com  return kRegionCodes.find(region_code) != kRegionCodes.end();
1442e23ab5d6f7e894252ed786304d3509c1ea19c431roubert@google.com}
1443e23ab5d6f7e894252ed786304d3509c1ea19c431roubert@google.com
1444e23ab5d6f7e894252ed786304d3509c1ea19c431roubert@google.com// static
1445cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.orgconst std::vector<std::string>& RegionDataConstants::GetRegionCodes() {
1446cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  static const std::vector<std::string> kRegionCodes(InitRegionCodes());
1447cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  return kRegionCodes;
1448cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org}
1449cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org
1450cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org// static
1451cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.orgconst std::string& RegionDataConstants::GetRegionData(
1452cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org    const std::string& region_code) {
1453cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  static const std::string kEmptyString;
1454cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  std::map<std::string, std::string>::const_iterator it =
1455cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org      GetAllRegionData().find(region_code);
1456cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org  return it != GetAllRegionData().end() ? it->second : kEmptyString;
1457cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org}
1458cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org
1459cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org// static
1460e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.comsize_t RegionDataConstants::GetMaxLookupKeyDepth(
1461e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com    const std::string& region_code) {
1462e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com  static const std::map<std::string, size_t> kMaxDepth(InitMaxLookupKeyDepth());
1463e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com  std::map<std::string, size_t>::const_iterator it =
1464e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com      kMaxDepth.find(region_code);
1465e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com  return it != kMaxDepth.end() ? it->second : 0;
1466e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com}
1467e71e2ca6cddad1c126cd13ea7c5c3b9812f9f9ebroubert@google.com
1468cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org}  // namespace addressinput
1469cd70c57799db816689ad1871c4a78c2fe895153crouslan@chromium.org}  // namespace i18n
1470