00001
00002
00005 struct AiDefaultBlockData {
00006 byte mode;
00007 DiagDirection attr;
00008 TileIndexDiffC tileoffs;
00009 };
00010
00011 struct AiDefaultRailBlock {
00012 byte p0;
00013 byte p1;
00014 byte p2;
00015 byte p3;
00016 byte dir;
00017 const AiDefaultBlockData *data;
00018 };
00019
00020 struct AiDefaultRoadBlock {
00021 byte dir;
00022 const AiDefaultBlockData *data;
00023 };
00024
00025
00026 #define MKHDR(a, b, c, d, e) a, b, c, d, e,
00027 #define MKDEPOT(a, b, c) {0, (DiagDirection)a, {b, c}}
00028 #define MKSTATION(a, b, c) {1, (DiagDirection)a, {b, c}}
00029 #define MKRAIL(a, b, c) {2, (DiagDirection)a, {b, c}}
00030 #define MKCLRRAIL(a, b, c) {3, (DiagDirection)a, {b, c}}
00031 #define MKEND {4, (DiagDirection)0, {0, 0}}
00032
00033 static const AiDefaultBlockData _raildata_ai_0_data[] = {
00034 MKDEPOT(2, -1, 1),
00035 MKSTATION(0x15, 0, -1),
00036 MKRAIL(0x26, 0, 1),
00037 MKCLRRAIL(1, 0, 2),
00038 MKEND
00039 };
00040
00041 static const AiDefaultRailBlock _raildata_ai_0 = {
00042 1, 2, 1, 0, 1, _raildata_ai_0_data
00043 };
00044
00045 static const AiDefaultBlockData _raildata_ai_1_data[] = {
00046 MKDEPOT(2, -1, -1),
00047 MKRAIL(0x26, 0, -1),
00048 MKSTATION(0x15, 0, 0),
00049 MKCLRRAIL(3, 0, -2),
00050 MKEND
00051 };
00052
00053 static const AiDefaultRailBlock _raildata_ai_1 = {
00054 1, 2, 1, 0, 3, _raildata_ai_1_data
00055 };
00056
00057 static const AiDefaultBlockData _raildata_ai_2_data[] = {
00058 MKDEPOT(1, -1, -1),
00059 MKRAIL(0x15, -1, 0),
00060 MKSTATION(0x14, 0, 0),
00061 MKCLRRAIL(0, -2, 0),
00062 MKEND
00063 };
00064
00065 static const AiDefaultRailBlock _raildata_ai_2 = {
00066 1, 2, 1, 0, 0, _raildata_ai_2_data
00067 };
00068
00069 static const AiDefaultBlockData _raildata_ai_3_data[] = {
00070 MKDEPOT(1, 1, -1),
00071 MKRAIL(0x15, 1, 0),
00072 MKSTATION(0x14, -1, 0),
00073 MKCLRRAIL(2, 2, 0),
00074 MKEND
00075 };
00076
00077 static const AiDefaultRailBlock _raildata_ai_3 = {
00078 1, 2, 1, 0, 2, _raildata_ai_3_data
00079 };
00080
00081 static const AiDefaultBlockData _raildata_ai_4_data[] = {
00082 MKSTATION(0x15, 0, 0),
00083 MKCLRRAIL(3, 0, -1),
00084 MKCLRRAIL(1, 0, 2),
00085 MKEND
00086 };
00087
00088 static const AiDefaultRailBlock _raildata_ai_4 = {
00089 1, 2, 2, 0, 255, _raildata_ai_4_data
00090 };
00091
00092 static const AiDefaultBlockData _raildata_ai_5_data[] = {
00093 MKSTATION(0x14, 0, 0),
00094 MKCLRRAIL(0, -1, 0),
00095 MKCLRRAIL(2, 2, 0),
00096 MKEND
00097 };
00098
00099 static const AiDefaultRailBlock _raildata_ai_5 = {
00100 1, 2, 2, 0, 255, _raildata_ai_5_data
00101 };
00102
00103 static const AiDefaultBlockData _raildata_ai_6_data[] = {
00104 MKSTATION(0x27, 0, -2),
00105 MKRAIL(0xC2, 0, 1),
00106 MKRAIL(0xC2, 1, 1),
00107 MKRAIL(0x1A, 0, 2),
00108 MKRAIL(0x26, 1, 2),
00109 MKDEPOT(3, 1, 3),
00110 MKCLRRAIL(1, 0, 3),
00111 MKEND
00112 };
00113
00114 static const AiDefaultRailBlock _raildata_ai_6 = {
00115 2, 3, 1, 0, 1, _raildata_ai_6_data
00116 };
00117
00118 static const AiDefaultBlockData _raildata_ai_7_data[] = {
00119 MKDEPOT(1, 0, -3),
00120 MKRAIL(0x1A, 0, -2),
00121 MKRAIL(0x26, 1, -2),
00122 MKRAIL(0xC2, 0, -1),
00123 MKRAIL(0xC2, 1, -1),
00124 MKSTATION(0x27, 0, 0),
00125 MKCLRRAIL(3, 1, -3),
00126 MKEND
00127 };
00128
00129 static const AiDefaultRailBlock _raildata_ai_7 = {
00130 2, 3, 1, 0, 3, _raildata_ai_7_data
00131 };
00132
00133 static const AiDefaultBlockData _raildata_ai_8_data[] = {
00134 MKSTATION(0x26, -2, 0),
00135 MKRAIL(0xC1, 1, 0),
00136 MKRAIL(0xC1, 1, 1),
00137 MKRAIL(0x29, 2, 0),
00138 MKRAIL(0x15, 2, 1),
00139 MKDEPOT(0, 3, 0),
00140 MKCLRRAIL(2, 3, 1),
00141 MKEND
00142 };
00143
00144 static const AiDefaultRailBlock _raildata_ai_8 = {
00145 2, 3, 1, 0, 2, _raildata_ai_8_data
00146 };
00147
00148 static const AiDefaultBlockData _raildata_ai_9_data[] = {
00149 MKDEPOT(2, -3, -1),
00150 MKRAIL(0x29, -2, -1),
00151 MKRAIL(0x15, -2, 0),
00152 MKRAIL(0xC1, -1, -1),
00153 MKRAIL(0xC1, -1, 0),
00154 MKSTATION(0x26, 0, -1),
00155 MKCLRRAIL(0, -3, 0),
00156 MKEND
00157 };
00158
00159 static const AiDefaultRailBlock _raildata_ai_9 = {
00160 2, 3, 1, 0, 0, _raildata_ai_9_data
00161 };
00162
00163 static const AiDefaultBlockData _raildata_ai_10_data[] = {
00164 MKRAIL(0x1A, 0, -3),
00165 MKRAIL(0x20, 1, -3),
00166 MKRAIL(0xC2, 0, -2),
00167 MKRAIL(0xC2, 1, -2),
00168 MKSTATION(0x27, 0, -1),
00169 MKRAIL(0xC2, 0, 2),
00170 MKRAIL(0xC2, 1, 2),
00171 MKRAIL(0x1A, 0, 3),
00172 MKRAIL(0x4, 1, 3),
00173 MKCLRRAIL(3, 0, -4),
00174 MKCLRRAIL(1, 0, 4),
00175 MKEND
00176 };
00177
00178 static const AiDefaultRailBlock _raildata_ai_10 = {
00179 2, 3, 2, 0, 255, _raildata_ai_10_data
00180 };
00181
00182 static const AiDefaultBlockData _raildata_ai_11_data[] = {
00183 MKRAIL(0x29, -3, 0),
00184 MKRAIL(0x10, -3, 1),
00185 MKRAIL(0xC1, -2, 0),
00186 MKRAIL(0xC1, -2, 1),
00187 MKSTATION(0x26, -1, 0),
00188 MKRAIL(0xC1, 2, 0),
00189 MKRAIL(0xC1, 2, 1),
00190 MKRAIL(0x29, 3, 0),
00191 MKRAIL(0x4, 3, 1),
00192 MKCLRRAIL(0, -4, 0),
00193 MKCLRRAIL(2, 4, 0),
00194 MKEND
00195 };
00196
00197 static const AiDefaultRailBlock _raildata_ai_11 = {
00198 2, 3, 2, 0, 255, _raildata_ai_11_data
00199 };
00200
00201 static const AiDefaultBlockData _raildata_ai_12_data[] = {
00202 MKRAIL(0x88, -1, -3),
00203 MKRAIL(0x6, 0, -3),
00204 MKRAIL(0x2, -1, -2),
00205 MKRAIL(0x42, 0, -2),
00206 MKRAIL(0x2, -1, -1),
00207 MKRAIL(0x2, 0, -1),
00208 MKRAIL(0x2, -1, 0),
00209 MKRAIL(0x2, 0, 0),
00210 MKRAIL(0x82, -1, 1),
00211 MKRAIL(0x2, 0, 1),
00212 MKRAIL(0xA, -1, 2),
00213 MKRAIL(0x44, 0, 2),
00214 MKCLRRAIL(3, 0, -4),
00215 MKCLRRAIL(1, -1, 3),
00216 MKEND
00217 };
00218
00219 static const AiDefaultRailBlock _raildata_ai_12 = {
00220 2, 3, 2, 1, 3, _raildata_ai_12_data
00221 };
00222
00223 static const AiDefaultBlockData _raildata_ai_13_data[] = {
00224 MKRAIL(0x21, -3, 0),
00225 MKRAIL(0x50, -3, 1),
00226 MKRAIL(0x81, -2, 0),
00227 MKRAIL(0x1, -2, 1),
00228 MKRAIL(0x1, -1, 0),
00229 MKRAIL(0x1, -1, 1),
00230 MKRAIL(0x1, 0, 0),
00231 MKRAIL(0x1, 0, 1),
00232 MKRAIL(0x1, 1, 0),
00233 MKRAIL(0x41, 1, 1),
00234 MKRAIL(0xA0, 2, 0),
00235 MKRAIL(0x11, 2, 1),
00236 MKCLRRAIL(0, -4, 0),
00237 MKCLRRAIL(2, 3, 1),
00238 MKEND
00239 };
00240
00241 static const AiDefaultRailBlock _raildata_ai_13 = {
00242 2, 3, 2, 1, 0, _raildata_ai_13_data
00243 };
00244
00245 static const AiDefaultBlockData _raildata_ai_14_data[] = {
00246 MKRAIL(0x88, -1, -3),
00247 MKRAIL(0x6, 0, -3),
00248 MKRAIL(0x2, -1, -2),
00249 MKRAIL(0x42, 0, -2),
00250 MKRAIL(0x2, -1, -1),
00251 MKRAIL(0x2, 0, -1),
00252 MKRAIL(0x2, -1, 0),
00253 MKRAIL(0x2, 0, 0),
00254 MKRAIL(0x82, -1, 1),
00255 MKRAIL(0x2, 0, 1),
00256 MKRAIL(0xA, -1, 2),
00257 MKRAIL(0x44, 0, 2),
00258 MKCLRRAIL(1, -1, 3),
00259 MKCLRRAIL(3, 0, -4),
00260 MKEND
00261 };
00262
00263 static const AiDefaultRailBlock _raildata_ai_14 = {
00264 2, 3, 2, 1, 1, _raildata_ai_14_data
00265 };
00266
00267 static const AiDefaultBlockData _raildata_ai_15_data[] = {
00268 MKRAIL(0x21, -3, 0),
00269 MKRAIL(0x50, -3, 1),
00270 MKRAIL(0x81, -2, 0),
00271 MKRAIL(0x1, -2, 1),
00272 MKRAIL(0x1, -1, 0),
00273 MKRAIL(0x1, -1, 1),
00274 MKRAIL(0x1, 0, 0),
00275 MKRAIL(0x1, 0, 1),
00276 MKRAIL(0x1, 1, 0),
00277 MKRAIL(0x41, 1, 1),
00278 MKRAIL(0xA0, 2, 0),
00279 MKRAIL(0x11, 2, 1),
00280 MKCLRRAIL(2, 3, 1),
00281 MKCLRRAIL(0, -4, 0),
00282 MKEND
00283 };
00284
00285 static const AiDefaultRailBlock _raildata_ai_15 = {
00286 2, 3, 2, 1, 2, _raildata_ai_15_data
00287 };
00288
00289 static const AiDefaultBlockData _raildata_ai_16_data[] = {
00290 MKSTATION(0x17, 0, -2),
00291 MKRAIL(0x1A, 0, 1),
00292 MKCLRRAIL(1, 0, 2),
00293 MKDEPOT(0, 1, 1),
00294 MKEND
00295 };
00296
00297 static const AiDefaultRailBlock _raildata_ai_16 = {
00298 1, 3, 1, 0, 1, _raildata_ai_16_data
00299 };
00300
00301 static const AiDefaultBlockData _raildata_ai_17_data[] = {
00302 MKCLRRAIL(3, 0, -2),
00303 MKRAIL(0x26, 0, -1),
00304 MKDEPOT(2, -1, -1),
00305 MKSTATION(0x17, 0, 0),
00306 MKEND
00307 };
00308
00309 static const AiDefaultRailBlock _raildata_ai_17 = {
00310 1, 3, 1, 0, 3, _raildata_ai_17_data
00311 };
00312
00313 static const AiDefaultBlockData _raildata_ai_18_data[] = {
00314 MKCLRRAIL(0, -2, 0),
00315 MKRAIL(0x29, -1, 0),
00316 MKDEPOT(3, -1, 1),
00317 MKSTATION(0x16, 0, 0),
00318 MKEND
00319 };
00320
00321 static const AiDefaultRailBlock _raildata_ai_18 = {
00322 1, 3, 1, 0, 0, _raildata_ai_18_data
00323 };
00324
00325 static const AiDefaultBlockData _raildata_ai_19_data[] = {
00326 MKSTATION(0x16, -2, 0),
00327 MKDEPOT(2, 0, -1),
00328 MKRAIL(0x20, 1, -1),
00329 MKRAIL(0x15, 1, 0),
00330 MKCLRRAIL(2, 2, 0),
00331 MKEND
00332 };
00333
00334 static const AiDefaultRailBlock _raildata_ai_19 = {
00335 1, 3, 1, 0, 2, _raildata_ai_19_data
00336 };
00337
00338 static const AiDefaultBlockData _raildata_ai_20_data[] = {
00339 MKSTATION(0x26, -2, 0),
00340 MKRAIL(0xC1, 1, 0),
00341 MKRAIL(0xC1, 1, 1),
00342 MKRAIL(0x26, 2, 0),
00343 MKRAIL(0x26, 2, 1),
00344 MKDEPOT(1, 2, -1),
00345 MKCLRRAIL(1, 2, 2),
00346 MKEND
00347 };
00348
00349 static const AiDefaultRailBlock _raildata_ai_20 = {
00350 2, 3, 1, 0, 1, _raildata_ai_20_data
00351 };
00352
00353 static const AiDefaultBlockData _raildata_ai_21_data[] = {
00354 MKDEPOT(2, -3, -1),
00355 MKRAIL(0x3F, -2, -1),
00356 MKRAIL(0x10, -2, 0),
00357 MKRAIL(0xC1, -1, -1),
00358 MKRAIL(0xC1, -1, 0),
00359 MKSTATION(0x26, 0, -1),
00360 MKCLRRAIL(3, -2, -2),
00361 MKEND
00362 };
00363
00364 static const AiDefaultRailBlock _raildata_ai_21 = {
00365 2, 3, 1, 0, 3, _raildata_ai_21_data
00366 };
00367
00368 static const AiDefaultBlockData _raildata_ai_22_data[] = {
00369 MKSTATION(0x27, 0, -2),
00370 MKRAIL(0xC2, 0, 1),
00371 MKRAIL(0xC2, 1, 1),
00372 MKRAIL(0x15, 0, 2),
00373 MKRAIL(0x4, 1, 2),
00374 MKRAIL(0x15, -1, 2),
00375 MKDEPOT(1, -1, 1),
00376 MKCLRRAIL(0, -2, 2),
00377 MKEND
00378 };
00379
00380 static const AiDefaultRailBlock _raildata_ai_22 = {
00381 2, 3, 1, 0, 0, _raildata_ai_22_data
00382 };
00383
00384 static const AiDefaultBlockData _raildata_ai_23_data[] = {
00385 MKDEPOT(1, 0, -3),
00386 MKRAIL(0x1A, 0, -2),
00387 MKRAIL(0x29, 1, -2),
00388 MKRAIL(0xC2, 0, -1),
00389 MKRAIL(0xC2, 1, -1),
00390 MKSTATION(0x27, 0, 0),
00391 MKCLRRAIL(2, 2, -2),
00392 MKEND
00393 };
00394
00395 static const AiDefaultRailBlock _raildata_ai_23 = {
00396 2, 3, 1, 0, 2, _raildata_ai_23_data
00397 };
00398
00399 static const AiDefaultRailBlock * const _default_rail_track_data[] = {
00400 &_raildata_ai_0,
00401 &_raildata_ai_1,
00402 &_raildata_ai_2,
00403 &_raildata_ai_3,
00404 &_raildata_ai_4,
00405 &_raildata_ai_5,
00406 &_raildata_ai_6,
00407 &_raildata_ai_7,
00408 &_raildata_ai_8,
00409 &_raildata_ai_9,
00410 &_raildata_ai_10,
00411 &_raildata_ai_11,
00412 &_raildata_ai_12,
00413 &_raildata_ai_13,
00414 &_raildata_ai_14,
00415 &_raildata_ai_15,
00416 &_raildata_ai_16,
00417 &_raildata_ai_17,
00418 &_raildata_ai_18,
00419 &_raildata_ai_19,
00420 &_raildata_ai_20,
00421 &_raildata_ai_21,
00422 &_raildata_ai_22,
00423 &_raildata_ai_23,
00424 NULL
00425 };
00426
00427 #undef MKHDR
00428
00429 #define MKHDR(a) a, {
00430
00431 static const AiDefaultBlockData _roaddata_ai_0_data[] = {
00432 MKDEPOT(2, -1, 1),
00433 MKSTATION(0x2, -1, 0),
00434 MKRAIL(0xC, 0, 0),
00435 MKRAIL(0x9, 0, 1),
00436 MKCLRRAIL(0, 0, -1),
00437 MKCLRRAIL(0, 1, 0),
00438 MKCLRRAIL(0, 1, 1),
00439 MKCLRRAIL(0, 0, 2),
00440 MKEND
00441 };
00442
00443 static const AiDefaultRoadBlock _roaddata_ai_0 = {
00444 0, _roaddata_ai_0_data
00445 };
00446
00447 static const AiDefaultBlockData _roaddata_ai_1_data[] = {
00448 MKDEPOT(1, 0, -1),
00449 MKSTATION(0x1, 1, -1),
00450 MKRAIL(0x3, 0, 0),
00451 MKRAIL(0x9, 1, 0),
00452 MKCLRRAIL(0, -1, 0),
00453 MKCLRRAIL(0, 0, 1),
00454 MKCLRRAIL(0, 1, 1),
00455 MKCLRRAIL(0, 2, 0),
00456 MKEND
00457 };
00458
00459 static const AiDefaultRoadBlock _roaddata_ai_1 = {
00460 0, _roaddata_ai_1_data
00461 };
00462
00463 static const AiDefaultBlockData _roaddata_ai_2_data[] = {
00464 MKDEPOT(3, 1, 1),
00465 MKSTATION(0x3, 0, 1),
00466 MKRAIL(0x6, 0, 0),
00467 MKRAIL(0xC, 1, 0),
00468 MKCLRRAIL(0, -1, 0),
00469 MKCLRRAIL(0, 0, -1),
00470 MKCLRRAIL(0, 1, -1),
00471 MKCLRRAIL(0, 2, 0),
00472 MKEND
00473 };
00474
00475 static const AiDefaultRoadBlock _roaddata_ai_2 = {
00476 0, _roaddata_ai_2_data
00477 };
00478
00479 static const AiDefaultBlockData _roaddata_ai_3_data[] = {
00480 MKDEPOT(0, 1, 0),
00481 MKSTATION(0x0, 1, 1),
00482 MKRAIL(0x6, 0, 0),
00483 MKRAIL(0x3, 0, 1),
00484 MKCLRRAIL(0, 0, -1),
00485 MKCLRRAIL(0, -1, 0),
00486 MKCLRRAIL(0, -1, 1),
00487 MKCLRRAIL(0, 0, 2),
00488 MKEND
00489 };
00490
00491 static const AiDefaultRoadBlock _roaddata_ai_3 = {
00492 0, _roaddata_ai_3_data
00493 };
00494
00495 static const AiDefaultBlockData _roaddata_ai_4_data[] = {
00496 MKSTATION(0x2, -1, 0),
00497 MKRAIL(0x8, 0, 0),
00498 MKCLRRAIL(0, 0, -1),
00499 MKCLRRAIL(0, 1, 0),
00500 MKCLRRAIL(0, 0, 1),
00501 MKEND
00502 };
00503
00504 static const AiDefaultRoadBlock _roaddata_ai_4 = {
00505 1, _roaddata_ai_4_data
00506 };
00507
00508 static const AiDefaultBlockData _roaddata_ai_5_data[] = {
00509 MKSTATION(0x3, 0, 1),
00510 MKRAIL(0x4, 0, 0),
00511 MKCLRRAIL(0, -1, 0),
00512 MKCLRRAIL(0, 0, -1),
00513 MKCLRRAIL(0, 1, 0),
00514 MKEND
00515 };
00516
00517 static const AiDefaultRoadBlock _roaddata_ai_5 = {
00518 1, _roaddata_ai_5_data
00519 };
00520
00521 static const AiDefaultBlockData _roaddata_ai_6_data[] = {
00522 MKSTATION(0x0, 1, 1),
00523 MKRAIL(0x2, 0, 1),
00524 MKCLRRAIL(0, 0, 0),
00525 MKCLRRAIL(0, -1, 0),
00526 MKCLRRAIL(0, 0, 2),
00527 MKEND
00528 };
00529
00530 static const AiDefaultRoadBlock _roaddata_ai_6 = {
00531 1, _roaddata_ai_6_data
00532 };
00533
00534 static const AiDefaultBlockData _roaddata_ai_7_data[] = {
00535 MKSTATION(0x1, 1, -1),
00536 MKRAIL(0x1, 1, 0),
00537 MKCLRRAIL(0, 0, 0),
00538 MKCLRRAIL(0, 1, 1),
00539 MKCLRRAIL(0, 2, 0),
00540 MKEND
00541 };
00542
00543 static const AiDefaultRoadBlock _roaddata_ai_7 = {
00544 1, _roaddata_ai_7_data
00545 };
00546
00547
00548 static const AiDefaultRoadBlock * const _road_default_block_data[] = {
00549 &_roaddata_ai_0,
00550 &_roaddata_ai_1,
00551 &_roaddata_ai_2,
00552 &_roaddata_ai_3,
00553 &_roaddata_ai_4,
00554 &_roaddata_ai_5,
00555 &_roaddata_ai_6,
00556 &_roaddata_ai_7,
00557 NULL
00558 };
00559
00560 #undef MKHDR
00561 #undef MKDEPOT
00562 #undef MKSTATION
00563 #undef MKRAIL
00564 #undef MKCLRRAIL
00565 #undef MKEND
00566
00567
00568 #define MKAIR(a, b, c) {0, (DiagDirection)a, {b, c}}
00569 #define MKEND() {1, (DiagDirection)0, {0, 0}}
00570
00571 static const AiDefaultBlockData _airportdata_ai_0[] = {
00572 MKAIR(1, 0, 0),
00573 MKEND(),
00574 };
00575
00576 static const AiDefaultBlockData _airportdata_ai_1[] = {
00577 MKAIR(0, 0, 0),
00578 MKEND(),
00579 };
00580
00581 static const AiDefaultBlockData _airportdata_ai_3[] = {
00582 MKAIR(3, 0, 0),
00583 MKEND(),
00584 };
00585
00586 static const AiDefaultBlockData _airportdata_ai_4[] = {
00587 MKAIR(4, 0, 0),
00588 MKEND(),
00589 };
00590
00591 static const AiDefaultBlockData _airportdata_ai_5[] = {
00592 MKAIR(5, 0, 0),
00593 MKEND(),
00594 };
00595
00596 static const AiDefaultBlockData _airportdata_ai_6[] = {
00597 MKAIR(6, 0, 0),
00598 MKEND(),
00599 };
00600
00601 static const AiDefaultBlockData _airportdata_ai_7[] = {
00602 MKAIR(7, 0, 0),
00603 MKEND(),
00604 };
00605
00606 static const AiDefaultBlockData _airportdata_ai_8[] = {
00607 MKAIR(8, 0, 0),
00608 MKEND(),
00609 };
00610
00611 #undef MKAIR
00612 #undef MDEND
00613
00614 static const AiDefaultBlockData * const _airport_default_block_data[] = {
00615 _airportdata_ai_8,
00616 _airportdata_ai_6,
00617 _airportdata_ai_7,
00618 _airportdata_ai_4,
00619 _airportdata_ai_3,
00620 _airportdata_ai_0,
00621 _airportdata_ai_5,
00622 _airportdata_ai_1,
00623 NULL
00624 };