addressing 1.1.0 → 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (83) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +27 -0
  3. data/README.md +3 -2
  4. data/data/address_formats.dump +0 -0
  5. data/data/address_formats.json +64 -64
  6. data/data/country/af.json +1 -1
  7. data/data/country/ak.json +258 -0
  8. data/data/country/am.json +18 -18
  9. data/data/country/ba.json +258 -0
  10. data/data/country/bn-IN.json +3 -3
  11. data/data/country/bn.json +3 -3
  12. data/data/country/bs.json +1 -0
  13. data/data/country/ca.json +9 -9
  14. data/data/country/cv.json +258 -0
  15. data/data/country/cy.json +1 -1
  16. data/data/country/en-AU.json +16 -16
  17. data/data/country/en-LT.json +258 -0
  18. data/data/country/en-LV.json +258 -0
  19. data/data/country/en-UA.json +258 -0
  20. data/data/country/fil.json +1 -1
  21. data/data/country/fr-CA.json +1 -1
  22. data/data/country/ga.json +17 -17
  23. data/data/country/gd.json +2 -2
  24. data/data/country/gl.json +20 -20
  25. data/data/country/gu.json +12 -12
  26. data/data/country/hr.json +17 -17
  27. data/data/country/hy.json +2 -2
  28. data/data/country/ig.json +30 -30
  29. data/data/country/is.json +1 -1
  30. data/data/country/it.json +8 -8
  31. data/data/country/kk-Arab.json +258 -0
  32. data/data/country/kok.json +158 -158
  33. data/data/country/ky.json +3 -3
  34. data/data/country/lt.json +1 -1
  35. data/data/country/lv.json +9 -9
  36. data/data/country/mk.json +1 -1
  37. data/data/country/ml.json +1 -1
  38. data/data/country/mn.json +9 -9
  39. data/data/country/mr.json +1 -1
  40. data/data/country/or.json +14 -14
  41. data/data/country/pa.json +7 -7
  42. data/data/country/qu.json +258 -0
  43. data/data/country/rm.json +258 -0
  44. data/data/country/shn.json +258 -0
  45. data/data/country/sl.json +16 -16
  46. data/data/country/so.json +2 -2
  47. data/data/country/sr-Cyrl-BA.json +1 -1
  48. data/data/country/sr-Cyrl-ME.json +1 -1
  49. data/data/country/sr-Cyrl-XK.json +1 -1
  50. data/data/country/sr-Latn-BA.json +1 -1
  51. data/data/country/sr-Latn-ME.json +1 -1
  52. data/data/country/sr-Latn-XK.json +1 -1
  53. data/data/country/sr-Latn.json +1 -1
  54. data/data/country/sr.json +1 -1
  55. data/data/country/sw-CD.json +1 -1
  56. data/data/country/sw.json +1 -1
  57. data/data/country/ta.json +3 -3
  58. data/data/country/te.json +11 -11
  59. data/data/country/vi.json +1 -1
  60. data/data/country/yue-Hans.json +11 -11
  61. data/data/country/yue.json +10 -10
  62. data/data/subdivision/AE.json +1 -1
  63. data/data/subdivision/CA.json +6 -12
  64. data/data/subdivision/CO.json +1 -1
  65. data/data/subdivision/GB.json +675 -0
  66. data/data/subdivision/GT.json +71 -0
  67. data/data/subdivision/IT.json +13 -1
  68. data/data/subdivision/NG.json +1 -1
  69. data/data/subdivision/RU.json +4 -4
  70. data/data/subdivision/TH.json +7 -7
  71. data/data/subdivision/TR.json +1 -1
  72. data/data/subdivision/VE.json +4 -4
  73. data/data/subdivision/VN.json +38 -154
  74. data/lib/addressing/address_format.rb +38 -16
  75. data/lib/addressing/country.rb +21 -19
  76. data/lib/addressing/default_formatter.rb +40 -12
  77. data/lib/addressing/locale.rb +24 -11
  78. data/lib/addressing/model.rb +9 -10
  79. data/lib/addressing/subdivision.rb +25 -7
  80. data/lib/addressing/version.rb +1 -1
  81. metadata +22 -6
  82. /data/data/country/{en-ID.json → en-EE.json} +0 -0
  83. /data/data/country/{en-MV.json → en-GE.json} +0 -0
