This repository has been archived by the owner on Jul 26, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 4
/
evaluate_test.go
569 lines (551 loc) · 36.3 KB
/
evaluate_test.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
/*
* Minio Cloud Storage, (C) 2019 Minio, Inc.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
package selectsimd
import (
"bytes"
"testing"
)
const parkingCitations10Lines = `
00000000 54 69 63 6b 65 74 20 6e 75 6d 62 65 72 2c 49 73 |Ticket number,Is|
00000010 73 75 65 20 44 61 74 65 2c 49 73 73 75 65 20 74 |sue Date,Issue t|
00000020 69 6d 65 2c 4d 65 74 65 72 20 49 64 2c 4d 61 72 |ime,Meter Id,Mar|
00000030 6b 65 64 20 54 69 6d 65 2c 52 50 20 53 74 61 74 |ked Time,RP Stat|
00000040 65 20 50 6c 61 74 65 2c 50 6c 61 74 65 20 45 78 |e Plate,Plate Ex|
00000050 70 69 72 79 20 44 61 74 65 2c 56 49 4e 2c 4d 61 |piry Date,VIN,Ma|
00000060 6b 65 2c 42 6f 64 79 20 53 74 79 6c 65 2c 43 6f |ke,Body Style,Co|
00000070 6c 6f 72 2c 4c 6f 63 61 74 69 6f 6e 2c 52 6f 75 |lor,Location,Rou|
00000080 74 65 2c 41 67 65 6e 63 79 2c 56 69 6f 6c 61 74 |te,Agency,Violat|
00000090 69 6f 6e 20 63 6f 64 65 2c 56 69 6f 6c 61 74 69 |ion code,Violati|
000000a0 6f 6e 20 44 65 73 63 72 69 70 74 69 6f 6e 2c 46 |on Description,F|
000000b0 69 6e 65 20 61 6d 6f 75 6e 74 2c 4c 61 74 69 74 |ine amount,Latit|
000000c0 75 64 65 2c 4c 6f 6e 67 69 74 75 64 65 0d 0a 31 |ude,Longitude..1|
000000d0 31 30 33 33 34 31 31 31 36 2c 32 30 31 35 2d 31 |103341116,2015-1|
000000e0 32 2d 32 31 54 30 30 3a 30 30 3a 30 30 2c 31 32 |2-21T00:00:00,12|
000000f0 35 31 2c 2c 2c 43 41 2c 32 30 30 33 30 34 2c 2c |51,,,CA,200304,,|
00000100 48 4f 4e 44 2c 50 41 2c 47 59 2c 31 33 31 34 37 |HOND,PA,GY,13147|
00000110 20 57 45 4c 42 59 20 57 41 59 2c 30 31 35 32 31 | WELBY WAY,01521|
00000120 2c 31 2c 34 30 30 30 41 31 2c 4e 4f 20 45 56 49 |,1,4000A1,NO EVI|
00000130 44 45 4e 43 45 20 4f 46 20 52 45 47 2c 35 30 2c |DENCE OF REG,50,|
00000140 39 39 39 39 39 2c 39 39 39 39 39 0d 0a 31 31 30 |99999,99999..110|
00000150 33 37 30 30 31 35 30 2c 32 30 31 35 2d 31 32 2d |3700150,2015-12-|
00000160 32 31 54 30 30 3a 30 30 3a 30 30 2c 31 34 33 35 |21T00:00:00,1435|
00000170 2c 2c 2c 43 41 2c 32 30 31 35 31 32 2c 2c 47 4d |,,,CA,201512,,GM|
00000180 43 2c 56 4e 2c 57 48 2c 35 32 35 20 53 20 4d 41 |C,VN,WH,525 S MA|
00000190 49 4e 20 53 54 2c 31 43 35 31 2c 31 2c 34 30 30 |IN ST,1C51,1,400|
000001a0 30 41 31 2c 4e 4f 20 45 56 49 44 45 4e 43 45 20 |0A1,NO EVIDENCE |
000001b0 4f 46 20 52 45 47 2c 35 30 2c 39 39 39 39 39 2c |OF REG,50,99999,|
000001c0 39 39 39 39 39 0d 0a 31 31 30 34 38 30 33 30 30 |99999..110480300|
000001d0 30 2c 32 30 31 35 2d 31 32 2d 32 31 54 30 30 3a |0,2015-12-21T00:|
000001e0 30 30 3a 30 30 2c 32 30 35 35 2c 2c 2c 43 41 2c |00:00,2055,,,CA,|
000001f0 32 30 31 35 30 33 2c 2c 4e 49 53 53 2c 50 41 2c |201503,,NISS,PA,|
00000200 42 4b 2c 32 30 30 20 57 4f 52 4c 44 20 57 41 59 |BK,200 WORLD WAY|
00000210 2c 32 52 32 2c 32 2c 38 39 33 39 2c 57 48 49 54 |,2R2,2,8939,WHIT|
00000220 45 20 43 55 52 42 2c 35 38 2c 36 34 33 39 39 39 |E CURB,58,643999|
00000230 37 2e 39 2c 31 38 30 32 36 38 36 2e 34 0d 0a 31 |7.9,1802686.4..1|
00000240 31 30 34 38 32 30 37 33 32 2c 32 30 31 35 2d 31 |104820732,2015-1|
00000250 32 2d 32 36 54 30 30 3a 30 30 3a 30 30 2c 31 35 |2-26T00:00:00,15|
00000260 31 35 2c 2c 2c 43 41 2c 2c 2c 41 43 55 52 2c 50 |15,,,CA,,,ACUR,P|
00000270 41 2c 57 48 2c 31 30 30 20 57 4f 52 4c 44 20 57 |A,WH,100 WORLD W|
00000280 41 59 2c 32 46 31 31 2c 32 2c 30 30 30 2c 31 37 |AY,2F11,2,000,17|
00000290 31 30 34 68 2c 2c 36 34 34 30 30 34 31 2e 31 2c |104h,,6440041.1,|
000002a0 31 38 30 32 36 38 36 2e 32 0d 0a 31 31 30 35 34 |1802686.2..11054|
000002b0 36 31 34 35 33 2c 32 30 31 35 2d 30 39 2d 31 35 |61453,2015-09-15|
000002c0 54 30 30 3a 30 30 3a 30 30 2c 31 31 35 2c 2c 2c |T00:00:00,115,,,|
000002d0 43 41 2c 32 30 30 33 31 36 2c 2c 43 48 45 56 2c |CA,200316,,CHEV,|
000002e0 50 41 2c 42 4b 2c 47 45 4f 52 47 49 41 20 53 54 |PA,BK,GEORGIA ST|
000002f0 2f 4f 4c 59 4d 50 49 43 2c 31 46 42 37 30 2c 31 |/OLYMPIC,1FB70,1|
00000300 2c 38 30 36 39 41 2c 4e 4f 20 53 54 4f 50 50 49 |,8069A,NO STOPPI|
00000310 4e 47 2f 53 54 41 4e 44 49 4e 47 2c 39 33 2c 39 |NG/STANDING,93,9|
00000320 39 39 39 39 2c 39 39 39 39 39 0d 0a 31 31 30 36 |9999,99999..1106|
00000330 32 32 36 35 39 30 2c 32 30 31 35 2d 30 39 2d 31 |226590,2015-09-1|
00000340 35 54 30 30 3a 30 30 3a 30 30 2c 31 39 2c 2c 2c |5T00:00:00,19,,,|
00000350 43 41 2c 32 30 31 35 30 37 2c 2c 43 48 45 56 2c |CA,201507,,CHEV,|
00000360 56 4e 2c 47 59 2c 53 41 4e 20 50 45 44 52 4f 20 |VN,GY,SAN PEDRO |
00000370 53 2f 4f 20 42 4f 59 44 2c 31 41 33 35 57 2c 31 |S/O BOYD,1A35W,1|
00000380 2c 34 30 30 30 41 31 2c 4e 4f 20 45 56 49 44 45 |,4000A1,NO EVIDE|
00000390 4e 43 45 20 4f 46 20 52 45 47 2c 35 30 2c 39 39 |NCE OF REG,50,99|
000003a0 39 39 39 2c 39 39 39 39 39 0d 0a 31 31 30 36 35 |999,99999..11065|
000003b0 30 30 34 35 32 2c 32 30 31 35 2d 31 32 2d 31 37 |00452,2015-12-17|
000003c0 54 30 30 3a 30 30 3a 30 30 2c 31 37 31 30 2c 2c |T00:00:00,1710,,|
000003d0 2c 43 41 2c 32 30 31 36 30 35 2c 2c 4d 41 5a 44 |,CA,201605,,MAZD|
000003e0 2c 50 41 2c 42 4c 2c 53 55 4e 53 45 54 2f 41 4c |,PA,BL,SUNSET/AL|
000003f0 56 41 52 41 44 4f 2c 30 30 32 31 37 2c 31 2c 38 |VARADO,00217,1,8|
00000400 30 37 30 2c 50 41 52 4b 20 49 4e 20 47 52 49 44 |070,PARK IN GRID|
00000410 20 4c 4f 43 4b 20 5a 4e 2c 31 36 33 2c 39 39 39 | LOCK ZN,163,999|
00000420 39 39 2c 39 39 39 39 39 0d 0a 31 31 30 36 35 30 |99,99999..110650|
00000430 30 34 36 33 2c 32 30 31 35 2d 31 32 2d 31 37 54 |0463,2015-12-17T|
00000440 30 30 3a 30 30 3a 30 30 2c 31 37 31 30 2c 2c 2c |00:00:00,1710,,,|
00000450 43 41 2c 32 30 31 36 30 32 2c 2c 54 4f 59 4f 2c |CA,201602,,TOYO,|
00000460 50 41 2c 42 4b 2c 53 55 4e 53 45 54 2f 41 4c 56 |PA,BK,SUNSET/ALV|
00000470 41 52 41 44 4f 2c 30 30 32 31 37 2c 31 2c 38 30 |ARADO,00217,1,80|
00000480 37 30 2c 50 41 52 4b 20 49 4e 20 47 52 49 44 20 |70,PARK IN GRID |
00000490 4c 4f 43 4b 20 5a 4e 2c 31 36 33 2c 39 39 39 39 |LOCK ZN,163,9999|
000004a0 39 2c 39 39 39 39 39 0d 0a 31 31 30 36 35 30 36 |9,99999..1106506|
000004b0 34 30 32 2c 32 30 31 35 2d 31 32 2d 32 32 54 30 |402,2015-12-22T0|
000004c0 30 3a 30 30 3a 30 30 2c 39 34 35 2c 2c 2c 43 41 |0:00:00,945,,,CA|
000004d0 2c 32 30 31 36 30 35 2c 2c 43 48 45 56 2c 50 41 |,201605,,CHEV,PA|
000004e0 2c 42 52 2c 37 32 31 20 53 20 57 45 53 54 4c 41 |,BR,721 S WESTLA|
000004f0 4b 45 2c 32 41 37 35 2c 31 2c 38 30 36 39 41 41 |KE,2A75,1,8069AA|
00000500 2c 4e 4f 20 53 54 4f 50 2f 53 54 41 4e 44 20 41 |,NO STOP/STAND A|
00000510 4d 2c 39 33 2c 39 39 39 39 39 2c 39 39 39 39 39 |M,93,99999,99999|
00000520 0d 0a 31 31 30 36 35 30 36 34 31 33 2c 32 30 31 |..1106506413,201|
00000530 35 2d 31 32 2d 32 32 54 30 30 3a 30 30 3a 30 30 |5-12-22T00:00:00|
00000540 2c 31 31 30 30 2c 2c 2c 43 41 2c 32 30 31 37 30 |,1100,,,CA,20170|
00000550 31 2c 2c 4e 49 53 53 2c 50 41 2c 53 49 2c 31 31 |1,,NISS,PA,SI,11|
00000560 35 39 20 48 55 4e 54 4c 45 59 20 44 52 2c 32 41 |59 HUNTLEY DR,2A|
00000570 37 35 2c 31 2c 38 30 36 39 41 41 2c 4e 4f 20 53 |75,1,8069AA,NO S|
00000580 54 4f 50 2f 53 54 41 4e 44 20 41 4d 2c 39 33 2c |TOP/STAND AM,93,|
00000590 39 39 39 39 39 2c 39 39 39 39 39 0d 0a |99999,99999..|
0000059d`
const worldCitiesPop10Lines = `
00000000 43 6f 75 6e 74 72 79 2c 43 69 74 79 2c 41 63 63 |Country,City,Acc|
00000010 65 6e 74 43 69 74 79 2c 52 65 67 69 6f 6e 2c 50 |entCity,Region,P|
00000020 6f 70 75 6c 61 74 69 6f 6e 2c 4c 61 74 69 74 75 |opulation,Latitu|
00000030 64 65 2c 4c 6f 6e 67 69 74 75 64 65 0a 64 65 2c |de,Longitude.de,|
00000040 68 65 6d 62 72 6f 63 6b 2c 48 65 6d 62 72 6f 63 |hembrock,Hembroc|
00000050 6b 2c 30 37 2c 2c 35 31 2e 34 31 36 36 36 37 2c |k,07,,51.416667,|
00000060 37 2e 37 35 0a 70 6b 2c 6a 68 6f 6b 20 79 61 67 |7.75.pk,jhok yag|
00000070 61 6e 69 77 61 6c 69 2c 4a 68 6f 6b 20 59 61 67 |aniwali,Jhok Yag|
00000080 61 6e 69 77 61 6c 69 2c 30 34 2c 2c 33 30 2e 35 |aniwali,04,,30.5|
00000090 32 38 32 34 32 2c 37 30 2e 35 37 39 31 32 0a 66 |28242,70.57912.f|
000000a0 72 2c 72 65 62 65 72 74 69 6e 67 75 65 2c 52 65 |r,rebertingue,Re|
000000b0 62 65 72 74 69 6e 67 75 65 2c 42 34 2c 2c 35 30 |bertingue,B4,,50|
000000c0 2e 37 38 31 33 31 36 2c 31 2e 37 38 32 33 32 34 |.781316,1.782324|
000000d0 0a 64 65 2c 74 72 61 69 73 2d 6d 75 6e 7a 65 6e |.de,trais-munzen|
000000e0 62 65 72 67 2c 54 72 61 69 73 2d 4d c3 bc 6e 7a |berg,Trais-M..nz|
000000f0 65 6e 62 65 72 67 2c 30 35 2c 2c 35 30 2e 34 36 |enberg,05,,50.46|
00000100 36 36 36 37 2c 38 2e 37 38 33 33 33 33 0a 66 72 |6667,8.783333.fr|
00000110 2c 63 68 61 6e 69 6c 6c 65 74 2c 43 68 61 6e 69 |,chanillet,Chani|
00000120 6c 6c 65 74 2c 42 35 2c 2c 34 37 2e 37 32 34 38 |llet,B5,,47.7248|
00000130 38 34 2c 2d 31 2e 32 35 31 35 35 35 0a 65 73 2c |84,-1.251555.es,|
00000140 6d 75 72 69 61 73 2c 4d 75 72 69 61 73 2c 33 34 |murias,Murias,34|
00000150 2c 2c 34 33 2e 31 33 30 35 32 36 2c 2d 35 2e 36 |,,43.130526,-5.6|
00000160 37 32 30 34 38 0a 63 64 2c 6c 75 6d 77 65 2c 4c |72048.cd,lumwe,L|
00000170 75 6d 77 65 2c 30 35 2c 2c 2d 38 2e 36 35 37 35 |umwe,05,,-8.6575|
00000180 2c 32 35 2e 32 33 36 36 36 37 0a 64 6b 2c 76 65 |,25.236667.dk,ve|
00000190 6e 73 6c 65 76 2c 56 65 6e 73 6c 65 76 2c 32 30 |nslev,Venslev,20|
000001a0 2c 2c 35 35 2e 32 35 34 38 35 33 2c 31 31 2e 34 |,,55.254853,11.4|
000001b0 35 35 39 38 32 0a 63 6e 2c 74 65 6e 67 66 6f 75 |55982.cn,tengfou|
000001c0 2c 54 65 6e 67 66 6f 75 2c 30 33 2c 2c 32 38 2e |,Tengfou,03,,28.|
000001d0 32 2c 31 31 36 2e 37 38 33 33 33 33 0a 6c 62 2c |2,116.783333.lb,|
000001e0 61 6c 20 71 75 73 61 79 72 2c 41 6c 20 51 75 73 |al qusayr,Al Qus|
000001f0 61 79 72 2c 30 31 2c 2c 33 34 2e 34 36 36 36 36 |ayr,01,,34.46666|
00000200 36 37 2c 33 36 2e 34 33 33 33 33 33 33 0a 75 73 |67,36.4333333.us|
00000210 2c 66 65 72 6e 20 72 69 64 67 65 20 73 68 6f 72 |,fern ridge shor|
00000220 65 73 2c 46 65 72 6e 20 52 69 64 67 65 20 53 68 |es,Fern Ridge Sh|
00000230 6f 72 65 73 2c 4f 52 2c 2c 34 34 2e 30 38 31 39 |ores,OR,,44.0819|
00000240 34 34 34 2c 2d 31 32 33 2e 33 30 36 39 34 34 34 |444,-123.3069444|
00000250 0a 65 73 2c 73 6f 75 74 6f 6d 65 6c 2c 53 6f 75 |.es,soutomel,Sou|
00000260 74 6f 6d 65 6c 2c 35 38 2c 2c 34 32 2e 31 36 36 |tomel,58,,42.166|
00000270 36 36 37 2c 2d 37 2e 39 0a 72 75 2c 6f 7a 6f 72 |667,-7.9.ru,ozor|
00000280 6e 6f 76 6f 2c 4f 7a 6f 72 6e 6f 76 6f 2c 38 33 |novo,Ozornovo,83|
00000290 2c 2c 35 35 2e 35 35 36 38 2c 34 31 2e 36 34 35 |,,55.5568,41.645|
000002a0 36 0a 69 72 2c 66 61 6c 61 6b 65 64 20 64 69 6e |6.ir,falaked din|
000002b0 2c 46 61 6c 61 6b 65 64 20 44 69 6e 2c 32 33 2c |,Falaked Din,23,|
000002c0 2c 33 33 2e 38 35 37 39 2c 34 38 2e 37 37 32 39 |,33.8579,48.7729|
000002d0 0a 66 72 2c 73 61 69 6e 74 2d 63 72 69 71 2c 53 |.fr,saint-criq,S|
000002e0 61 69 6e 74 2d 43 72 69 71 2c 42 33 2c 2c 34 33 |aint-Criq,B3,,43|
000002f0 2e 36 39 39 34 30 36 2c 2e 39 39 36 36 36 39 0a |.699406,.996669.|
00000300 6e 67 2c 69 6b 6f 74 20 65 6b 6f 6e 67 2c 49 6b |ng,ikot ekong,Ik|
00000310 6f 74 20 45 6b 6f 6e 67 2c 32 31 2c 2c 34 2e 36 |ot Ekong,21,,4.6|
00000320 32 36 30 33 37 2c 37 2e 37 39 32 38 34 32 0a 63 |26037,7.792842.c|
00000330 6e 2c 6e 61 69 6e 79 69 6e 67 2c 4e 61 69 6e 79 |n,nainying,Nainy|
00000340 69 6e 67 2c 31 34 2c 2c 32 38 2e 38 30 34 2c 38 |ing,14,,28.804,8|
00000350 39 2e 36 30 34 0a 62 79 2c 64 7a 79 61 67 69 6c |9.604.by,dzyagil|
00000360 6e 6f 2c 44 7a 79 61 67 69 6c 6e 6f 2c 30 36 2c |no,Dzyagilno,06,|
00000370 2c 35 33 2e 36 38 33 33 33 33 33 2c 32 37 2e 30 |,53.6833333,27.0|
00000380 38 33 33 33 33 33 0a 72 75 2c 67 72 65 6b 6f 76 |833333.ru,grekov|
00000390 6f 2d 73 74 65 70 61 6e 6f 76 73 6b 61 79 61 2c |o-stepanovskaya,|
000003a0 47 72 65 6b 6f 76 6f 2d 73 74 65 70 61 6e 6f 76 |Grekovo-stepanov|
000003b0 73 6b 61 79 61 2c 36 31 2c 2c 34 39 2e 33 34 34 |skaya,61,,49.344|
000003c0 36 31 37 2c 34 30 2e 36 36 32 32 36 32 0a 66 72 |617,40.662262.fr|
000003d0 2c 6c 65 20 62 6f 75 69 73 73 65 74 2c 4c 65 20 |,le bouisset,Le |
000003e0 42 6f 75 69 73 73 65 74 2c 39 37 2c 2c 34 34 2e |Bouisset,97,,44.|
000003f0 36 38 37 39 38 2c 2e 35 33 39 35 30 35 0a 69 72 |68798,.539505.ir|
00000400 2c 6d 61 7a 61 72 74 61 6a 69 6e 2c 4d 61 7a 61 |,mazartajin,Maza|
00000410 72 74 61 6a 69 6e 2c 33 36 2c 2c 33 36 2e 30 33 |rtajin,36,,36.03|
00000420 35 2c 34 39 2e 31 37 37 38 0a 6e 6c 2c 62 69 6e |5,49.1778.nl,bin|
00000430 6e 65 6e 68 6f 66 2c 42 69 6e 6e 65 6e 68 6f 66 |nenhof,Binnenhof|
00000440 2c 31 31 2c 2c 35 32 2e 31 36 34 31 37 37 2c 34 |,11,,52.164177,4|
00000450 2e 35 33 36 34 34 32 0a 69 71 2c 6d 61 73 60 61 |.536442.iq,mas-a|
00000460 64 2c 4d 61 73 60 61 64 2c 31 35 2c 2c 33 36 2e |d,Mas-ad,15,,36.|
00000470 32 37 36 36 36 36 37 2c 34 32 2e 38 38 30 38 33 |2766667,42.88083|
00000480 33 33 0a 70 65 2c 75 6d 61 6c 73 6f 2c 55 6d 61 |33.pe,umalso,Uma|
00000490 6c 73 6f 2c 31 38 2c 2c 2d 31 36 2e 31 33 33 33 |lso,18,,-16.1333|
000004a0 33 33 33 2c 2d 37 30 2e 34 38 33 33 33 33 33 0a |333,-70.4833333.|
000004b0 66 72 2c 6e 65 75 66 6d 6f 6e 74 69 65 72 73 2d |fr,neufmontiers-|
000004c0 6c 65 73 2d 6d 65 61 75 78 2c 4e 65 75 66 6d 6f |les-meaux,Neufmo|
000004d0 6e 74 69 65 72 73 2d 6c c3 a8 73 2d 4d 65 61 75 |ntiers-l..s-Meau|
000004e0 78 2c 41 38 2c 2c 34 38 2e 39 37 37 37 34 39 2c |x,A8,,48.977749,|
000004f0 32 2e 38 34 31 32 30 31 0a 64 65 2c 62 65 69 6d |2.841201.de,beim|
00000500 20 62 75 72 67 65 72 62 75 73 63 68 2c 42 65 69 | burgerbusch,Bei|
00000510 6d 20 42 c3 bc 72 67 65 72 62 75 73 63 68 2c 30 |m B..rgerbusch,0|
00000520 36 2c 2c 35 33 2e 31 36 36 36 36 37 2c 38 2e 32 |6,,53.166667,8.2|
00000530 0a 75 73 2c 62 72 61 74 73 62 65 72 67 2c 42 72 |.us,bratsberg,Br|
00000540 61 74 73 62 65 72 67 2c 4d 4e 2c 2c 34 33 2e 37 |atsberg,MN,,43.7|
00000550 33 35 30 30 30 30 2c 2d 39 31 2e 37 37 30 32 37 |350000,-91.77027|
00000560 37 38 0a 61 66 2c 61 72 69 67 68 20 62 61 74 75 |78.af,arigh batu|
00000570 72 2c 41 72 69 67 68 20 42 61 74 75 72 2c 33 30 |r,Arigh Batur,30|
00000580 2c 2c 33 37 2e 33 34 38 36 31 31 2c 36 36 2e 39 |,,37.348611,66.9|
00000590 36 31 36 36 37 0a 6c 61 2c 62 61 6e 20 70 68 6f |61667.la,ban pho|
000005a0 75 76 69 61 6e 67 2c 42 61 6e 20 50 68 6f 75 76 |uviang,Ban Phouv|
000005b0 69 61 6e 67 2c 31 34 2c 2c 32 30 2e 30 36 34 37 |iang,14,,20.0647|
000005c0 32 32 2c 31 30 33 2e 33 39 39 37 32 32 0a 6d 78 |22,103.399722.mx|
000005d0 2c 63 61 6e 64 65 6c 61 2c 43 61 6e 64 65 6c 61 |,candela,Candela|
000005e0 2c 30 37 2c 2c 32 36 2e 38 33 33 33 33 33 2c 2d |,07,,26.833333,-|
000005f0 31 30 30 2e 36 36 36 36 36 37 0a 63 7a 2c 6b 76 |100.666667.cz,kv|
00000600 65 74 6f 76 2c 4b 76 65 74 6f 76 2c 37 39 2c 2c |etov,Kvetov,79,,|
00000610 34 39 2e 34 32 35 37 32 36 2c 31 34 2e 32 37 33 |49.425726,14.273|
00000620 37 38 0a 6d 79 2c 6b 61 6d 70 6f 6e 67 20 6b 61 |78.my,kampong ka|
00000630 6e 67 6b 61 72 2c 4b 61 6d 70 6f 6e 67 20 4b 61 |ngkar,Kampong Ka|
00000640 6e 67 6b 61 72 2c 30 31 2c 2c 32 2e 31 35 38 35 |ngkar,01,,2.1585|
00000650 2c 31 30 32 2e 35 36 33 38 0a 63 64 2c 6e 64 61 |,102.5638.cd,nda|
00000660 6d 62 61 2c 4e 64 61 6d 62 61 2c 30 32 2c 2c 2d |mba,Ndamba,02,,-|
00000670 36 2e 33 36 36 36 36 37 2c 31 37 2e 35 0a 72 75 |6.366667,17.5.ru|
00000680 2c 67 72 79 61 64 61 2c 47 72 79 61 64 61 2c 38 |,gryada,Gryada,8|
00000690 35 2c 2c 35 38 2e 36 35 39 2c 33 36 2e 33 33 34 |5,,58.659,36.334|
000006a0 36 0a 73 6c 2c 6e 79 61 6d 61 77 61 62 75 2c 4e |6.sl,nyamawabu,N|
000006b0 79 61 6d 61 77 61 62 75 2c 30 33 2c 2c 38 2e 31 |yamawabu,03,,8.1|
000006c0 35 2c 2d 31 32 2e 30 35 0a 6c 6b 2c 70 75 73 73 |5,-12.05.lk,puss|
000006d0 61 6c 61 2c 50 75 73 73 61 6c 61 2c 33 34 2c 2c |ala,Pussala,34,,|
000006e0 36 2e 30 2c 38 30 2e 37 0a 61 75 2c 70 61 6c 75 |6.0,80.7.au,palu|
000006f0 6d 70 61 2c 50 61 6c 75 6d 70 61 2c 30 33 2c 2c |mpa,Palumpa,03,,|
00000700 2d 31 34 2e 33 35 31 31 31 2c 31 32 39 2e 38 38 |-14.35111,129.88|
00000710 31 36 32 32 0a 63 64 2c 70 6f 74 65 2d 70 6f 74 |1622.cd,pote-pot|
00000720 65 20 69 69 2c 50 6f 74 65 2d 50 6f 74 65 20 49 |e ii,Pote-Pote I|
00000730 49 2c 30 31 2c 2c 2d 33 2e 33 33 33 33 33 33 2c |I,01,,-3.333333,|
00000740 31 37 2e 34 33 33 33 33 33 0a 61 6f 2c 63 61 74 |17.433333.ao,cat|
00000750 61 63 61 2c 43 61 74 61 63 61 2c 31 37 2c 2c 2d |aca,Cataca,17,,-|
00000760 38 2e 32 35 33 32 33 32 2c 32 30 2e 33 31 31 30 |8.253232,20.3110|
00000770 39 35 0a 64 6f 2c 72 61 6e 63 68 6f 20 76 69 65 |95.do,rancho vie|
00000780 6a 6f 2c 52 61 6e 63 68 6f 20 56 69 65 6a 6f 2c |jo,Rancho Viejo,|
00000790 30 36 2c 2c 31 39 2e 31 38 33 33 33 33 33 2c 2d |06,,19.1833333,-|
000007a0 36 39 2e 39 36 36 36 36 36 37 0a 6a 70 2c 6b 61 |69.9666667.jp,ka|
000007b0 77 61 73 61 6b 69 2c 4b 61 77 61 73 61 6b 69 2c |wasaki,Kawasaki,|
000007c0 33 37 2c 2c 33 34 2e 37 33 33 33 33 33 2c 31 33 |37,,34.733333,13|
000007d0 38 2e 32 31 36 36 36 37 0a 73 6b 2c 74 72 61 76 |8.216667.sk,trav|
000007e0 6e 69 63 61 2c 54 72 c3 a1 76 6e 69 63 61 2c 30 |nica,Tr..vnica,0|
000007f0 34 2c 2c 34 38 2e 31 35 2c 31 38 2e 33 33 33 33 |4,,48.15,18.3333|
00000800 33 33 33 0a 69 72 2c 62 75 72 20 6b 68 65 79 6c |333.ir,bur kheyl|
00000810 2d 65 20 61 72 61 74 65 68 2c 42 75 72 20 4b 68 |-e arateh,Bur Kh|
00000820 65 79 6c 2d 65 20 41 72 61 74 65 68 2c 33 35 2c |eyl-e Arateh,35,|
00000830 2c 33 36 2e 34 39 30 33 33 37 2c 35 32 2e 39 33 |,36.490337,52.93|
00000840 39 35 32 34 0a 64 65 2c 65 6c 6b 68 61 75 73 65 |9524.de,elkhause|
00000850 6e 2c 45 6c 6b 68 61 75 73 65 6e 2c 30 38 2c 2c |n,Elkhausen,08,,|
00000860 35 30 2e 38 31 36 36 36 37 2c 37 2e 38 0a 74 72 |50.816667,7.8.tr|
00000870 2c 61 6c 74 69 6e 64 61 67 6b 6f 79 75 2c 41 6c |,altindagkoyu,Al|
00000880 74 69 6e 64 61 67 6b 6f 79 75 2c 33 35 2c 2c 33 |tindagkoyu,35,,3|
00000890 38 2e 34 30 33 30 33 39 2c 32 37 2e 31 36 32 38 |8.403039,27.1628|
000008a0 35 38 0a 63 6e 2c 62 61 69 6d 65 6e 6c 6f 75 2c |58.cn,baimenlou,|
000008b0 42 61 69 6d 65 6e 6c 6f 75 2c 31 31 2c 2c 32 37 |Baimenlou,11,,27|
000008c0 2e 39 30 39 31 36 37 2c 31 31 32 2e 32 33 39 34 |.909167,112.2394|
000008d0 34 34 0a 67 65 2c 6d 69 6b 27 65 6c 72 69 70 27 |44.ge,mik'elrip'|
000008e0 73 68 69 2c 4d 69 6b 27 65 6c 72 69 70 27 73 68 |shi,Mik'elrip'sh|
000008f0 69 2c 33 34 2c 2c 34 33 2e 35 30 32 35 2c 34 30 |i,34,,43.5025,40|
00000900 2e 30 38 35 38 33 33 33 0a 6e 67 2c 6b 69 72 69 |.0858333.ng,kiri|
00000910 6e 6f 77 61 2c 4b 69 72 69 6e 6f 77 61 2c 32 37 |nowa,Kirinowa,27|
00000920 2c 2c 31 32 2e 34 32 33 37 38 38 2c 31 33 2e 39 |,,12.423788,13.9|
00000930 32 34 38 33 34 0a 6c 72 2c 64 69 76 61 2c 44 69 |24834.lr,diva,Di|
00000940 76 61 2c 31 32 2c 2c 36 2e 38 37 38 33 33 33 33 |va,12,,6.8783333|
00000950 2c 2d 31 31 2e 33 34 38 33 33 33 33 0a 72 75 2c |,-11.3483333.ru,|
00000960 70 61 70 6f 72 74 6e 6f 2c 50 61 70 6f 72 74 6e |paportno,Paportn|
00000970 6f 2c 35 32 2c 2c 35 37 2e 34 30 36 33 36 35 2c |o,52,,57.406365,|
00000980 33 30 2e 36 34 34 31 30 37 0a 6d 67 2c 62 65 72 |30.644107.mg,ber|
00000990 61 6d 61 6e 6a 61 2c 42 65 72 61 6d 61 6e 6a 61 |amanja,Beramanja|
000009a0 2c 30 34 2c 2c 2d 31 37 2e 33 36 36 36 36 36 37 |,04,,-17.3666667|
000009b0 2c 34 38 2e 36 33 33 33 33 33 33 0a 63 6e 2c 63 |,48.6333333.cn,c|
000009c0 68 65 68 61 6e 67 2c 43 68 65 68 61 6e 67 2c 31 |hehang,Chehang,1|
000009d0 30 2c 2c 33 38 2e 30 32 38 36 31 31 2c 31 31 34 |0,,38.028611,114|
000009e0 2e 33 36 38 33 33 33 0a 68 6e 2c 63 65 67 75 61 |.368333.hn,cegua|
000009f0 63 61 2c 43 65 67 75 61 63 61 2c 31 36 2c 31 32 |ca,Ceguaca,16,12|
00000a00 33 39 2c 31 34 2e 38 2c 2d 38 38 2e 32 0a 63 6e |39,14.8,-88.2.cn|
00000a10 2c 64 61 66 75 67 6f 75 2c 44 61 66 75 67 6f 75 |,dafugou,Dafugou|
00000a20 2c 32 36 2c 2c 33 33 2e 33 38 36 31 37 35 2c 31 |,26,,33.386175,1|
00000a30 30 37 2e 38 31 33 34 37 35 0a 67 68 2c 77 75 6c |07.813475.gh,wul|
00000a40 65 6e 63 68 69 2c 57 75 6c 65 6e 63 68 69 2c 30 |enchi,Wulenchi,0|
00000a50 36 2c 2c 38 2e 36 35 2c 30 2e 30 31 36 36 36 36 |6,,8.65,0.016666|
00000a60 37 0a 69 72 2c 74 61 6c 6c 2d 65 20 6b 75 73 68 |7.ir,tall-e kush|
00000a70 6b 2c 54 61 6c 6c 2d 65 20 4b 75 73 68 6b 2c 32 |k,Tall-e Kushk,2|
00000a80 39 2c 2c 32 38 2e 38 33 33 33 33 33 2c 35 36 2e |9,,28.833333,56.|
00000a90 32 36 36 36 36 37 0a 68 6e 2c 70 6c 61 79 61 73 |266667.hn,playas|
00000aa0 2c 50 6c 61 79 61 73 2c 30 38 2c 2c 31 34 2e 30 |,Playas,08,,14.0|
00000ab0 38 33 33 33 33 33 2c 2d 38 37 2e 30 33 33 33 33 |833333,-87.03333|
00000ac0 33 33 0a 75 73 2c 77 65 73 74 62 72 6f 6f 6b 65 |33.us,westbrooke|
00000ad0 2c 57 65 73 74 62 72 6f 6f 6b 65 2c 47 41 2c 2c |,Westbrooke,GA,,|
00000ae0 33 32 2e 34 32 37 37 37 37 38 2c 2d 38 31 2e 38 |32.4277778,-81.8|
00000af0 30 37 32 32 32 32 0a 72 75 2c 6b 75 72 67 61 6e |072222.ru,kurgan|
00000b00 6f 76 61 2c 4b 75 72 67 61 6e 6f 76 61 2c 34 30 |ova,Kurganova,40|
00000b10 2c 2c 35 35 2e 34 30 38 36 31 31 2c 36 33 2e 32 |,,55.408611,63.2|
00000b20 39 33 38 38 39 0a 75 73 2c 61 6e 74 20 66 6c 61 |93889.us,ant fla|
00000b30 74 2c 41 6e 74 20 46 6c 61 74 2c 4d 54 2c 2c 34 |t,Ant Flat,MT,,4|
00000b40 38 2e 37 32 34 31 36 36 37 2c 2d 31 31 34 2e 38 |8.7241667,-114.8|
00000b50 37 35 35 35 35 36 0a 62 64 2c 70 61 68 61 72 70 |755556.bd,paharp|
00000b60 75 72 2c 50 61 68 61 72 70 75 72 2c 38 30 2c 2c |ur,Paharpur,80,,|
00000b70 32 33 2e 35 33 33 33 33 33 33 2c 39 31 2e 31 38 |23.5333333,91.18|
00000b80 33 33 33 33 33 0a 69 64 2c 74 61 6e 67 61 6e 62 |33333.id,tanganb|
00000b90 61 72 75 2c 54 61 6e 67 61 6e 62 61 72 75 2c 34 |aru,Tanganbaru,4|
00000ba0 31 2c 2c 2d 33 2e 34 35 32 33 2c 31 31 38 2e 39 |1,,-3.4523,118.9|
00000bb0 38 34 0a 6d 79 2c 6b 61 6d 70 6f 6e 67 20 67 6f |84.my,kampong go|
00000bc0 73 6f 6e 67 2c 4b 61 6d 70 6f 6e 67 20 47 6f 73 |song,Kampong Gos|
00000bd0 6f 6e 67 2c 31 33 2c 2c 34 2e 38 31 36 36 36 37 |ong,13,,4.816667|
00000be0 2c 31 30 33 2e 33 33 33 33 33 33 0a 61 66 2c 6d |,103.333333.af,m|
00000bf0 75 73 77 61 6e 69 20 73 75 66 6c 61 2c 4d 75 73 |uswani sufla,Mus|
00000c00 77 61 6e 69 20 53 75 66 6c 61 2c 31 33 2c 2c 33 |wani Sufla,13,,3|
00000c10 34 2e 37 36 38 38 31 31 2c 36 39 2e 31 35 38 31 |4.768811,69.1581|
00000c20 35 38 0a 62 72 2c 74 75 70 69 2c 54 75 70 69 2c |58.br,tupi,Tupi,|
00000c30 32 37 2c 2c 2d 32 31 2e 34 2c 2d 35 31 2e 35 36 |27,,-21.4,-51.56|
00000c40 36 36 36 37 0a 62 67 2c 61 74 6f 6c 6f 76 6f 2c |6667.bg,atolovo,|
00000c50 41 74 6f 6c 6f 76 6f 2c 33 39 2c 2c 34 32 2e 36 |Atolovo,39,,42.6|
00000c60 2c 32 36 2e 37 35 0a 63 6c 2c 65 6c 20 61 6c 6d |,26.75.cl,el alm|
00000c70 65 6e 64 72 6f 2c 45 6c 20 41 6c 6d 65 6e 64 72 |endro,El Almendr|
00000c80 6f 2c 30 31 2c 2c 2d 33 32 2e 33 36 36 36 36 37 |o,01,,-32.366667|
00000c90 2c 2d 37 31 2e 31 35 0a 64 65 2c 61 6c 6b 65 72 |,-71.15.de,alker|
00000ca0 73 6c 65 62 65 6e 2c 41 6c 6b 65 72 73 6c 65 62 |sleben,Alkersleb|
00000cb0 65 6e 2c 31 35 2c 2c 35 30 2e 38 35 2c 31 31 2e |en,15,,50.85,11.|
00000cc0 30 33 33 33 33 33 0a 63 69 2c 74 63 68 65 6d 69 |033333.ci,tchemi|
00000cd0 6e 2c 54 63 68 65 6d 69 6e 2c 37 34 2c 2c 35 2e |n,Tchemin,74,,5.|
00000ce0 36 39 31 31 37 35 2c 2d 34 2e 32 32 33 39 31 36 |691175,-4.223916|
00000cf0 0a 6c 74 2c 6b 61 63 6b 6f 6e 69 61 69 2c 4b 61 |.lt,kackoniai,Ka|
00000d00 63 6b 6f 6e 69 61 69 2c 36 30 2c 2c 35 35 2e 31 |ckoniai,60,,55.1|
00000d10 36 36 36 36 36 37 2c 32 36 2e 35 0a 63 64 2c 73 |666667,26.5.cd,s|
00000d20 61 6b 69 2c 53 61 6b 69 2c 30 30 2c 2c 32 2e 35 |aki,Saki,00,,2.5|
00000d30 33 33 33 33 33 2c 32 37 2e 34 31 36 36 36 37 0a |33333,27.416667.|
00000d40 69 64 2c 70 61 6e 74 61 69 61 61 6e 2c 50 61 6e |id,pantaiaan,Pan|
00000d50 74 61 69 61 61 6e 2c 31 37 2c 2c 2d 38 2e 39 31 |taiaan,17,,-8.91|
00000d60 30 33 2c 31 31 36 2e 33 31 39 32 0a 69 64 2c 74 |03,116.3192.id,t|
00000d70 6a 69 77 61 6c 61 74 2c 54 6a 69 77 61 6c 61 74 |jiwalat,Tjiwalat|
00000d80 2c 33 30 2c 2c 2d 37 2e 33 38 30 34 2c 31 30 37 |,30,,-7.3804,107|
00000d90 2e 31 38 31 34 0a 63 6e 2c 71 69 61 6e 70 69 6e |.1814.cn,qianpin|
00000da0 67 2c 51 69 61 6e 70 69 6e 67 2c 30 37 2c 2c 32 |g,Qianping,07,,2|
00000db0 35 2e 37 35 37 35 2c 31 31 38 2e 32 31 33 38 38 |5.7575,118.21388|
00000dc0 39 0a 7a 61 2c 6d 6f 6c 6f 74 6f 2c 4d 6f 6c 6f |9.za,moloto,Molo|
00000dd0 74 6f 2c 30 36 2c 2c 2d 32 35 2e 34 36 32 36 30 |to,06,,-25.46260|
00000de0 36 2c 32 38 2e 36 33 38 37 33 33 0a 67 72 2c 73 |6,28.638733.gr,s|
00000df0 65 6c 6c 61 69 2c 53 c3 a9 6c 6c 61 69 2c 34 36 |ellai,S..llai,46|
00000e00 2c 2c 33 35 2e 33 31 36 36 36 36 37 2c 32 35 2e |,,35.3166667,25.|
00000e10 37 31 36 36 36 36 37 0a 66 72 2c 68 61 75 74 65 |7166667.fr,haute|
00000e20 2d 65 70 69 6e 65 2c 48 61 75 74 65 2d c3 89 70 |-epine,Haute-..p|
00000e30 69 6e 65 2c 42 36 2c 2c 34 39 2e 35 38 33 32 31 |ine,B6,,49.58321|
00000e40 33 2c 32 2e 30 31 31 33 38 33 0a 76 6e 2c 73 6f |3,2.011383.vn,so|
00000e50 63 20 74 6f 61 6d 2c 53 c3 b3 63 20 54 6f 61 6d |c toam,S..c Toam|
00000e60 2c 30 35 2c 2c 32 32 2e 36 35 2c 31 30 36 2e 31 |,05,,22.65,106.1|
00000e70 36 36 36 36 37 0a 69 72 2c 68 61 6e 7a 65 68 20 |66667.ir,hanzeh |
00000e80 70 75 72 64 2c 48 61 6e 7a 65 68 20 50 75 72 64 |purd,Hanzeh Purd|
00000e90 2c 30 38 2c 2c 33 36 2e 39 36 32 31 34 36 2c 34 |,08,,36.962146,4|
00000ea0 39 2e 38 38 32 37 30 37 0a 67 62 2c 62 69 73 68 |9.882707.gb,bish|
00000eb0 6f 70 73 20 6e 79 6d 70 74 6f 6e 2c 42 69 73 68 |ops nympton,Bish|
00000ec0 6f 70 73 20 4e 79 6d 70 74 6f 6e 2c 44 34 2c 2c |ops Nympton,D4,,|
00000ed0 35 31 2c 2d 33 2e 37 36 36 36 36 37 0a 69 72 2c |51,-3.766667.ir,|
00000ee0 68 6f 73 65 79 6e 61 62 61 64 2d 65 20 6b 6f 72 |hoseynabad-e kor|
00000ef0 75 73 2c 48 6f 73 65 79 6e 61 62 61 64 2d 65 20 |us,Hoseynabad-e |
00000f00 4b 6f 72 75 73 2c 32 35 2c 2c 33 35 2e 33 36 39 |Korus,25,,35.369|
00000f10 30 33 38 2c 35 32 2e 30 30 39 35 33 39 0a 6d 78 |038,52.009539.mx|
00000f20 2c 76 61 6c 6c 65 63 69 6c 6c 6f 2c 56 61 6c 6c |,vallecillo,Vall|
00000f30 65 63 69 6c 6c 6f 2c 31 31 2c 2c 31 39 2e 39 38 |ecillo,11,,19.98|
00000f40 34 31 36 37 2c 2d 31 30 30 2e 36 31 36 39 34 34 |4167,-100.616944|
00000f50 0a 69 72 2c 6f 6f 6a 6f 6f 6e 61 6b 2c 4f 6f 6a |.ir,oojoonak,Ooj|
00000f60 6f 6f 6e 61 6b 2c 32 36 2c 2c 33 35 2e 35 36 30 |oonak,26,,35.560|
00000f70 35 35 36 2c 35 32 2e 32 33 33 38 38 39 0a 75 73 |556,52.233889.us|
00000f80 2c 73 61 6e 20 61 6e 74 6f 6e 69 74 6f 2c 53 61 |,san antonito,Sa|
00000f90 6e 20 41 6e 74 6f 6e 69 74 6f 2c 4e 4d 2c 2c 33 |n Antonito,NM,,3|
00000fa0 35 2e 31 36 33 30 35 35 36 2c 2d 31 30 36 2e 33 |5.1630556,-106.3|
00000fb0 34 36 39 34 34 34 0a 6b 72 2c 77 6f 6e 61 6e 69 |469444.kr,wonani|
00000fc0 2c 57 6f 6e 61 6e 69 2c 31 33 2c 2c 33 37 2e 31 |,Wonani,13,,37.1|
00000fd0 30 30 38 33 33 2c 31 32 36 2e 37 38 32 35 0a 72 |00833,126.7825.r|
00000fe0 75 2c 62 65 72 65 7a 6f 76 6f 2c 42 65 72 c3 ab |u,berezovo,Ber..|
00000ff0 7a 6f 76 6f 2c 36 30 2c 2c 35 35 2e 39 33 33 33 |zovo,60,,55.9333|
00001000 33 33 2c 32 39 2e 37 0a 67 65 2c 64 67 68 76 61 |33,29.7.ge,dghva|
00001010 6e 69 2c 44 67 68 76 61 6e 69 2c 30 34 2c 2c 34 |ni,Dghvani,04,,4|
00001020 31 2e 35 38 35 32 37 37 38 2c 34 32 2e 32 32 31 |1.5852778,42.221|
00001030 33 38 38 39 0a 6d 6d 2c 6b 79 65 69 6e 67 79 61 |3889.mm,kyeingya|
00001040 75 6e 67 2c 4b 79 65 69 6e 67 79 61 75 6e 67 2c |ung,Kyeingyaung,|
00001050 31 30 2c 2c 32 33 2e 39 31 36 36 36 36 37 2c 39 |10,,23.9166667,9|
00001060 35 2e 37 36 36 36 36 36 37 0a 6c 76 2c 76 69 65 |5.7666667.lv,vie|
00001070 62 65 6e 65 2c 56 69 65 62 65 6e 65 2c 30 31 2c |bene,Viebene,01,|
00001080 2c 35 36 2e 37 2c 32 35 2e 31 35 0a 70 6b 2c 74 |,56.7,25.15.pk,t|
00001090 68 61 74 74 61 20 6e 6f 6f 6e 2c 54 68 61 74 74 |hatta noon,Thatt|
000010a0 61 20 4e 6f 6f 6e 2c 30 34 2c 2c 33 32 2e 31 35 |a Noon,04,,32.15|
000010b0 35 33 38 34 2c 37 32 2e 33 36 39 35 34 34 0a 72 |5384,72.369544.r|
000010c0 75 2c 70 6f 64 70 6f 72 6f 7a 68 79 65 2c 50 6f |u,podporozhye,Po|
000010d0 64 70 6f 72 6f 7a 68 79 65 2c 34 32 2c 31 39 36 |dporozhye,42,196|
000010e0 35 38 2c 36 30 2e 39 31 31 32 34 32 2c 33 34 2e |58,60.911242,34.|
000010f0 31 37 30 36 34 34 0a 68 72 2c 6d 65 72 68 61 74 |170644.hr,merhat|
00001100 6f 76 65 63 2c 4d 65 72 68 61 74 6f 76 65 63 2c |ovec,Merhatovec,|
00001110 30 39 2c 2c 34 36 2e 34 36 36 36 36 36 37 2c 31 |09,,46.4666667,1|
00001120 36 2e 33 38 33 33 33 33 33 0a 69 72 2c 6c 69 72 |6.3833333.ir,lir|
00001130 20 73 75 6b 68 74 65 68 2c 4c 69 72 20 53 75 6b | sukhteh,Lir Suk|
00001140 68 74 65 68 2c 30 35 2c 2c 33 30 2e 39 39 36 36 |hteh,05,,30.9966|
00001150 35 38 2c 35 30 2e 38 34 39 36 37 36 0a 69 72 2c |58,50.849676.ir,|
00001160 74 61 6b 68 74 2d 65 20 73 69 61 68 75 2c 54 61 |takht-e siahu,Ta|
00001170 6b 68 74 2d 65 20 53 69 61 68 75 2c 32 39 2c 2c |kht-e Siahu,29,,|
00001180 32 36 2e 39 34 32 39 33 39 2c 35 38 2e 31 34 38 |26.942939,58.148|
00001190 36 38 33 0a 74 77 2c 63 68 75 74 7a 75 6b 65 6e |683.tw,chutzuken|
000011a0 67 2c 43 68 75 74 7a 75 6b 65 6e 67 2c 30 34 2c |g,Chutzukeng,04,|
000011b0 2c 32 32 2e 39 38 33 33 33 33 33 2c 31 32 30 2e |,22.9833333,120.|
000011c0 35 31 36 36 36 36 37 0a 6c 76 2c 73 6f 76 6b 68 |5166667.lv,sovkh|
000011d0 6f 7a 20 6c 69 79 65 70 75 70 65 2c 53 6f 76 6b |oz liyepupe,Sovk|
000011e0 68 6f 7a 20 4c 69 79 65 70 75 70 65 2c 31 38 2c |hoz Liyepupe,18,|
000011f0 2c 35 37 2e 34 36 33 38 38 38 39 2c 32 34 2e 34 |,57.4638889,24.4|
00001200 36 37 37 37 37 38 0a 69 6e 2c 6b 65 73 68 6f 70 |677778.in,keshop|
00001210 75 72 20 6a 61 64 61 75 6e 70 75 72 2c 4b 65 73 |ur jadaunpur,Kes|
00001220 68 6f 70 75 72 20 4a 61 64 61 75 6e 70 75 72 2c |hopur Jadaunpur,|
00001230 33 36 2c 2c 32 36 2e 37 35 39 38 2c 37 39 2e 30 |36,,26.7598,79.0|
00001240 37 34 32 0a 72 75 2c 62 6c 69 7a 68 6e 65 70 6f |742.ru,blizhnepo|
00001250 64 67 6f 72 73 6b 69 79 2c 42 6c 69 7a 68 6e 65 |dgorskiy,Blizhne|
00001260 70 6f 64 67 6f 72 73 6b 69 79 2c 38 34 2c 2c 34 |podgorskiy,84,,4|
00001270 38 2e 34 31 38 38 36 2c 34 33 2e 30 37 30 32 37 |8.41886,43.07027|
00001280 39 0a 62 61 2c 70 61 72 61 74 75 73 69 63 69 2c |9.ba,paratusici,|
00001290 50 61 72 61 74 75 73 69 63 69 2c 30 32 2c 2c 34 |Paratusici,02,,4|
000012a0 34 2e 39 36 39 37 32 32 32 2c 31 36 2e 38 35 38 |4.9697222,16.858|
000012b0 36 31 31 31 0a 7a 6d 2c 6e 64 61 6e 67 61 6c 61 |6111.zm,ndangala|
000012c0 7a 61 6e 61 2c 4e 64 61 6e 67 61 6c 61 7a 61 6e |zana,Ndangalazan|
000012d0 61 2c 30 34 2c 2c 2d 31 37 2e 35 35 2c 32 35 2e |a,04,,-17.55,25.|
000012e0 36 31 36 36 36 36 37 0a |6166667.|
000012e8`
func testEvaluate(t *testing.T, hexdump string, position uint64, testCases []struct {
condition string
expectedHigh uint64
expectedLow uint64
}) {
blob := dump2hex(hexdump)
rows := bytes.Count(blob, []byte{0x0a})
rowIndices := make([]uint32, rows)
maskCommas := make([]uint64, ((len(blob) + 63) >> 6))
r := ParseCsv(blob, rowIndices, maskCommas)
colIndices := make([]uint32, rows)
ExtractIndexForColumn(maskCommas, rowIndices[:r], colIndices[:r], position)
equal := make([]uint64, (rows+63)>>6)
for i, testCase := range testCases {
EvaluateCompareString(blob, colIndices[:r], testCase.condition, equal[:(r+63)>>6])
if len(equal) == 2 && (equal[1] != testCase.expectedHigh || equal[0] != testCase.expectedLow) {
t.Errorf("Test case %d (%s): Got: %016x %016x want: %016x %016x", i, testCase.condition, equal[1], equal[0], testCase.expectedHigh, testCase.expectedLow)
} else if equal[0] != testCase.expectedLow {
t.Errorf("Test case %d (%s): Got: %016x want: %016x", i, testCase.condition, equal[0], testCase.expectedLow)
}
}
}
func TestEvaluateParkingCitations(t *testing.T) {
testCasesMake := []struct {
condition string
expectedHigh uint64
expectedLow uint64
}{
{"HOND", 0, 1 << 1},
{"GMC", 0, 1 << 2},
{"NISS", 0, 1<<10 + 1<<3},
{"ACUR", 0, 1 << 4},
{"CHEV", 0, 1<<9 + 1<<6 + 1<<5},
{"MAZD", 0, 1 << 7},
{"TOYO", 0, 1 << 8},
}
testEvaluate(t, parkingCitations10Lines, 8, testCasesMake)
testCasesColor := []struct {
condition string
expectedHigh uint64
expectedLow uint64
}{
{"GY", 0, 1<<6 + 1<<1},
{"WH", 0, 1<<4 + 1<<2},
{"BK", 0, 1<<8 + 1<<5 + 1<<3},
{"BL", 0, 1 << 7},
{"BR", 0, 1 << 9},
{"SI", 0, 1 << 10},
}
testEvaluate(t, parkingCitations10Lines, 10, testCasesColor)
testCasesBodyStyle := []struct {
condition string
expectedHigh uint64
expectedLow uint64
}{
{"PA", 0, 1<<10 + 1<<9 + 1<<8 + 1<<7 + 1<<5 + 1<<4 + 1<<3 + 1<<1},
{"VN", 0, 1<<6 + 1<<2},
}
testEvaluate(t, parkingCitations10Lines, 9, testCasesBodyStyle)
}
func TestEvaluateWorldCitiesPop(t *testing.T) {
testCases := []struct {
condition string
expectedHigh uint64
expectedLow uint64
}{
{"de", 0x0000000000000010, 0x0000100004000012},
{"pk", 0x0000000004000000, 0x0000000000000004},
{"fr", 0x0000000000002000, 0x0000000002108028},
{"es", 0x0000000000000000, 0x0000000000001040},
{"cd", 0x0000000000000080, 0x0000004200000080},
{"dk", 0x0000000000000000, 0x0000000000000100},
{"cn", 0x0000000000000400, 0x0050400000020200},
{"lb", 0x0000000000000000, 0x0000000000000400},
{"us", 0x0000000000100000, 0x1400000008000800},
{"ru", 0x0000000408400000, 0x0804000400082000},
{"ir", 0x00000000600a8000, 0x0100080000204000},
{"ng", 0x0000000000000000, 0x0001000000010000},
{"by", 0x0000000000000000, 0x0000000000040000},
{"nl", 0x0000000000000000, 0x0000000000400000},
{"iq", 0x0000000000000000, 0x0000000000800000},
{"pe", 0x0000000000000000, 0x0000000001000000},
{"af", 0x0000000000000001, 0x0000000010000000},
{"la", 0x0000000000000000, 0x0000000020000000},
{"mx", 0x0000000000040000, 0x0000000040000000},
{"cz", 0x0000000000000000, 0x0000000080000000},
{"my", 0x0000000000000000, 0x8000000100000000},
{"sl", 0x0000000000000000, 0x0000000800000000},
{"lk", 0x0000000000000000, 0x0000001000000000},
{"au", 0x0000000000000000, 0x0000002000000000},
{"ao", 0x0000000000000000, 0x0000008000000000},
{"do", 0x0000000000000000, 0x0000010000000000},
{"jp", 0x0000000000000000, 0x0000020000000000},
{"sk", 0x0000000000000000, 0x0000040000000000},
{"tr", 0x0000000000000000, 0x0000200000000000},
{"ge", 0x0000000000800000, 0x0000800000000000},
{"lr", 0x0000000000000000, 0x0002000000000000},
{"mg", 0x0000000000000000, 0x0008000000000000},
{"hn", 0x0000000000000000, 0x0220000000000000},
{"gh", 0x0000000000000000, 0x0080000000000000},
{"bd", 0x0000000000000000, 0x2000000000000000},
{"id", 0x0000000000000300, 0x4000000000000000},
{"br", 0x0000000000000002, 0x0000000000000000},
{"bg", 0x0000000000000004, 0x0000000000000000},
{"cl", 0x0000000000000008, 0x0000000000000000},
{"ci", 0x0000000000000020, 0x0000000000000000},
{"lt", 0x0000000000000040, 0x0000000000000000},
{"za", 0x0000000000000800, 0x0000000000000000},
{"gr", 0x0000000000001000, 0x0000000000000000},
{"vn", 0x0000000000004000, 0x0000000000000000},
{"gb", 0x0000000000010000, 0x0000000000000000},
{"kr", 0x0000000000200000, 0x0000000000000000},
{"mm", 0x0000000001000000, 0x0000000000000000},
{"lv", 0x0000000102000000, 0x0000000000000000},
{"hr", 0x0000000010000000, 0x0000000000000000},
{"tw", 0x0000000080000000, 0x0000000000000000},
{"in", 0x0000000200000000, 0x0000000000000000},
{"ba", 0x0000000800000000, 0x0000000000000000},
{"zm", 0x0000001000000000, 0x0000000000000000},
}
// Sanity check to ensure we're not missing any countries
high, low := uint64(0), uint64(0)
for _, t := range testCases {
high = high | t.expectedHigh
low = low | t.expectedLow
}
highExpected, lowExpected := uint64(0x0000001fffffffff), uint64(0xfffffffffffffffe)
if high != highExpected {
t.Errorf("High: Got: %016x want: %016x", high, highExpected)
} else if low != lowExpected {
t.Errorf("Low: Got: %016x want: %016x", low, lowExpected)
}
testEvaluate(t, worldCitiesPop10Lines, 0, testCases)
}