@@ -0,0 +1,71 @@
1
+ {
2
+ "country_code": "GT",
3
+ "subdivisions": {
4
+ "16": {
5
+ "name": "Alta Verapaz"
6
+ },
7
+ "15": {
8
+ "name": "Baja Verapaz"
9
+ },
10
+ "04": {
11
+ "name": "Chimaltenango"
12
+ },
13
+ "20": {
14
+ "name": "Chiquimula"
15
+ },
16
+ "02": {
17
+ "name": "El Progreso"
18
+ },
19
+ "05": {
20
+ "name": "Escuintla"
21
+ },
22
+ "01": {
23
+ "name": "Guatemala"
24
+ },
25
+ "13": {
26
+ "name": "Huehuetenango"
27
+ },
28
+ "18": {
29
+ "name": "Izabal"
30
+ },
31
+ "21": {
32
+ "name": "Jalapa"
33
+ },
34
+ "22": {
35
+ "name": "Jutiapa"
36
+ },
37
+ "17": {
38
+ "name": "Petén"
39
+ },
40
+ "09": {
41
+ "name": "Quetzaltenango"
42
+ },
43
+ "14": {
44
+ "name": "Quiché"
45
+ },
46
+ "11": {
47
+ "name": "Retalhuleu"
48
+ },
49
+ "03": {
50
+ "name": "Sacatepéquez"
51
+ },
52
+ "12": {
53
+ "name": "San Marcos"
54
+ },
55
+ "06": {
56
+ "name": "Santa Rosa"
57
+ },
58
+ "07": {
59
+ "name": "Sololá"
60
+ },
61
+ "10": {
62
+ "name": "Suchitepéquez"
63
+ },
64
+ "08": {
65
+ "name": "Totonicapán"
66
+ },
67
+ "19": {
68
+ "name": "Zacapa"
69
+ }
70
+ }
71
+ }
@@ -149,6 +149,10 @@
149
149
  "code": "FR",
150
150
  "name": "Frosinone"
151
151
  },
152
+ "OT": {
153
+ "code": "OT",
154
+ "name": "Gallura Nord-Est Sardegna"
155
+ },
152
156
  "GE": {
153
157
  "code": "GE",
154
158
  "name": "Genova"
@@ -217,6 +221,10 @@
217
221
  "code": "MT",
218
222
  "name": "Matera"
219
223
  },
224
+ "VS": {
225
+ "code": "VS",
226
+ "name": "Medio Campidano"
227
+ },
220
228
  "ME": {
221
229
  "code": "ME",
222
230
  "name": "Messina"
@@ -245,6 +253,10 @@
245
253
  "code": "NU",
246
254
  "name": "Nuoro"
247
255
  },
256
+ "OG": {
257
+ "code": "OG",
258
+ "name": "Ogliastra"
259
+ },
248
260
  "OR": {
249
261
  "code": "OR",
250
262
  "name": "Oristano"
@@ -359,7 +371,7 @@
359
371
  },
360
372
  "SU": {
361
373
  "code": "SU",
362
- "name": "Sud Sardegna"
374
+ "name": "Sulcis Iglesiente"
363
375
  },
364
376
  "TA": {
365
377
  "code": "TA",
@@ -83,7 +83,7 @@
83
83
  "name": "Niger"
84
84
  },
85
85
  "OG": {
86
- "name": "Ogun State"
86
+ "name": "Ogun"
87
87
  },
88
88
  "ON": {
89
89
  "name": "Ondo"
@@ -240,10 +240,6 @@
240
240
  "name": "Tyva Republits",
241
241
  "local_name": "Республика Тыва"
242
242
  },
243
- "UD": {
244
- "name": "Udmurtskaja Respublika",
245
- "local_name": "Республика Удмуртия"
246
- },
247
243
  "KK": {
248
244
  "name": "Khakasiya Republits",
249
245
  "local_name": "Республика Хакасия"
@@ -308,6 +304,10 @@
308
304
  "name": "Tyumenskaya oblast'",
309
305
  "local_name": "Тюменская область"
310
306
  },
307
+ "UD": {
308
+ "name": "Udmurtskaja Respublika",
309
+ "local_name": "Удмуртская Республика"
310
+ },
311
311
  "ULY": {
312
312
  "name": "Ulyanovskaya oblast'",
313
313
  "local_name": "Ульяновская область"
@@ -26,10 +26,6 @@
26
26
  "name": "Khon Kaen",
27
27
  "local_name": "ขอนแก่น"
28
28
  },
29
- "38": {
30
- "name": "Bueng Kan",
31
- "local_name": "จังหวัด บึงกาฬ"
32
- },
33
29
  "22": {
34
30
  "name": "Chanthaburi",
35
31
  "local_name": "จันทบุรี"
@@ -51,7 +47,7 @@
51
47
  "local_name": "ชัยภูมิ"
52
48
  },
53
49
  "86": {
54
- "name": "Chumpon",
50
+ "name": "Chumphon",
55
51
  "local_name": "ชุมพร"
56
52
  },
57
53
  "57": {
@@ -110,6 +106,10 @@
110
106
  "name": "Nan",
111
107
  "local_name": "น่าน"
112
108
  },
109
+ "38": {
110
+ "name": "Bueng Kan",
111
+ "local_name": "บึงกาฬ"
112
+ },
113
113
  "31": {
114
114
  "name": "Buri Ram",
115
115
  "local_name": "บุรีรัมย์"
@@ -143,7 +143,7 @@
143
143
  "local_name": "พังงา"
144
144
  },
145
145
  "93": {
146
- "name": "Phattalung",
146
+ "name": "Phatthalung",
147
147
  "local_name": "พัทลุง"
148
148
  },
149
149
  "66": {
@@ -267,7 +267,7 @@
267
267
  "local_name": "สุโขทัย"
268
268
  },
269
269
  "72": {
270
- "name": "Suphanburi",
270
+ "name": "Suphan Buri",
271
271
  "local_name": "สุพรรณบุรี"
272
272
  },
273
273
  "84": {
@@ -8,7 +8,7 @@
8
8
  "name": "Adıyaman"
9
9
  },
10
10
  "03": {
11
- "name": "Afyon"
11
+ "name": "Afyonkarahisar"
12
12
  },
13
13
  "04": {
14
14
  "name": "Ağrı"
@@ -32,7 +32,7 @@
32
32
  "name": "Dependencias Federales"
33
33
  },
34
34
  "A": {
35
- "name": "Distrito Federal"
35
+ "name": "Distrito Capital"
36
36
  },
37
37
  "I": {
38
38
  "name": "Falcón"
@@ -40,6 +40,9 @@
40
40
  "J": {
41
41
  "name": "Guárico"
42
42
  },
43
+ "X": {
44
+ "name": "La Guaira"
45
+ },
43
46
  "K": {
44
47
  "name": "Lara"
45
48
  },
@@ -67,9 +70,6 @@
67
70
  "T": {
68
71
  "name": "Trujillo"
69
72
  },
70
- "X": {
71
- "name": "La Guaira"
72
- },
73
73
  "U": {
74
74
  "name": "Yaracuy"
75
75
  },
@@ -2,51 +2,15 @@
2
2
  "country_code": "VN",
3
3
  "locale": "vi",
4
4
  "subdivisions": {
5
- "44": {
5
+ "91": {
6
6
  "name": "An Giang Province",
7
7
  "local_name": "An Giang"
8
8
  },
9
- "43": {
10
- "name": "Ba Ria-Vung Tau Province",
11
- "local_name": "Bà Rịa–Vũng Tàu"
12
- },
13
- "55": {
14
- "name": "Bac Lieu Province",
15
- "local_name": "Bạc Liêu"
16
- },
17
- "54": {
18
- "name": "Bac Giang Province",
19
- "local_name": "Bắc Giang"
20
- },
21
- "53": {
22
- "name": "Bac Kan Province",
23
- "local_name": "Bắc Kạn"
24
- },
25
- "56": {
9
+ "24": {
26
10
  "name": "Bac Ninh Province",
27
11
  "local_name": "Bắc Ninh"
28
12
  },
29
- "50": {
30
- "name": "Ben Tre Province",
31
- "local_name": "Bến Tre"
32
- },
33
- "57": {
34
- "name": "Binh Duong Province",
35
- "local_name": "Bình Dương"
36
- },
37
- "31": {
38
- "name": "Binh Dinh Province",
39
- "local_name": "Bình Định"
40
- },
41
- "58": {
42
- "name": "Binh Phuoc Province",
43
- "local_name": "Bình Phước"
44
- },
45
- "40": {
46
- "name": "Binh Thuan Province",
47
- "local_name": "Bình Thuận"
48
- },
49
- "59": {
13
+ "96": {
50
14
  "name": "Ca Mau Province",
51
15
  "local_name": "Cà Mau"
52
16
  },
@@ -54,71 +18,55 @@
54
18
  "name": "Cao Bang Province",
55
19
  "local_name": "Cao Bằng"
56
20
  },
57
- "CT": {
21
+ "92": {
58
22
  "name": "Can Tho City",
59
23
  "local_name": "Cần Thơ"
60
24
  },
61
- "DN": {
25
+ "48": {
62
26
  "name": "Da Nang City",
63
27
  "local_name": "Đà Nẵng"
64
28
  },
65
- "33": {
29
+ "66": {
66
30
  "name": "Dak Lak Province",
67
31
  "local_name": "Đắk Lắk"
68
32
  },
69
- "72": {
70
- "name": "Dak Nong Province",
71
- "local_name": "Đăk Nông"
72
- },
73
- "71": {
33
+ "11": {
74
34
  "name": "Dien Bien Province",
75
35
  "local_name": "Điện Biên"
76
36
  },
77
- "39": {
37
+ "75": {
78
38
  "name": "Dong Nai Province",
79
39
  "local_name": "Đồng Nai"
80
40
  },
81
- "45": {
41
+ "82": {
82
42
  "name": "Dong Thap Province",
83
43
  "local_name": "Đồng Tháp"
84
44
  },
85
- "30": {
45
+ "52": {
86
46
  "name": "Gia Lai Province",
87
47
  "local_name": "Gia Lai"
88
48
  },
89
- "03": {
90
- "name": "Ha Giang Province",
91
- "local_name": "Hà Giang"
92
- },
93
- "63": {
94
- "name": "Ha Nam Province",
95
- "local_name": "Hà Nam"
96
- },
97
- "HN": {
49
+ "01": {
98
50
  "name": "Hanoi City",
99
51
  "local_name": "Hà Nội"
100
52
  },
101
- "23": {
53
+ "42": {
102
54
  "name": "Ha Tinh Province",
103
55
  "local_name": "Hà Tĩnh"
104
56
  },
105
- "61": {
106
- "name": "Hai Duong Province",
107
- "local_name": "Hải Dương"
108
- },
109
- "HP": {
110
- "name": "Haiphong City",
57
+ "31": {
58
+ "name": "Hai Phong City",
111
59
  "local_name": "Hải Phòng"
112
60
  },
113
- "73": {
114
- "name": "Hau Giang Province",
115
- "local_name": "Hậu Giang"
61
+ "79": {
62
+ "name": "Ho Chi Minh City",
63
+ "local_name": "Hồ Chí Minh"
116
64
  },
117
- "14": {
118
- "name": "Hoa Binh Province",
119
- "local_name": "Hòa Bình"
65
+ "46": {
66
+ "name": "Hue City",
67
+ "local_name": "Huế"
120
68
  },
121
- "66": {
69
+ "56": {
122
70
  "name": "Hung Yen Province",
123
71
  "local_name": "Hưng Yên"
124
72
  },
@@ -126,23 +74,15 @@
126
74
  "name": "Khanh Hoa Province",
127
75
  "local_name": "Khánh Hòa"
128
76
  },
129
- "47": {
130
- "name": "Kien Giang Province",
131
- "local_name": "Kiên Giang"
132
- },
133
- "28": {
134
- "name": "Kon Tum Province",
135
- "local_name": "Kon Tum"
136
- },
137
- "01": {
77
+ "12": {
138
78
  "name": "Lai Chau Province",
139
79
  "local_name": "Lai Châu"
140
80
  },
141
- "09": {
142
- "name": "Lang Song Province",
81
+ "20": {
82
+ "name": "Lang Son Province",
143
83
  "local_name": "Lạng Sơn"
144
84
  },
145
- "02": {
85
+ "68": {
146
86
  "name": "Lao Cai Province",
147
87
  "local_name": "Lào Cai"
148
88
  },
@@ -150,109 +90,53 @@
150
90
  "name": "Lam Dong Province",
151
91
  "local_name": "Lâm Đồng"
152
92
  },
153
- "41": {
154
- "name": "Long An Province",
155
- "local_name": "Long An"
156
- },
157
- "67": {
158
- "name": "Nam Dinh Province",
159
- "local_name": "Nam Định"
160
- },
161
- "22": {
93
+ "40": {
162
94
  "name": "Nghe An Province",
163
95
  "local_name": "Nghệ An"
164
96
  },
165
- "18": {
97
+ "37": {
166
98
  "name": "Ninh Binh Province",
167
99
  "local_name": "Ninh Bình"
168
100
  },
169
- "36": {
170
- "name": "Ninh Thuan Province",
171
- "local_name": "Ninh Thuận"
172
- },
173
- "68": {
101
+ "25": {
174
102
  "name": "Phu Tho Province",
175
103
  "local_name": "Phú Thọ"
176
104
  },
177
- "32": {
178
- "name": "Phu Yen Province",
179
- "local_name": "Phú Yên"
180
- },
181
- "24": {
182
- "name": "Quang Binh Province",
183
- "local_name": "Quảng Bình"
184
- },
185
- "27": {
186
- "name": "Quang Nam Province",
187
- "local_name": "Quảng Nam"
188
- },
189
- "29": {
105
+ "51": {
190
106
  "name": "Quang Ngai Province",
191
107
  "local_name": "Quảng Ngãi"
192
108
  },
193
- "13": {
109
+ "22": {
194
110
  "name": "Quang Ninh Province",
195
111
  "local_name": "Quảng Ninh"
196
112
  },
197
- "25": {
113
+ "44": {
198
114
  "name": "Quang Tri Province",
199
115
  "local_name": "Quảng Trị"
200
116
  },
201
- "52": {
202
- "name": "Soc Trang Province",
203
- "local_name": "Sóc Trăng"
204
- },
205
- "05": {
117
+ "14": {
206
118
  "name": "Son La Province",
207
119
  "local_name": "Sơn La"
208
120
  },
209
- "37": {
121
+ "80": {
210
122
  "name": "Tay Ninh Province",
211
123
  "local_name": "Tây Ninh"
212
124
  },
213
- "20": {
214
- "name": "Thai Binh Province",
215
- "local_name": "Thái Bình"
216
- },
217
- "69": {
125
+ "19": {
218
126
  "name": "Thai Nguyen Province",
219
127
  "local_name": "Thái Nguyên"
220
128
  },
221
- "21": {
129
+ "38": {
222
130
  "name": "Thanh Hoa Province",
223
131
  "local_name": "Thanh Hóa"
224
- },
225
- "SG": {
226
- "name": "Ho Chi Minh City",
227
- "local_name": "Thành phố Hồ Chí Minh"
228
- },
229
- "26": {
230
- "name": "Thua Thien-Hue Province",
231
- "local_name": "Thừa Thiên–Huế"
232
- },
233
- "46": {
234
- "name": "Tien Giang Province",
235
- "local_name": "Tiền Giang"
236
- },
237
- "51": {
238
- "name": "Tra Vinh Province",
239
- "local_name": "Trà Vinh"
240
- },
241
- "07": {
132
+ },
133
+ "08": {
242
134
  "name": "Tuyen Quang Province",
243
135
  "local_name": "Tuyên Quang"
244
136
  },
245
- "49": {
137
+ "86": {
246
138
  "name": "Vinh Long Province",
247
139
  "local_name": "Vĩnh Long"
248
- },
249
- "70": {
250
- "name": "Vinh Phuc Province",
251
- "local_name": "Vĩnh Phúc"
252
- },
253
- "06": {
254
- "name": "Yen Bai Province",
255
- "local_name": "Yên Bái"
256
140
  }
257
141
  }
258
142
  }
@@ -8,9 +8,17 @@ module Addressing
8
8
  #
9
9
  # @example Get address format for Brazil
10
10
  # format = Addressing::AddressFormat.get('BR')
11
- # format.used_fields # => ["given_name", "family_name", ...]
12
- # format.required_fields # => ["address_line1", "locality", ...]
11
+ # format.used_fields # => ["given_name", "family_name", ...]
12
+ # format.required_fields # => ["address_line1", "locality", ...]
13
+ # format.subdivision_fields # => ["administrative_area", "locality"]
13
14
  class AddressFormat
15
+ # The subdivision fields, ordered from the top level down.
16
+ SUBDIVISION_FIELDS = [
17
+ AddressField::ADMINISTRATIVE_AREA,
18
+ AddressField::LOCALITY,
19
+ AddressField::DEPENDENT_LOCALITY
20
+ ].freeze
21
+
14
22
  class << self
15
23
  # Gets the address format for the provided country code.
16
24
  #
@@ -63,13 +71,28 @@ module Addressing
63
71
  administrative_area_type: "province",
64
72
  locality_type: "city",
65
73
  dependent_locality_type: "suburb",
66
- postal_code_type: "postal",
67
- subdivision_depth: 0
74
+ postal_code_type: "postal"
68
75
  }
69
76
  end
70
77
  end
71
78
 
72
- attr_reader :country_code, :locale, :format, :local_format, :required_fields, :uppercase_fields, :default_values, :administrative_area_type, :locality_type, :dependent_locality_type, :postal_code_type, :postal_code_pattern, :postal_code_prefix, :subdivision_depth
79
+ attr_reader :country_code, :locale, :format, :local_format, :required_fields, :uppercase_fields, :default_values, :administrative_area_type, :locality_type, :dependent_locality_type, :postal_code_type, :postal_code_pattern, :postal_code_prefix
80
+
81
+ # The subdivision fields for which there is predefined subdivision data.
82
+ #
83
+ # This is more precise than #used_subdivision_fields, which returns all
84
+ # subdivision fields used by the format regardless of whether data exists.
85
+ #
86
+ # @return [Array<String>] e.g. ["administrative_area", "locality"]
87
+ attr_reader :subdivision_fields
88
+
89
+ # The number of subdivision fields with predefined data used by the format.
90
+ #
91
+ # @deprecated Use #subdivision_fields instead.
92
+ # @return [Integer]
93
+ def subdivision_depth
94
+ (subdivision_fields & used_subdivision_fields).size
95
+ end
73
96
 
74
97
  def initialize(definition = {})
75
98
  # Validate the presence of required properties.
@@ -87,13 +110,16 @@ module Addressing
87
110
  uppercase_fields: [],
88
111
  default_values: {},
89
112
  postal_code_pattern: nil,
90
- postal_code_prefix: nil,
91
- subdivision_depth: 0
113
+ postal_code_prefix: nil
92
114
  }.merge(definition)
93
115
 
116
+ # Backwards compatibility: derive the subdivision fields from a depth.
117
+ definition[:subdivision_fields] ||= SUBDIVISION_FIELDS.first(definition[:subdivision_depth] || 0)
118
+
94
119
  AddressField.assert_all_exist(definition[:required_fields])
95
120
  AddressField.assert_all_exist(definition[:uppercase_fields])
96
121
  AddressField.assert_all_exist(definition[:default_values].keys)
122
+ AddressField.assert_all_exist(definition[:subdivision_fields])
97
123
 
98
124
  @country_code = definition[:country_code]
99
125
  @locale = definition[:locale]
@@ -102,7 +128,7 @@ module Addressing
102
128
  @required_fields = definition[:required_fields]
103
129
  @uppercase_fields = definition[:uppercase_fields]
104
130
  @default_values = definition[:default_values]
105
- @subdivision_depth = definition[:subdivision_depth]
131
+ @subdivision_fields = definition[:subdivision_fields]
106
132
 
107
133
  if used_fields.include?(AddressField::ADMINISTRATIVE_AREA)
108
134
  if definition[:administrative_area_type]
@@ -144,15 +170,11 @@ module Addressing
144
170
  end
145
171
 
146
172
  # Gets the list of used subdivision fields.
173
+ #
174
+ # Note that a country might use a subdivision field without having
175
+ # predefined subdivisions for it, see #subdivision_fields.
147
176
  def used_subdivision_fields
148
- fields = [
149
- AddressField::ADMINISTRATIVE_AREA,
150
- AddressField::LOCALITY,
151
- AddressField::DEPENDENT_LOCALITY
152
- ]
153
-
154
- # Remove fields not used by the format.
155
- fields & used_fields
177
+ SUBDIVISION_FIELDS & used_fields
156
178
  end
157
179
  end
158
180