From bf9255e78e18675ab5ac3f4aa03fa55ebce92920 Mon Sep 17 00:00:00 2001 From: Wohlstand Date: Tue, 2 Jul 2019 19:49:43 +0300 Subject: Some work on old cache --- fm_banks/adldata-cache-x.dat | Bin 481851 -> 250326 bytes fm_banks/adldata-cache.dat | Bin 590432 -> 482192 bytes src/adldata.cpp | 1378 +++++++++++++++--------------- utils/gen_adldata/file_formats/load_ea.h | 2 +- utils/gen_adldata/measurer.cpp | 64 +- utils/gen_adldata/progs_cache.cpp | 14 +- utils/gen_adldata/progs_cache.h | 46 +- 7 files changed, 783 insertions(+), 721 deletions(-) diff --git a/fm_banks/adldata-cache-x.dat b/fm_banks/adldata-cache-x.dat index d9d3707..9547ed0 100644 Binary files a/fm_banks/adldata-cache-x.dat and b/fm_banks/adldata-cache-x.dat differ diff --git a/fm_banks/adldata-cache.dat b/fm_banks/adldata-cache.dat index 29346fa..59e5716 100644 Binary files a/fm_banks/adldata-cache.dat and b/fm_banks/adldata-cache.dat differ diff --git a/src/adldata.cpp b/src/adldata.cpp index 07ec2ca..e24d06c 100644 --- a/src/adldata.cpp +++ b/src/adldata.cpp @@ -4919,110 +4919,110 @@ const struct adlinsdata adlins[4920] = { 131, 131, 53, 0, 520, 206, 0, 0 }, { 170, 170, 0, 0, 40000, 0, 0, 0 }, { 171, 171, 0, 0, 40000, 73, 0, 0 }, - { 172, 173, 0, 4, 5886, 100, 0, 0 }, - { 174, 175, 0, 4, 6913, 93, 0, 0 }, - { 176, 177, 0, 4, 4873, 120, 0, 0 }, + { 172, 173, 0, 4, 7340, 100, 0, 0 }, + { 174, 175, 0, 4, 3706, 100, 0, 0 }, + { 176, 177, 0, 4, 40000, 73, 0, 0 }, { 178, 178, 0, 0, 40000, 0, 0, 0 }, - { 179, 180, 0, 4, 4626, 433, 0, 0 }, + { 179, 180, 0, 4, 2280, 226, 0, 0 }, { 181, 181, 0, 0, 2280, 746, 0, 0 }, { 182, 182, 0, 0, 40000, 0, 0, 0 }, - { 183, 184, 0, 4, 620, 233, 0, 0 }, - { 185, 186, 0, 4, 4626, 1546, 0, 0 }, + { 183, 184, 0, 4, 353, 233, 0, 0 }, + { 185, 186, 0, 4, 7746, 793, 0, 0 }, { 187, 187, 0, 0, 1166, 400, 0, 0 }, { 188, 189, 0, 4, 40000, 60, 0, 0 }, { 190, 191, 0, 4, 40000, 60, 0, 0 }, { 192, 193, 0, 4, 40000, 73, 0, 0 }, { 194, 194, 0, 0, 40000, 73, 0, 0 }, { 195, 196, 0, 4, 40000, 66, 0, 0 }, - { 197, 198, 0, 4, 40000, 86, 0, 0 }, - { 199, 200, 0, 4, 40000, 66, 0, 0 }, - { 201, 202, 0, 4, 3713, 100, 0, 0 }, - { 203, 204, 0, 4, 14686, 126, 0, 0 }, - { 205, 206, 0, 4, 9233, 153, 0, 0 }, - { 207, 208, 0, 4, 14640, 133, 0, 0 }, - { 209, 210, 0, 4, 4626, 106, 0, 0 }, - { 211, 212, 0, 4, 40000, 66, 0, 0 }, + { 197, 198, 0, 4, 40000, 420, 0, 0 }, + { 199, 200, 0, 4, 40000, 60, 0, 0 }, + { 201, 202, 0, 4, 3713, 106, 0, 0 }, + { 203, 204, 0, 4, 7580, 126, 0, 0 }, + { 205, 206, 0, 4, 9573, 73, 0, 0 }, + { 207, 208, 0, 4, 4713, 1346, 0, 0 }, + { 209, 210, 0, 4, 1213, 106, 0, 0 }, + { 211, 212, 0, 4, 17893, 5660, 0, 0 }, { 213, 213, 0, 0, 40000, 73, 0, 0 }, - { 214, 215, 0, 4, 620, 100, 0, 0 }, - { 216, 217, 0, 4, 4060, 100, 0, 0 }, - { 218, 219, 0, 4, 14513, 193, 0, 0 }, - { 220, 221, 0, 4, 2813, 106, 0, 0 }, - { 222, 223, 0, 4, 493, 153, 0, 0 }, + { 214, 215, 0, 4, 18226, 100, 0, 0 }, + { 216, 217, 0, 4, 4033, 100, 0, 0 }, + { 218, 219, 0, 4, 3733, 353, 0, 0 }, + { 220, 221, 0, 4, 2933, 140, 0, 0 }, + { 222, 223, 0, 4, 40000, 753, 0, 0 }, { 224, 224, 0, 0, 40000, 0, 0, 0 }, - { 225, 226, 0, 4, 7993, 93, 0, 0 }, + { 225, 226, 0, 4, 15920, 106, 0, 0 }, { 227, 227, 0, 0, 40000, 0, 0, 0 }, { 228, 228, 0, 0, 40000, 133, 0, 0 }, - { 229, 230, 0, 4, 713, 213, 0, 0 }, - { 231, 232, 0, 4, 40000, 146, 0, 0 }, - { 233, 234, 0, 4, 40000, 0, 0, 0 }, - { 235, 236, 0, 4, 993, 340, 0, 0 }, - { 235, 237, 0, 4, 3260, 1120, 0, 0 }, - { 46, 238, 0, 4, 6720, 1246, 0, 0 }, - { 239, 240, 0, 4, 40000, 140, 0, 0 }, + { 229, 230, 0, 4, 40000, 160, 0, 0 }, + { 231, 232, 0, 4, 40000, 133, 0, 0 }, + { 233, 234, 0, 4, 40000, 433, 0, 0 }, + { 235, 236, 0, 4, 4740, 633, 0, 0 }, + { 235, 237, 0, 4, 4740, 633, 0, 0 }, + { 46, 238, 0, 4, 6873, 1246, 0, 0 }, + { 239, 240, 0, 4, 40000, 113, 0, 0 }, { 241, 242, 0, 4, 40000, 146, 0, 0 }, { 243, 243, 0, 0, 40000, 100, 0, 0 }, { 244, 244, 0, 0, 40000, 60, 0, 0 }, { 245, 245, 0, 0, 40000, 73, 0, 0 }, - { 246, 247, 0, 4, 720, 106, 0, 0 }, - { 248, 249, 0, 4, 40000, 126, 0, 0 }, + { 246, 247, 0, 4, 4093, 893, 0, 0 }, + { 248, 249, 0, 4, 40000, 80, 0, 0 }, { 250, 250, 0, 0, 40000, 0, 0, 0 }, { 251, 251, 0, 0, 40000, 126, 0, 0 }, { 252, 253, 0, 4, 40000, 66, 0, 0 }, - { 254, 255, 0, 4, 40000, 93, 0, 0 }, - { 256, 257, 0, 4, 40000, 73, 0, 0 }, - { 258, 259, 0, 4, 40000, 86, 0, 0 }, - { 260, 261, 0, 4, 40000, 93, 0, 0 }, - { 262, 263, 0, 4, 40000, 80, 0, 0 }, - { 264, 265, 0, 4, 40000, 200, 0, 0 }, - { 266, 267, 0, 4, 40000, 73, 0, 0 }, - { 268, 269, 0, 4, 40000, 80, 0, 0 }, - { 270, 271, 0, 4, 40000, 73, 0, 0 }, + { 254, 255, 0, 4, 40000, 73, 0, 0 }, + { 256, 257, 0, 4, 40000, 60, 0, 0 }, + { 258, 259, 0, 4, 40000, 73, 0, 0 }, + { 260, 261, 0, 4, 40000, 80, 0, 0 }, + { 262, 263, 0, 4, 40000, 180, 0, 0 }, + { 264, 265, 0, 4, 40000, 73, 0, 0 }, + { 266, 267, 0, 4, 40000, 133, 0, 0 }, + { 268, 269, 0, 4, 40000, 166, 0, 0 }, + { 270, 271, 0, 4, 40000, 0, 0, 0 }, { 272, 273, 0, 4, 40000, 126, 0, 0 }, { 274, 275, 0, 4, 40000, 100, 0, 0 }, { 276, 276, 0, 0, 40000, 113, 0, 0 }, - { 277, 278, 0, 4, 40000, 186, 0, 0 }, - { 279, 280, 0, 4, 40000, 160, 0, 0 }, - { 281, 282, 0, 4, 40000, 206, 0, 0 }, + { 277, 278, 0, 4, 40000, 0, 0, 0 }, + { 279, 280, 0, 4, 40000, 60, 0, 0 }, + { 281, 282, 0, 4, 40000, 126, 0, 0 }, { 283, 283, 0, 0, 40000, 80, 0, 0 }, - { 284, 285, 0, 4, 40000, 73, 0, 0 }, - { 286, 287, 0, 4, 40000, 73, 0, 0 }, + { 284, 285, 0, 4, 40000, 66, 0, 0 }, + { 286, 287, 0, 4, 40000, 66, 0, 0 }, { 288, 288, 0, 0, 40000, 93, 0, 0 }, - { 289, 290, 0, 4, 40000, 66, 0, 0 }, - { 291, 292, 0, 4, 40000, 153, 0, 0 }, - { 293, 294, 0, 4, 40000, 153, 0, 0 }, - { 295, 296, 0, 4, 40000, 320, 0, 0 }, - { 88, 297, 0, 4, 40000, 1280, 0, 0 }, - { 298, 299, 0, 4, 40000, 266, 0, 0 }, - { 300, 301, 0, 4, 40000, 1180, 0, 0 }, + { 289, 290, 0, 4, 17866, 5540, 0, 0 }, + { 291, 292, 0, 4, 40000, 300, 0, 0 }, + { 293, 294, 0, 4, 40000, 240, 0, 0 }, + { 295, 296, 0, 4, 2340, 806, 0, 0 }, + { 88, 297, 0, 4, 40000, 1373, 0, 0 }, + { 298, 299, 0, 4, 40000, 140, 0, 0 }, + { 300, 301, 0, 4, 40000, 1413, 0, 0 }, { 302, 302, 0, 0, 40000, 286, 0, 0 }, { 303, 303, 0, 0, 40000, 140, 0, 0 }, { 304, 304, 0, 0, 13246, 2473, 0, 0 }, - { 305, 306, 0, 4, 40000, 1073, 0, 0 }, + { 305, 306, 0, 4, 40000, 1253, 0, 0 }, { 307, 307, 0, 0, 9233, 240, 0, 0 }, { 308, 308, 0, 0, 1186, 406, 0, 0 }, { 309, 309, 0, 0, 40000, 1306, 0, 0 }, { 310, 310, 0, 0, 40000, 933, 0, 0 }, - { 311, 312, 0, 4, 9100, 240, 0, 0 }, - { 313, 314, 0, 4, 7280, 326, 0, 0 }, - { 315, 316, 0, 4, 3553, 326, 0, 0 }, - { 317, 318, 0, 4, 6966, 2206, 0, 0 }, - { 107, 319, 0, 4, 1160, 406, 0, 0 }, + { 311, 312, 0, 4, 18293, 240, 0, 0 }, + { 313, 314, 0, 4, 3366, 1186, 0, 0 }, + { 315, 316, 0, 4, 293, 573, 0, 0 }, + { 317, 318, 0, 4, 14180, 4406, 0, 0 }, + { 107, 319, 0, 4, 1180, 406, 0, 0 }, { 108, 320, 0, 4, 40000, 66, 0, 0 }, - { 109, 321, 0, 4, 720, 213, 0, 0 }, - { 322, 323, 0, 4, 40000, 73, 0, 0 }, - { 324, 325, 0, 4, 613, 246, 0, 0 }, - { 326, 327, 0, 4, 1206, 386, 0, 0 }, + { 109, 321, 0, 4, 40000, 213, 0, 0 }, + { 322, 323, 0, 4, 40000, 240, 0, 0 }, + { 324, 325, 0, 4, 613, 260, 0, 0 }, + { 326, 327, 0, 4, 1173, 400, 0, 0 }, { 328, 328, 0, 0, 173, 106, 0, 0 }, { 329, 329, 0, 0, 966, 333, 0, 0 }, - { 330, 331, 0, 4, 1906, 320, 0, 0 }, + { 330, 331, 0, 4, 1866, 386, 0, 0 }, { 332, 332, 0, 0, 3120, 73, 0, 0 }, { 333, 333, 0, 0, 226, 73, 0, 0 }, { 334, 334, 0, 0, 6600, 806, 0, 0 }, { 335, 335, 0, 0, 273, 60, 0, 0 }, { 336, 336, 0, 0, 12053, 660, 0, 0 }, { 337, 337, 0, 0, 40000, 240, 0, 0 }, - { 338, 339, 0, 6, 6, 0, 0, 0 }, - { 340, 341, 0, 4, 560, 73, 0, 0 }, + { 338, 339, 0, 4, 40000, 200, 0, 0 }, + { 340, 341, 0, 4, 40000, 0, 0, 0 }, { 342, 342, 35, 0, 40000, 0, 0, 0 }, { 343, 343, 0, 0, 180, 100, 0, 0 }, { 344, 344, 35, 0, 340, 146, 0, 0 }, @@ -5052,9 +5052,9 @@ const struct adlinsdata adlins[4920] = { 362, 362, 96, 0, 706, 266, 0, 0 }, { 363, 363, 38, 0, 520, 193, 0, 0 }, { 127, 127, 16, 0, 620, 233, 0, 0 }, - { 364, 365, 18, 4, 200, 26, 0, 0 }, + { 364, 365, 18, 4, 653, 20, 0, 0 }, { 366, 366, 30, 0, 406, 246, 0, 0 }, - { 367, 368, 35, 4, 200, 100, 0, 0 }, + { 367, 368, 35, 4, 720, 273, 0, 0 }, { 129, 129, 0, 0, 353, 153, 0, 0 }, { 369, 369, 0, 0, 213, 13, 0, 0 }, { 370, 370, 88, 0, 333, 113, 0, 0 }, @@ -5062,12 +5062,12 @@ const struct adlinsdata adlins[4920] = { 372, 372, 79, 0, 2540, 1040, 0, 0 }, { 135, 135, 14, 0, 9213, 3066, 0, 0 }, { 373, 373, 46, 0, 1093, 60, 0, 0 }, - { 374, 375,129, 4, 1193, 433, 0, 0 }, + { 374, 375,129, 4, 40000, 0, 0, 0 }, { 376, 376, 58, 0, 1600, 726, 0, 0 }, { 377, 377,164, 0, 526, 820, 0, 0 }, { 378, 378,142, 0, 9153, 3073, 0, 0 }, { 379, 379, 9, 0, 200, 100, 0, 0 }, - { 380, 381, 35, 4, 2340, 806, 0, 0 }, + { 380, 381, 35, 4, 40000, 0, 0, 0 }, { 382, 382, 28, 0, 1060, 120, 0, 0 }, { 383, 383, 46, 0, 953, 20, 0, 0 }, { 384, 384, 60, 0, 440, 160, 0, 0 }, @@ -5081,14 +5081,14 @@ const struct adlinsdata adlins[4920] = { 388, 388, 90, 0, 213, 86, 0, 0 }, { 389, 389, 39, 0, 266, 73, 0, 0 }, { 390, 390, 36, 0, 593, 73, 0, 0 }, - { 391, 392, 35, 4, 173, 46, 0, 0 }, - { 391, 393, 35, 4, 460, 66, 0, 0 }, + { 391, 392, 35, 4, 360, 153, 0, 0 }, + { 391, 393, 35, 4, 360, 153, 0, 0 }, { 394, 394, 60, 0, 173, 20, 0, 0 }, { 328, 328, 7, 0, 173, 106, 0, 0 }, { 395, 395, 90, 0, 193, 20, 0, 0 }, { 396, 396, 90, 0, 793, 40, 0, 0 }, { 397, 397, 35, 0, 253, 86, 0, 0 }, - { 398, 399, 5, 4, 1913, 226, 0, 0 }, + { 398, 399, 5, 4, 620, 233, 0, 0 }, { 400, 400,103, 0, 713, 273, 0, 0 }, { 401, 401, 3, 0, 100, 26, 0, 0 }, { 169, 169, 1, 0, 466, 413, 0, 0 }, @@ -6289,119 +6289,119 @@ const struct adlinsdata adlins[4920] = { 752, 752, 18, 0, 206, 20, 0, 0 }, { 752, 752, 15, 0, 200, 20, 0, 0 }, { 752, 752, 17, 0, 206, 20, 0, 0 }, - {1439,1440, 0, 4, 40000, 0, 0, 0 }, - {1441,1442, 0, 4, 7320, 193, 0, 0 }, - {1443,1444, 0, 4, 11833, 320, 0, 0 }, - {1445,1446, 0, 4, 9920, 326, 0, 0 }, - {1447,1448, 0, 4, 10133, 26, 0, 0 }, - {1449,1450, 0, 4, 7373, 2486, 0, 0 }, - { 181,1451, 0, 4, 2313, 733, 0, 0 }, - {1452,1453, 0, 4, 9213, 240, 0, 0 }, + {1439,1440, 0, 4, 10626, 20, 0, 0 }, + {1441,1442, 0, 4, 7166, 213, 0, 0 }, + {1443,1444, 0, 4, 15020, 700, 0, 0 }, + {1445,1446, 0, 4, 9893, 466, 0, 0 }, + {1447,1448, 0, 4, 10620, 0, 0, 0 }, + {1449,1450, 0, 4, 7406, 2486, 0, 0 }, + { 181,1451, 0, 4, 2280, 746, 0, 0 }, + {1452,1453, 0, 4, 4660, 240, 0, 0 }, {1454,1455, 0, 4, 40000, 0, 0, 0 }, - {1456,1457, 0, 4, 660, 126, 0, 0 }, - {1458,1459, 0, 4, 40000, 66, 0, 0 }, + {1456,1457, 0, 4, 1433, 140, 0, 0 }, + {1458,1459, 0, 4, 40000, 60, 0, 0 }, { 190,1460, 0, 4, 40000, 60, 0, 0 }, { 192,1461, 0, 4, 40000, 73, 0, 0 }, {1462,1463, 0, 4, 40000, 353, 0, 0 }, - {1464,1465, 0, 4, 40000, 353, 0, 0 }, - {1466,1467, 0, 4, 40000, 66, 0, 0 }, - {1468,1469, 0, 4, 40000, 46, 0, 0 }, - { 35,1470, 0, 4, 40000, 46, 0, 0 }, - { 36,1471, 0, 4, 320, 26, 0, 0 }, - {1472,1473, 0, 4, 320, 26, 0, 0 }, - {1474,1475, 0, 4, 7986, 93, 0, 0 }, - { 39,1476, 0, 4, 1046, 226, 0, 0 }, - {1477,1476, 0, 4, 1046, 226, 0, 0 }, - {1478,1479, 0, 4, 40000, 453, 0, 0 }, - { 50,1480, 0, 4, 40000, 400, 0, 0 }, - {1481,1482, 0, 4, 40000, 133, 0, 0 }, + {1464,1465, 0, 4, 40000, 313, 0, 0 }, + {1466,1467, 0, 4, 17893, 5660, 0, 0 }, + {1468,1469, 0, 4, 17880, 60, 0, 0 }, + { 35,1470, 0, 4, 40000, 53, 0, 0 }, + { 36,1471, 0, 4, 40000, 0, 0, 0 }, + {1472,1473, 0, 4, 40000, 0, 0, 0 }, + {1474,1475, 0, 4, 15920, 100, 0, 0 }, + { 39,1476, 0, 4, 40000, 160, 0, 0 }, + {1477,1476, 0, 4, 40000, 160, 0, 0 }, + {1478,1479, 0, 4, 40000, 433, 0, 0 }, + { 50,1480, 0, 4, 40000, 406, 0, 0 }, + {1481,1482, 0, 4, 40000, 186, 0, 0 }, {1483,1484, 0, 4, 40000, 0, 0, 0 }, - {1485,1486, 0, 4, 40000, 226, 0, 0 }, - { 55,1487, 0, 4, 40000, 100, 0, 0 }, - {1488,1489, 0, 4, 40000, 93, 0, 0 }, - {1490,1491, 0, 4, 40000, 73, 0, 0 }, - {1492,1493, 0, 4, 40000, 73, 0, 0 }, - {1494,1495, 0, 4, 40000, 73, 0, 0 }, - {1496,1497, 0, 4, 40000, 80, 0, 0 }, - {1496,1498, 0, 4, 40000, 73, 0, 0 }, - {1499,1500, 0, 4, 40000, 66, 0, 0 }, - {1501,1502, 0, 4, 40000, 146, 0, 0 }, - {1503,1504, 0, 4, 40000, 93, 0, 0 }, + {1485,1486, 0, 4, 2853, 1533, 0, 0 }, + { 55,1487, 0, 4, 40000, 80, 0, 0 }, + {1488,1489, 0, 4, 40000, 80, 0, 0 }, + {1490,1491, 0, 4, 40000, 26, 0, 0 }, + {1492,1493, 0, 4, 40000, 66, 0, 0 }, + {1494,1495, 0, 4, 40000, 133, 0, 0 }, + {1496,1497, 0, 4, 40000, 0, 0, 0 }, + {1496,1498, 0, 4, 40000, 0, 0, 0 }, + {1499,1500, 0, 4, 40000, 0, 0, 0 }, + {1501,1502, 0, 4, 40000, 73, 0, 0 }, + {1503,1504, 0, 4, 40000, 0, 0, 0 }, {1505,1506, 0, 4, 40000, 73, 0, 0 }, { 86,1507, 0, 4, 40000, 80, 0, 0 }, - {1508,1509, 0, 4, 40000, 0, 0, 0 }, - {1510,1511, 0, 4, 40000, 60, 0, 0 }, - {1512,1513, 0, 4, 40000, 0, 0, 0 }, - {1514,1515, 0, 4, 40000, 0, 0, 0 }, - {1516,1517, 0, 4, 40000, 766, 0, 0 }, - {1518,1519, 0, 4, 5286, 2966, 0, 0 }, - {1520,1521, 0, 4, 40000, 406, 0, 0 }, - {1522,1523, 0, 4, 9040, 360, 0, 0 }, - {1524,1525, 0, 4, 40000, 1200, 0, 0 }, - {1526,1527, 0, 4, 40000, 800, 0, 0 }, - {1528,1529, 0, 4, 40000, 960, 0, 0 }, - { 111,1530, 0, 4, 1193, 433, 0, 0 }, - {1531,1532, 0, 4, 220, 386, 0, 0 }, - { 115,1533, 0, 4, 2413, 1646, 0, 0 }, - {1534,1535, 0, 4, 1853, 640, 0, 0 }, - {1536,1537, 0, 4, 3006, 53, 0, 0 }, - {1538,1539, 0, 4, 1506, 720, 0, 0 }, - {1540, 339, 0, 6, 6, 0, 0, 0 }, - {1541, 339, 0, 6, 6, 0, 0, 0 }, - {1542,1543, 0, 4, 993, 93, 0, 0 }, - {1544,1545, 0, 4, 293, 86, 0, 0 }, - {1546,1547, 0, 4, 40000, 153, 0, 0 }, - { 364, 365, 44, 4, 120, 26, 0, 0 }, - { 129,1548, 48, 4, 173, 93, 0, 0 }, - { 367, 368, 58, 4, 173, 93, 0, 0 }, - { 129,1549, 60, 4, 173, 93, 0, 0 }, - {1550,1551, 48, 4, 520, 200, 0, 0 }, + {1508,1509, 0, 4, 40000, 100, 0, 0 }, + {1510,1511, 0, 4, 40000, 133, 0, 0 }, + {1512,1513, 0, 4, 40000, 213, 0, 0 }, + {1514,1515, 0, 4, 40000, 140, 0, 0 }, + {1516,1517, 0, 4, 626, 240, 0, 0 }, + {1518,1519, 0, 4, 1453, 793, 0, 0 }, + {1520,1521, 0, 4, 40000, 26, 0, 0 }, + {1522,1523, 0, 4, 40000, 0, 0, 0 }, + {1524,1525, 0, 4, 40000, 0, 0, 0 }, + {1526,1527, 0, 4, 40000, 193, 0, 0 }, + {1528,1529, 0, 4, 40000, 386, 0, 0 }, + { 111,1530, 0, 4, 4606, 413, 0, 0 }, + {1531,1532, 0, 4, 106, 33, 0, 0 }, + { 115,1533, 0, 4, 4553, 1480, 0, 0 }, + {1534,1535, 0, 4, 3613, 306, 0, 0 }, + {1536,1537, 0, 4, 3020, 0, 0, 0 }, + {1538,1539, 0, 4, 1646, 853, 0, 0 }, + {1540, 339, 0, 4, 2466, 633, 0, 0 }, + {1541, 339, 0, 4, 9213, 813, 0, 0 }, + {1542,1543, 0, 4, 293, 73, 0, 0 }, + {1544,1545, 0, 4, 993, 320, 0, 0 }, + {1546,1547, 0, 4, 40000, 80, 0, 0 }, + { 364, 365, 44, 4, 293, 20, 0, 0 }, + { 129,1548, 48, 4, 286, 126, 0, 0 }, + { 367, 368, 58, 4, 380, 160, 0, 0 }, + { 129,1549, 60, 4, 286, 126, 0, 0 }, + {1550,1551, 48, 4, 186, 40, 0, 0 }, { 132,1552, 43, 4, 173, 93, 0, 0 }, - {1550,1551, 49, 4, 520, 200, 0, 0 }, + {1550,1551, 49, 4, 186, 73, 0, 0 }, {1553,1554, 43, 4, 160, 80, 0, 0 }, - {1550,1551, 51, 4, 513, 206, 0, 0 }, - { 134,1555, 43, 4, 1686, 613, 0, 0 }, - {1550,1551, 54, 4, 506, 200, 0, 0 }, - {1550,1551, 57, 4, 506, 200, 0, 0 }, - { 380, 381, 72, 4, 1573, 553, 0, 0 }, - {1550,1551, 60, 4, 513, 206, 0, 0 }, - {1556,1557, 70, 4, 766, 306, 0, 0 }, - { 374, 375, 60, 4, 973, 360, 0, 0 }, - {1558,1559, 36, 4, 1126, 420, 0, 0 }, - {1560,1561, 65, 4, 293, 133, 0, 0 }, - {1562,1563, 84, 4, 1353, 300, 0, 0 }, - {1564,1565, 59, 4, 380, 160, 0, 0 }, - {1566,1567, 84, 4, 1586, 566, 0, 0 }, - {1568,1569, 35, 4, 1320, 473, 0, 0 }, - {1570,1571, 44, 4, 406, 93, 0, 0 }, - {1572,1573, 67, 4, 246, 113, 0, 0 }, - {1574,1575, 66, 4, 286, 193, 0, 0 }, - { 145,1576, 59, 4, 140, 120, 0, 0 }, - {1577,1578, 51, 4, 326, 340, 0, 0 }, - {1579,1580, 45, 4, 233, 193, 0, 0 }, - {1581,1582, 71, 4, 433, 180, 0, 0 }, + {1550,1551, 51, 4, 186, 26, 0, 0 }, + { 134,1555, 43, 4, 1860, 653, 0, 0 }, + {1550,1551, 54, 4, 186, 20, 0, 0 }, + {1550,1551, 57, 4, 186, 26, 0, 0 }, + { 380, 381, 72, 4, 40000, 0, 0, 0 }, + {1550,1551, 60, 4, 186, 26, 0, 0 }, + {1556,1557, 70, 4, 813, 300, 0, 0 }, + { 374, 375, 60, 4, 40000, 0, 0, 0 }, + {1558,1559, 36, 4, 1193, 440, 0, 0 }, + {1560,1561, 65, 4, 513, 360, 0, 0 }, + {1562,1563, 84, 4, 40000, 0, 0, 0 }, + {1564,1565, 59, 4, 386, 160, 0, 0 }, + {1566,1567, 84, 4, 40000, 0, 0, 0 }, + {1568,1569, 35, 4, 1280, 453, 0, 0 }, + {1570,1571, 44, 4, 960, 126, 0, 0 }, + {1572,1573, 67, 4, 160, 93, 0, 0 }, + {1574,1575, 66, 4, 313, 213, 0, 0 }, + { 145,1576, 59, 4, 173, 140, 0, 0 }, + {1577,1578, 51, 4, 393, 380, 0, 0 }, + {1579,1580, 45, 4, 260, 206, 0, 0 }, + {1581,1582, 71, 4, 433, 160, 0, 0 }, { 149,1583, 60, 4, 280, 26, 0, 0 }, - {1584,1585, 58, 4, 166, 93, 0, 0 }, - {1586,1587, 53, 4, 173, 93, 0, 0 }, - { 397,1588, 64, 4, 213, 80, 0, 0 }, - {1589,1590, 71, 4, 106, 53, 0, 0 }, - {1591,1592, 61, 4, 973, 340, 0, 0 }, - {1593,1594, 61, 4, 986, 340, 0, 0 }, - { 391, 392, 48, 4, 160, 46, 0, 0 }, - { 391, 393, 48, 4, 380, 60, 0, 0 }, - {1595,1596, 69, 4, 120, 120, 0, 0 }, - { 159,1597, 68, 4, 120, 120, 0, 0 }, - { 159,1597, 63, 4, 140, 153, 0, 0 }, - {1598,1599, 74, 4, 893, 273, 0, 0 }, - {1600,1601, 60, 4, 1006, 306, 0, 0 }, - {1602,1603, 80, 4, 213, 106, 0, 0 }, - {1604,1605, 64, 4, 1346, 486, 0, 0 }, - {1606,1607, 69, 4, 120, 73, 0, 0 }, - { 398, 399, 55, 4, 1533, 193, 0, 0 }, - {1608,1609, 75, 4, 1560, 300, 0, 0 }, - {1610,1611, 68, 4, 120, 120, 0, 0 }, - {1612,1613, 48, 4, 333, 340, 0, 0 }, - {1614,1615, 53, 4, 593, 620, 0, 0 }, + {1584,1585, 58, 4, 513, 206, 0, 0 }, + {1586,1587, 53, 4, 513, 200, 0, 0 }, + { 397,1588, 64, 4, 220, 86, 0, 0 }, + {1589,1590, 71, 4, 106, 46, 0, 0 }, + {1591,1592, 61, 4, 993, 340, 0, 0 }, + {1593,1594, 61, 4, 1906, 640, 0, 0 }, + { 391, 392, 48, 4, 280, 126, 0, 0 }, + { 391, 393, 48, 4, 280, 126, 0, 0 }, + {1595,1596, 69, 4, 126, 140, 0, 0 }, + { 159,1597, 68, 4, 126, 140, 0, 0 }, + { 159,1597, 63, 4, 146, 166, 0, 0 }, + {1598,1599, 74, 4, 313, 86, 0, 0 }, + {1600,1601, 60, 4, 1066, 326, 0, 0 }, + {1602,1603, 80, 4, 226, 100, 0, 0 }, + {1604,1605, 64, 4, 2673, 913, 0, 0 }, + {1606,1607, 69, 4, 120, 66, 0, 0 }, + { 398, 399, 55, 4, 513, 206, 0, 0 }, + {1608,1609, 75, 4, 1506, 266, 0, 0 }, + {1610,1611, 68, 4, 126, 140, 0, 0 }, + {1612,1613, 48, 4, 380, 366, 0, 0 }, + {1614,1615, 53, 4, 580, 673, 0, 0 }, {1616,1616, 0, 0, 40000, 1586, 0, 0 }, {1617,1617, 0, 0, 40000, 1226, 0, 0 }, {1618,1618, 0, 0, 4546, 766, 0, 0 }, @@ -6693,11 +6693,11 @@ const struct adlinsdata adlins[4920] = {1880,1880, 84, 0, 860, 553, 0, 0 }, { 128, 128, 70, 0, 106, 26, 0, 0 }, { 132, 132, 60, 0, 146, 86, 0, 0 }, - {1881,1882, 0, 4, 40000, 260, 0, 0 }, + {1881,1882, 0, 4, 40000, 413, 0, 0 }, {1883,1883, 0, 0, 40000, 0, 0, 0 }, - {1884,1885, 0, 4, 40000, 73, 0, 0 }, - {1886,1887, 0, 4, 40000, 86, 0, 0 }, - {1888,1889, 0, 4, 40000, 73, 0, 0 }, + {1884,1885, 0, 4, 40000, 0, 0, 0 }, + {1886,1887, 0, 4, 1566, 3013, 0, 0 }, + {1888,1889, 0, 4, 186, 20, 0, 0 }, {1890,1890, 0, 0, 40000, 300, 0, 0 }, {1891,1891, 0, 0, 40000, 693, 0, 0 }, {1892,1892, 0, 0, 40000, 586, 0, 0 }, @@ -7009,36 +7009,36 @@ const struct adlinsdata adlins[4920] = { 167, 167, 0, 0, 793, 426, 0, 0 }, {2160,2160, 65, 0, 166, 73, 0, 0 }, {2161,2161, 21, 0, 480, 146, 0, 0 }, - {2162, 173, 0, 4, 4220, 80, 0, 0 }, - {2163,2164, 0, 4, 4613, 3060, 0, 0 }, - {2165,2166, 0, 4, 7193, 3920, 0, 0 }, - {2167,2168, 0, 4, 3746, 1253, 0, 0 }, - {2169,2170, 0, 4, 6226, 2393, 0, 0 }, - {2171,2172, 0, 4, 18053, 226, 0, 0 }, - {2173,2174, 0, 4, 40000, 713, 0, 0 }, + {2162, 173, 0, 4, 7340, 106, 0, 0 }, + {2163,2164, 0, 4, 2353, 3066, 0, 0 }, + {2165,2166, 0, 4, 7420, 353, 0, 0 }, + {2167,2168, 0, 4, 7293, 2380, 0, 0 }, + {2169,2170, 0, 4, 7553, 2453, 0, 0 }, + {2171,2172, 0, 4, 4606, 420, 0, 0 }, + {2173,2174, 0, 4, 40000, 853, 0, 0 }, {2175,2174, 0, 4, 40000, 733, 0, 0 }, - {2176, 299, 0, 4, 40000, 273, 0, 0 }, - {2177,2178, 0, 4, 40000, 66, 0, 0 }, - {2179,2180, 0, 4, 40000, 393, 0, 0 }, - {2181,2182, 0, 4, 40000, 413, 0, 0 }, - {2183,2184, 0, 4, 7366, 200, 0, 0 }, + {2176, 299, 0, 4, 40000, 140, 0, 0 }, + {2177,2178, 0, 4, 40000, 533, 0, 0 }, + {2179,2180, 0, 4, 40000, 360, 0, 0 }, + {2181,2182, 0, 4, 40000, 433, 0, 0 }, + {2183,2184, 0, 4, 3706, 646, 0, 0 }, { 127, 127, 65, 0, 226, 120, 0, 0 }, { 127, 127, 72, 0, 180, 100, 0, 0 }, - { 364, 365, 52, 4, 120, 26, 0, 0 }, - {2185,2186, 60, 4, 173, 93, 0, 0 }, - {1550,1551, 47, 4, 520, 213, 0, 0 }, - {1556,1557, 76, 4, 766, 306, 0, 0 }, - { 374, 375, 84, 4, 813, 300, 0, 0 }, - {1564,1565, 83, 4, 220, 106, 0, 0 }, - {1568,1569, 24, 4, 1806, 620, 0, 0 }, - {1556,1557, 77, 4, 760, 300, 0, 0 }, - {1572,1573, 60, 4, 280, 126, 0, 0 }, - {1574,1575, 65, 4, 286, 193, 0, 0 }, - { 391, 392, 44, 4, 160, 53, 0, 0 }, - { 391, 393, 40, 4, 460, 66, 0, 0 }, - {1606,1607, 72, 4, 120, 73, 0, 0 }, - { 398, 399, 73, 4, 1286, 173, 0, 0 }, - {1608,1609, 70, 4, 1560, 300, 0, 0 }, + { 364, 365, 52, 4, 293, 20, 0, 0 }, + {2185,2186, 60, 4, 260, 140, 0, 0 }, + {1550,1551, 47, 4, 186, 40, 0, 0 }, + {1556,1557, 76, 4, 813, 306, 0, 0 }, + { 374, 375, 84, 4, 40000, 0, 0, 0 }, + {1564,1565, 83, 4, 220, 113, 0, 0 }, + {1568,1569, 24, 4, 1833, 613, 0, 0 }, + {1556,1557, 77, 4, 813, 306, 0, 0 }, + {1572,1573, 60, 4, 173, 93, 0, 0 }, + {1574,1575, 65, 4, 313, 213, 0, 0 }, + { 391, 392, 44, 4, 280, 133, 0, 0 }, + { 391, 393, 40, 4, 366, 160, 0, 0 }, + {1606,1607, 72, 4, 120, 66, 0, 0 }, + { 398, 399, 73, 4, 433, 180, 0, 0 }, + {1608,1609, 70, 4, 1506, 266, 0, 0 }, {2187,2187, 0, 0, 40000, 353, 0, 0 }, {2188,2188, 0, 0, 40000, 333, 0, 0 }, {2189,2189, 0, 0, 5913, 2306, 0, 0 }, @@ -7168,30 +7168,30 @@ const struct adlinsdata adlins[4920] = {2299,2299, 72, 0, 793, 173, 0, 0 }, {2300,2300, 84, 0, 226, 66, 0, 0 }, { 555, 555, 66, 0, 113, 53, 0, 0 }, - {2301,2302, 35, 4, 2320, 800, 0, 0 }, - {2303,2304, 52, 4, 120, 26, 0, 0 }, - {2305,1548, 48, 4, 173, 93, 0, 0 }, + {2301,2302, 35, 4, 1906, 733, 0, 0 }, + {2303,2304, 52, 4, 293, 20, 0, 0 }, + {2305,1548, 48, 4, 286, 126, 0, 0 }, {1595,1595, 58, 0, 146, 166, 0, 0 }, - {2305,1548, 60, 4, 173, 93, 0, 0 }, - {2306,2307, 47, 4, 1886, 700, 0, 0 }, - {2306,2307, 43, 4, 1946, 740, 0, 0 }, - {2306,2307, 49, 4, 1873, 686, 0, 0 }, - {2306,2307, 51, 4, 1880, 706, 0, 0 }, - {2306,2307, 54, 4, 1900, 720, 0, 0 }, - {2306,2307, 57, 4, 1893, 720, 0, 0 }, - {2306,2307, 72, 4, 1586, 606, 0, 0 }, - {2306,2307, 60, 4, 1893, 720, 0, 0 }, - {2306,2307, 76, 4, 1586, 606, 0, 0 }, - {2306,2307, 84, 4, 1593, 613, 0, 0 }, - {2306,2307, 36, 4, 2380, 920, 0, 0 }, - {1560,2308, 65, 4, 293, 213, 0, 0 }, - {2309,2310, 84, 4, 1366, 306, 0, 0 }, + {2305,1548, 60, 4, 286, 126, 0, 0 }, + {2306,2307, 47, 4, 6573, 1680, 0, 0 }, + {2306,2307, 43, 4, 6546, 1640, 0, 0 }, + {2306,2307, 49, 4, 6420, 1526, 0, 0 }, + {2306,2307, 51, 4, 6480, 1593, 0, 0 }, + {2306,2307, 54, 4, 6633, 1746, 0, 0 }, + {2306,2307, 57, 4, 6533, 1646, 0, 0 }, + {2306,2307, 72, 4, 5526, 1446, 0, 0 }, + {2306,2307, 60, 4, 6706, 1800, 0, 0 }, + {2306,2307, 76, 4, 5613, 1540, 0, 0 }, + {2306,2307, 84, 4, 5613, 1540, 0, 0 }, + {2306,2307, 36, 4, 8200, 2066, 0, 0 }, + {1560,2308, 65, 4, 513, 360, 0, 0 }, + {2309,2310, 84, 4, 40000, 0, 0, 0 }, {1564,1564, 83, 0, 220, 113, 0, 0 }, - { 380, 381, 84, 4, 1580, 566, 0, 0 }, + { 380, 381, 84, 4, 40000, 0, 0, 0 }, {1568,1568, 24, 0, 1833, 613, 0, 0 }, - {2306,2307, 77, 4, 1586, 606, 0, 0 }, - {2311,2312, 60, 4, 280, 126, 0, 0 }, - {2313,2314, 65, 4, 506, 200, 0, 0 }, + {2306,2307, 77, 4, 5600, 1526, 0, 0 }, + {2311,2312, 60, 4, 313, 213, 0, 0 }, + {2313,2314, 65, 4, 506, 380, 0, 0 }, {2315,2315, 59, 0, 106, 40, 0, 0 }, {2316,2316, 51, 0, 386, 373, 0, 0 }, {1612,1612, 45, 0, 393, 380, 0, 0 }, @@ -7203,34 +7203,34 @@ const struct adlinsdata adlins[4920] = {2321,2321, 71, 0, 106, 46, 0, 0 }, {2322,2322, 61, 0, 986, 340, 0, 0 }, {2323,2323, 61, 0, 1893, 633, 0, 0 }, - {2324, 392, 44, 4, 166, 46, 0, 0 }, - {2324, 393, 40, 4, 460, 60, 0, 0 }, + {2324, 392, 44, 4, 280, 133, 0, 0 }, + {2324, 393, 40, 4, 360, 153, 0, 0 }, {1595,1595, 69, 0, 126, 140, 0, 0 }, {1595,1595, 68, 0, 126, 140, 0, 0 }, {1595,1595, 63, 0, 146, 166, 0, 0 }, - {2325,2326, 74, 4, 380, 106, 0, 0 }, - {2327,2328, 60, 4, 1020, 333, 0, 0 }, - {2329,2330, 80, 4, 453, 560, 0, 0 }, - {2331,2332, 64, 4, 1880, 640, 0, 0 }, + {2325,2326, 74, 4, 366, 100, 0, 0 }, + {2327,2328, 60, 4, 1100, 326, 0, 0 }, + {2329,2330, 80, 4, 40000, 0, 0, 0 }, + {2331,2332, 64, 4, 500, 320, 0, 0 }, { 397, 397, 72, 0, 193, 80, 0, 0 }, - {2333,2334, 78, 4, 793, 306, 0, 0 }, - {1608,1609, 82, 4, 1560, 300, 0, 0 }, + {2333,2334, 78, 4, 3106, 300, 0, 0 }, + {1608,1609, 82, 4, 1506, 266, 0, 0 }, {2315,2315, 48, 0, 106, 46, 0, 0 }, {2316,2316, 53, 0, 386, 373, 0, 0 }, {2335,2335, 0, 0, 3586, 1133, 0, 0 }, - {2336,2337, 0, 4, 1180, 420, 0, 0 }, - {2338,2339, 0, 4, 40000, 320, 0, 0 }, + {2336,2337, 0, 4, 1840, 513, 0, 0 }, + {2338,2339, 0, 4, 40000, 213, 0, 0 }, {2340,2340, 0, 0, 8826, 1346, 0, 0 }, {2341,2341, 0, 0, 3440, 753, 0, 0 }, {2342,2342, 0, 0, 40000, 360, 0, 0 }, {2343,2343, 0, 0, 40000, 413, 0, 0 }, - {2344,2345, 0, 4, 40000, 60, 0, 0 }, + {2344,2345, 0, 4, 40000, 0, 0, 0 }, {2346,2346, 0, 0, 40000, 60, 0, 0 }, - {2347,2348, 0, 4, 40000, 126, 0, 0 }, - {2349,2350, 0, 4, 40000, 73, 0, 0 }, + {2347,2348, 0, 4, 40000, 73, 0, 0 }, + {2349,2350, 0, 4, 40000, 140, 0, 0 }, {2351,2352, 0, 4, 40000, 73, 0, 0 }, - {2353,2354, 0, 4, 40000, 86, 0, 0 }, - {2355,2356, 0, 4, 40000, 453, 0, 0 }, + {2353,2354, 0, 4, 40000, 0, 0, 0 }, + {2355,2356, 0, 4, 40000, 206, 0, 0 }, {2357,2357, 14, 0, 186, 20, 0, 0 }, {2358,2358, 35, 0, 246, 73, 0, 0 }, {2357,2357, 19, 0, 166, 26, 0, 0 }, @@ -7239,7 +7239,7 @@ const struct adlinsdata adlins[4920] = {2360,2360, 43, 0, 253, 106, 0, 0 }, {2360,2360, 45, 0, 240, 100, 0, 0 }, {2360,2360, 47, 0, 240, 100, 0, 0 }, - {2361,2362, 0, 4, 14633, 333, 0, 0 }, + {2361,2362, 0, 4, 8446, 753, 0, 0 }, {2363,2363, 0, 0, 7373, 1246, 0, 0 }, {2364,2364, 0, 0, 4900, 233, 0, 0 }, {2365,2365, 0, 0, 5106, 606, 0, 0 }, @@ -7274,31 +7274,31 @@ const struct adlinsdata adlins[4920] = {2393,2393, 0, 0, 3400, 493, 0, 0 }, {2394,2394, 0, 0, 40000, 53, 0, 0 }, {2395,2395, 0, 0, 40000, 133, 0, 0 }, - {2396,2397, 0, 4, 3066, 1400, 0, 0 }, + {2396,2397, 0, 4, 40000, 93, 0, 0 }, {2398,2398, 0, 0, 1080, 580, 0, 0 }, - {2399,2400, 0, 4, 2220, 400, 0, 0 }, + {2399,2400, 0, 4, 733, 500, 0, 0 }, {2401,2401, 0, 0, 40000, 193, 0, 0 }, {2402,2402, 0, 0, 40000, 60, 0, 0 }, {2403,2404, 0, 4, 40000, 146, 0, 0 }, - {2405,2406, 0, 4, 40000, 133, 0, 0 }, - {2407,2408, 0, 4, 40000, 66, 0, 0 }, + {2405,2406, 0, 4, 40000, 193, 0, 0 }, + {2407,2408, 0, 4, 40000, 73, 0, 0 }, {2409,2409, 0, 0, 40000, 0, 0, 0 }, {2410,2410, 0, 0, 40000, 73, 0, 0 }, {2411,2411, 0, 0, 40000, 66, 0, 0 }, - {2412,2413, 0, 4, 40000, 153, 0, 0 }, + {2412,2413, 0, 4, 40000, 140, 0, 0 }, {2414,2414, 0, 0, 40000, 126, 0, 0 }, - {2415,2416, 0, 4, 40000, 466, 0, 0 }, - {2417,2418, 0, 4, 40000, 113, 0, 0 }, - {2419,2420, 0, 4, 1280, 73, 0, 0 }, - {2421,2422, 0, 4, 1106, 146, 0, 0 }, - {2423,2424, 0, 4, 3640, 113, 0, 0 }, - {2425,2426, 0, 4, 40000, 80, 0, 0 }, + {2415,2416, 0, 4, 40000, 206, 0, 0 }, + {2417,2418, 0, 4, 40000, 0, 0, 0 }, + {2419,2420, 0, 4, 1726, 226, 0, 0 }, + {2421,2422, 0, 4, 18360, 5820, 0, 0 }, + {2423,2424, 0, 4, 14440, 2320, 0, 0 }, + {2425,2426, 0, 4, 40000, 73, 0, 0 }, {2427,2427, 33, 0, 300, 246, 0, 0 }, - {2428,2429, 38, 4, 53, 26, 0, 0 }, + {2428,2429, 38, 4, 206, 33, 0, 0 }, {2430,2430, 38, 0, 106, 46, 0, 0 }, {2431,2431, 38, 0, 340, 20, 0, 0 }, {2432,2432, 40, 0, 73, 40, 0, 0 }, - {2433,2434, 41, 4, 293, 106, 0, 0 }, + {2433,2434, 41, 4, 333, 146, 0, 0 }, {2435,2435, 0, 0, 133, 73, 0, 0 }, {2435,2435, 41, 0, 133, 73, 0, 0 }, {2360,2360, 48, 0, 240, 100, 0, 0 }, @@ -7482,80 +7482,80 @@ const struct adlinsdata adlins[4920] = {2543,2543, 0, 0, 40000, 1306, 0, 0 }, {2544,2544, 0, 0, 40000, 0, 0, 0 }, {2545,2545, 0, 0, 4613, 13, 0, 0 }, - {2546,2547, 0, 4, 6926, 126, 0, 0 }, - {2548,2549, 0, 4, 40000, 86, 0, 0 }, + {2546,2547, 0, 4, 7406, 126, 0, 0 }, + {2548,2549, 0, 4, 40000, 100, 0, 0 }, {2550,2550, 0, 0, 9233, 100, 0, 0 }, - {2551,2552, 0, 4, 4620, 73, 0, 0 }, + {2551,2552, 0, 4, 8620, 20, 0, 0 }, {2553,2553, 0, 0, 40000, 73, 0, 0 }, {2554,2554, 0, 0, 40000, 0, 0, 0 }, - {2555,2556, 0, 4, 40000, 73, 0, 0 }, + {2555,2556, 0, 4, 40000, 66, 0, 0 }, {2557,2557, 0, 0, 40000, 60, 0, 0 }, - {2558,1467, 0, 4, 40000, 66, 0, 0 }, - {2559,2560, 0, 4, 40000, 40, 0, 0 }, + {2558,1467, 0, 4, 17220, 73, 0, 0 }, + {2559,2560, 0, 4, 17946, 73, 0, 0 }, {2561,2561, 0, 0, 40000, 186, 0, 0 }, {2562,2562, 0, 0, 4026, 66, 0, 0 }, - {2563,2564, 0, 4, 14513, 80, 0, 0 }, + {2563,2564, 0, 4, 3720, 33, 0, 0 }, {2565,2565, 0, 0, 40000, 0, 0, 0 }, - {2566,2567, 0, 4, 40000, 40, 0, 0 }, + {2566,2567, 0, 4, 40000, 46, 0, 0 }, {2568,2568, 0, 0, 4020, 73, 0, 0 }, {2569,2569, 0, 0, 40000, 0, 0, 0 }, {2570,2570, 0, 0, 40000, 0, 0, 0 }, {2571,2572, 0, 4, 40000, 126, 0, 0 }, - {2573,2574, 0, 4, 40000, 100, 0, 0 }, + {2573,2574, 0, 4, 40000, 73, 0, 0 }, {2575,2575, 0, 0, 40000, 213, 0, 0 }, - { 229,2576, 0, 4, 40000, 166, 0, 0 }, + { 229,2576, 0, 4, 40000, 160, 0, 0 }, {2577,2577, 0, 0, 7366, 53, 0, 0 }, - { 239,2578, 0, 4, 40000, 133, 0, 0 }, + { 239,2578, 0, 4, 40000, 113, 0, 0 }, {2579,2579, 0, 0, 40000, 80, 0, 0 }, {2580,2580, 0, 0, 40000, 140, 0, 0 }, - {2581,2582, 0, 4, 16913, 1173, 0, 0 }, - {2583,2584, 0, 4, 726, 100, 0, 0 }, - {2585,2586, 0, 4, 40000, 73, 0, 0 }, + {2581,2582, 0, 4, 16966, 2453, 0, 0 }, + {2583,2584, 0, 4, 726, 146, 0, 0 }, + {2585,2586, 0, 4, 40000, 66, 0, 0 }, {2587,2588, 0, 4, 40000, 73, 0, 0 }, {2589,2589, 0, 0, 40000, 60, 0, 0 }, {2590,2590, 0, 0, 40000, 80, 0, 0 }, - {2591,2592, 0, 4, 40000, 73, 0, 0 }, - {2593,2594, 0, 4, 40000, 60, 0, 0 }, + {2591,2592, 0, 4, 40000, 60, 0, 0 }, + {2593,2594, 0, 4, 40000, 53, 0, 0 }, {2595,2595, 0, 0, 40000, 66, 0, 0 }, - {2596,2597, 0, 4, 40000, 66, 0, 0 }, - {2598,2599, 0, 4, 40000, 60, 0, 0 }, - {2600,2601, 0, 4, 40000, 173, 0, 0 }, + {2596,2597, 0, 4, 40000, 73, 0, 0 }, + {2598,2599, 0, 4, 40000, 73, 0, 0 }, + {2600,2601, 0, 4, 40000, 73, 0, 0 }, {2602,2602, 0, 0, 40000, 60, 0, 0 }, {2603,2603, 0, 0, 40000, 73, 0, 0 }, {2604,2604, 0, 0, 40000, 93, 0, 0 }, - {2605,2606, 0, 4, 40000, 73, 0, 0 }, + {2605,2606, 0, 4, 40000, 66, 0, 0 }, {2607,2607, 0, 0, 40000, 66, 0, 0 }, - {2608,2609, 0, 4, 40000, 66, 0, 0 }, + {2608,2609, 0, 4, 40000, 0, 0, 0 }, {2610,2610, 0, 0, 40000, 86, 0, 0 }, {2611,2611, 0, 0, 40000, 60, 0, 0 }, {2612,2612, 0, 0, 14286, 73, 0, 0 }, {2613,2613, 0, 0, 40000, 0, 0, 0 }, - {2614,2615, 0, 4, 40000, 73, 0, 0 }, - {2616,2617, 0, 4, 40000, 66, 0, 0 }, - {2618,2619, 0, 4, 133, 26, 0, 0 }, - {2620,2621, 0, 4, 40000, 1280, 0, 0 }, - {2622,2623, 0, 4, 40000, 160, 0, 0 }, - {2624,2625, 0, 4, 40000, 0, 0, 0 }, - {2626,2627, 0, 4, 40000, 73, 0, 0 }, - {2628,2629, 0, 4, 40000, 0, 0, 0 }, - {1516,2630, 0, 4, 1186, 406, 0, 0 }, - {2631,2632, 0, 4, 40000, 553, 0, 0 }, + {2614,2615, 0, 4, 40000, 66, 0, 0 }, + {2616,2617, 0, 4, 40000, 73, 0, 0 }, + {2618,2619, 0, 4, 1300, 66, 0, 0 }, + {2620,2621, 0, 4, 40000, 1373, 0, 0 }, + {2622,2623, 0, 4, 40000, 100, 0, 0 }, + {2624,2625, 0, 4, 40000, 220, 0, 0 }, + {2626,2627, 0, 4, 40000, 140, 0, 0 }, + {2628,2629, 0, 4, 40000, 220, 0, 0 }, + {1516,2630, 0, 4, 626, 240, 0, 0 }, + {2631,2632, 0, 4, 40000, 646, 0, 0 }, {2633,2633, 0, 0, 40000, 40, 0, 0 }, - {2634,2635, 0, 4, 40000, 773, 0, 0 }, + {2634,2635, 0, 4, 40000, 0, 0, 0 }, {2636,2636, 0, 0, 40000, 320, 0, 0 }, {2637,2637, 0, 0, 1880, 73, 0, 0 }, - {2638,2639, 0, 4, 473, 186, 0, 0 }, - {2640,2641, 0, 4, 16946, 1193, 0, 0 }, + {2638,2639, 0, 4, 1820, 586, 0, 0 }, + {2640,2641, 0, 4, 15513, 1246, 0, 0 }, {2642,2642, 0, 0, 40000, 720, 0, 0 }, - {2643,2644, 0, 4, 1880, 40, 0, 0 }, + {2643,2644, 0, 4, 3646, 66, 0, 0 }, {2645,2645, 0, 0, 40000, 73, 0, 0 }, - {2646,2647, 0, 4, 40000, 46, 0, 0 }, + {2646,2647, 0, 4, 9093, 66, 0, 0 }, {2648,2648, 0, 0, 2466, 80, 0, 0 }, {2649,2649, 0, 0, 40000, 193, 0, 0 }, - {2650,2651, 0, 4, 993, 73, 0, 0 }, + {2650,2651, 0, 4, 293, 66, 0, 0 }, {2652,2652, 0, 0, 40000, 220, 0, 0 }, - {2653,2654, 0, 4, 40000, 46, 0, 0 }, - {2655,2656, 0, 4, 40000, 46, 0, 0 }, + {2653,2654, 0, 4, 40000, 60, 0, 0 }, + {2655,2656, 0, 4, 40000, 53, 0, 0 }, {2657,2657, 0, 0, 40000, 66, 0, 0 }, {2658,2658, 35, 0, 626, 20, 0, 0 }, {2659,2659, 35, 0, 306, 26, 0, 0 }, @@ -7595,158 +7595,158 @@ const struct adlinsdata adlins[4920] = {2686,2686, 70, 0, 820, 20, 0, 0 }, {2687,2687, 48, 0, 173, 20, 0, 0 }, {2688,2688, 53, 0, 980, 33, 0, 0 }, - {2689,2690, 0, 4, 40000, 286, 0, 0 }, - {2691,2692, 0, 4, 2326, 100, 0, 0 }, - {2693,2694, 0, 4, 380, 80, 0, 0 }, - {2695,2696, 0, 4, 14766, 73, 0, 0 }, - {2697,2698, 0, 4, 40000, 40, 0, 0 }, + {2689,2690, 0, 4, 40000, 73, 0, 0 }, + {2691,2692, 0, 4, 18226, 100, 0, 0 }, + {2693,2694, 0, 4, 40000, 0, 0, 0 }, + {2695,2696, 0, 4, 6420, 20, 0, 0 }, + {2697,2698, 0, 4, 18173, 73, 0, 0 }, { 192,2699, 0, 4, 40000, 73, 0, 0 }, - {2700,2701, 0, 4, 973, 126, 0, 0 }, - {2702,2703, 0, 4, 4626, 106, 0, 0 }, + {2700,2701, 0, 4, 1133, 1313, 0, 0 }, + {2702,2703, 0, 4, 1193, 100, 0, 0 }, {2704,2705, 0, 4, 40000, 73, 0, 0 }, {2706,2707, 0, 4, 40000, 73, 0, 0 }, {2708,2709, 0, 4, 40000, 73, 0, 0 }, - {2710,2711, 0, 4, 2053, 93, 0, 0 }, - {2712,1473, 0, 4, 320, 26, 0, 0 }, - {2713,2714, 0, 4, 573, 93, 0, 0 }, - {2715,2716, 0, 4, 6466, 353, 0, 0 }, - {1478,2717, 0, 4, 40000, 146, 0, 0 }, - {2718,2719, 0, 4, 40000, 66, 0, 0 }, - { 286,2720, 0, 4, 40000, 73, 0, 0 }, - {2721,2722, 0, 4, 40000, 86, 0, 0 }, - {2723,2724, 0, 4, 40000, 60, 0, 0 }, - {2725,2726, 0, 4, 393, 73, 0, 0 }, - {2727,2724, 0, 4, 40000, 60, 0, 0 }, - {1514,2728, 0, 4, 40000, 180, 0, 0 }, + {2710,2711, 0, 4, 1066, 100, 0, 0 }, + {2712,1473, 0, 4, 40000, 0, 0, 0 }, + {2713,2714, 0, 4, 326, 100, 0, 0 }, + {2715,2716, 0, 4, 1760, 353, 0, 0 }, + {1478,2717, 0, 4, 40000, 433, 0, 0 }, + {2718,2719, 0, 4, 40000, 0, 0, 0 }, + { 286,2720, 0, 4, 40000, 66, 0, 0 }, + {2721,2722, 0, 4, 40000, 73, 0, 0 }, + {2723,2724, 0, 4, 820, 66, 0, 0 }, + {2725,2726, 0, 4, 2386, 66, 0, 0 }, + {2727,2724, 0, 4, 5393, 1553, 0, 0 }, + {1514,2728, 0, 4, 40000, 140, 0, 0 }, {2729,2730, 0, 4, 40000, 0, 0, 0 }, - {2731,2732, 0, 4, 473, 186, 0, 0 }, - {2733,2734, 0, 4, 733, 33, 0, 0 }, - {2735,2736, 0, 4, 286, 40, 0, 0 }, + {2731,2732, 0, 4, 1820, 586, 0, 0 }, + {2733,2734, 0, 4, 566, 73, 0, 0 }, + {2735,2736, 0, 4, 46, 93, 0, 0 }, {2737,2738, 0, 4, 40000, 73, 0, 0 }, - {2739,2740, 0, 4, 1313, 746, 0, 0 }, - {2741,2742, 0, 4, 1326, 700, 0, 0 }, + {2739,2740, 0, 4, 1646, 853, 0, 0 }, + {2741,2742, 0, 4, 1520, 646, 0, 0 }, {2743,2744, 0, 4, 40000, 0, 0, 0 }, - {2745,2746, 0, 4, 2046, 73, 0, 0 }, + {2745,2746, 0, 4, 40000, 0, 0, 0 }, {2747,2747, 35, 0, 386, 166, 0, 0 }, {2748,2748, 60, 0, 493, 193, 0, 0 }, {2749,2749, 43, 0, 126, 66, 0, 0 }, {2750,2750, 0, 0, 3740, 1260, 0, 0 }, - {2751,2752, 0, 4, 14833, 360, 0, 0 }, - {2753,2754, 0, 4, 10206, 273, 0, 0 }, - {2755,2756, 0, 4, 18033, 146, 0, 0 }, - {2757,2758, 0, 4, 14433, 326, 0, 0 }, - {2759,2760, 0, 4, 14580, 626, 0, 0 }, - {2761,2762, 0, 4, 14720, 300, 0, 0 }, - {2763,2764, 0, 4, 10426, 106, 0, 0 }, - {2765,2766, 0, 4, 40000, 60, 0, 0 }, - {2767,2768, 0, 4, 40000, 80, 0, 0 }, - {2769,2770, 0, 4, 40000, 80, 0, 0 }, + {2751,2752, 0, 4, 6993, 766, 0, 0 }, + {2753,2754, 0, 4, 3853, 1553, 0, 0 }, + {2755,2756, 0, 4, 14326, 126, 0, 0 }, + {2757,2758, 0, 4, 14860, 673, 0, 0 }, + {2759,2760, 0, 4, 9046, 140, 0, 0 }, + {2761,2762, 0, 4, 9000, 226, 0, 0 }, + {2763,2764, 0, 4, 19093, 0, 0, 0 }, + {2765,2766, 0, 4, 40000, 66, 0, 0 }, + {2767,2768, 0, 4, 40000, 273, 0, 0 }, + {2769,2770, 0, 4, 40000, 73, 0, 0 }, {2771,2772, 0, 4, 40000, 73, 0, 0 }, {2773,2774, 0, 4, 40000, 73, 0, 0 }, - {2775,2776, 0, 4, 40000, 80, 0, 0 }, + {2775,2776, 0, 4, 40000, 73, 0, 0 }, {2777,2778, 0, 4, 40000, 73, 0, 0 }, - {2779,2780, 0, 4, 40000, 73, 0, 0 }, + {2779,2780, 0, 4, 986, 693, 0, 0 }, {2781,2782, 0, 4, 40000, 66, 0, 0 }, - {2783,2784, 0, 4, 7220, 186, 0, 0 }, - {2785,2786, 0, 4, 10300, 113, 0, 0 }, - {2787,2788, 0, 4, 40000, 246, 0, 0 }, - {2789,2790, 0, 4, 9106, 746, 0, 0 }, - {2791,2792, 0, 4, 7373, 666, 0, 0 }, - {2793,2794, 0, 4, 1200, 426, 0, 0 }, - {2795,2796, 0, 4, 40000, 413, 0, 0 }, - {2795,2797, 0, 4, 40000, 1506, 0, 0 }, - {2798,2799, 0, 4, 40000, 60, 0, 0 }, - {2800,2801, 0, 4, 40000, 233, 0, 0 }, - {2802,2803, 0, 4, 40000, 80, 0, 0 }, - {2804,2805, 0, 4, 40000, 80, 0, 0 }, - {2806,2807, 0, 4, 4500, 80, 0, 0 }, - {2808,2809, 0, 4, 40000, 73, 0, 0 }, - {2810,2811, 0, 4, 1180, 100, 0, 0 }, - {2812,2813, 0, 4, 953, 153, 0, 0 }, - {2814,2815, 0, 4, 14693, 126, 0, 0 }, - {2816,2817, 0, 4, 14693, 193, 0, 0 }, - {2818,2819, 0, 4, 14473, 633, 0, 0 }, - {2820,2821, 0, 4, 2200, 73, 0, 0 }, + {2783,2784, 0, 4, 19506, 7000, 0, 0 }, + {2785,2786, 0, 4, 10746, 0, 0, 0 }, + {2787,2788, 0, 4, 40000, 400, 0, 0 }, + {2789,2790, 0, 4, 9126, 786, 0, 0 }, + {2791,2792, 0, 4, 7253, 620, 0, 0 }, + {2793,2794, 0, 4, 2286, 226, 0, 0 }, + {2795,2796, 0, 4, 40000, 5773, 0, 0 }, + {2795,2797, 0, 4, 40000, 5773, 0, 0 }, + {2798,2799, 0, 4, 40000, 80, 0, 0 }, + {2800,2801, 0, 4, 40000, 733, 0, 0 }, + {2802,2803, 0, 4, 40000, 73, 0, 0 }, + {2804,2805, 0, 4, 40000, 73, 0, 0 }, + {2806,2807, 0, 4, 8786, 240, 0, 0 }, + {2808,2809, 0, 4, 40000, 53, 0, 0 }, + {2810,2811, 0, 4, 1240, 473, 0, 0 }, + {2812,2813, 0, 4, 40000, 0, 0, 0 }, + {2814,2815, 0, 4, 7333, 206, 0, 0 }, + {2816,2817, 0, 4, 14820, 200, 0, 0 }, + {2818,2819, 0, 4, 40000, 0, 0, 0 }, + {2820,2821, 0, 4, 2186, 40, 0, 0 }, {2822,2823, 0, 4, 366, 86, 0, 0 }, - {2824,2825, 0, 4, 12780, 200, 0, 0 }, - {2826,2827, 0, 4, 40000, 73, 0, 0 }, - {2828,2829, 0, 4, 9066, 146, 0, 0 }, - {2830,2831, 0, 4, 2526, 326, 0, 0 }, - {2832,2833, 0, 4, 6933, 200, 0, 0 }, - {2834,2835, 0, 4, 40000, 413, 0, 0 }, - {2836,2837, 0, 4, 4806, 1313, 0, 0 }, - {2838,2839, 0, 4, 14620, 340, 0, 0 }, - {2840,2841, 0, 4, 1866, 653, 0, 0 }, - {2842,2843, 0, 4, 5200, 260, 0, 0 }, - {2844,2845, 0, 4, 40000, 240, 0, 0 }, - {2846,2847, 0, 4, 40000, 240, 0, 0 }, - {2848,2849, 0, 4, 40000, 240, 0, 0 }, - {2850,2851, 0, 4, 40000, 406, 0, 0 }, - {2852,2853, 0, 4, 40000, 406, 0, 0 }, - {2854,2855, 0, 4, 40000, 146, 0, 0 }, + {2824,2825, 0, 4, 40000, 333, 0, 0 }, + {2826,2827, 0, 4, 40000, 66, 0, 0 }, + {2828,2829, 0, 4, 9060, 140, 0, 0 }, + {2830,2831, 0, 4, 40000, 40, 0, 0 }, + {2832,2833, 0, 4, 40000, 40, 0, 0 }, + {2834,2835, 0, 4, 40000, 0, 0, 0 }, + {2836,2837, 0, 4, 13293, 106, 0, 0 }, + {2838,2839, 0, 4, 1906, 353, 0, 0 }, + {2840,2841, 0, 4, 40000, 73, 0, 0 }, + {2842,2843, 0, 4, 5306, 266, 0, 0 }, + {2844,2845, 0, 4, 40000, 406, 0, 0 }, + {2846,2847, 0, 4, 40000, 420, 0, 0 }, + {2848,2849, 0, 4, 40000, 1586, 0, 0 }, + {2850,2851, 0, 4, 40000, 553, 0, 0 }, + {2852,2853, 0, 4, 40000, 446, 0, 0 }, + {2854,2855, 0, 4, 40000, 266, 0, 0 }, {2856,2856, 0, 0, 2400, 1126, 0, 0 }, {2857,2857, 0, 0, 2400, 1126, 0, 0 }, - {2858,2859, 0, 4, 4586, 73, 0, 0 }, - {2860,2861, 0, 4, 40000, 426, 0, 0 }, - {2862,2863, 0, 4, 4553, 100, 0, 0 }, - {2864,2865, 0, 4, 40000, 80, 0, 0 }, - {2866,2867, 0, 4, 5260, 53, 0, 0 }, - {2868,2869, 0, 4, 5286, 113, 0, 0 }, - {2870,2871, 0, 4, 7040, 186, 0, 0 }, - {2872,2873, 0, 4, 4693, 106, 0, 0 }, - {2874,2875, 0, 4, 40000, 73, 0, 0 }, - {2876,2877, 0, 4, 1633, 146, 0, 0 }, - {2878,2879, 0, 4, 7266, 186, 0, 0 }, - {2880,2881, 0, 4, 7340, 1246, 0, 0 }, - {2882,2883, 0, 4, 4600, 93, 0, 0 }, - {2884,2885, 0, 4, 3446, 926, 0, 0 }, - {2886,2887, 0, 4, 40000, 73, 0, 0 }, + {2858,2859, 0, 4, 2466, 46, 0, 0 }, + {2860,2861, 0, 4, 40000, 460, 0, 0 }, + {2862,2863, 0, 4, 2373, 86, 0, 0 }, + {2864,2865, 0, 4, 40000, 73, 0, 0 }, + {2866,2867, 0, 4, 5293, 80, 0, 0 }, + {2868,2869, 0, 4, 5300, 106, 0, 0 }, + {2870,2871, 0, 4, 513, 93, 0, 0 }, + {2872,2873, 0, 4, 213, 106, 0, 0 }, + {2874,2875, 0, 4, 40000, 60, 0, 0 }, + {2876,2877, 0, 4, 1186, 40, 0, 0 }, + {2878,2879, 0, 4, 993, 200, 0, 0 }, + {2880,2881, 0, 4, 16973, 2926, 0, 0 }, + {2882,2883, 0, 4, 40000, 0, 0, 0 }, + {2884,2885, 0, 4, 13333, 140, 0, 0 }, + {2886,2887, 0, 4, 40000, 0, 0, 0 }, {2888,2888, 0, 0, 18926, 426, 0, 0 }, {2889,2889, 0, 0, 18520, 73, 0, 0 }, {2890,2890, 0, 0, 18473, 73, 0, 0 }, - {2891,2892, 0, 4, 40000, 93, 0, 0 }, + {2891,2892, 0, 4, 40000, 160, 0, 0 }, {2893,2893, 0, 0, 8006, 133, 0, 0 }, {2894,2894, 0, 0, 18533, 66, 0, 0 }, {2895,2895, 0, 0, 14786, 4966, 0, 0 }, {2896,2897, 0, 4, 40000, 80, 0, 0 }, - {2898,2899, 0, 4, 40000, 73, 0, 0 }, - {2353,2900, 0, 4, 18420, 80, 0, 0 }, + {2898,2899, 0, 4, 40000, 113, 0, 0 }, + {2353,2900, 0, 4, 40000, 0, 0, 0 }, {2901,2901, 0, 0, 40000, 0, 0, 0 }, - {2902,2903, 0, 4, 40000, 100, 0, 0 }, - {2904,2905, 0, 4, 40000, 93, 0, 0 }, - {2906,2907, 0, 4, 40000, 73, 0, 0 }, - {2908,2909, 0, 4, 10706, 160, 0, 0 }, - {2910,2911, 0, 4, 40000, 73, 0, 0 }, + {2902,2903, 0, 4, 40000, 80, 0, 0 }, + {2904,2905, 0, 4, 40000, 73, 0, 0 }, + {2906,2907, 0, 4, 40000, 80, 0, 0 }, + {2908,2909, 0, 4, 18553, 240, 0, 0 }, + {2910,2911, 0, 4, 40000, 426, 0, 0 }, {2912,2912, 0, 0, 40000, 40, 0, 0 }, - {2913,2914, 0, 4, 8713, 446, 0, 0 }, - {2915,2916, 0, 4, 14633, 653, 0, 0 }, - {2917,2918, 0, 4, 9166, 426, 0, 0 }, - {2919,2920, 0, 4, 9213, 240, 0, 0 }, - {2921,2922, 0, 4, 8700, 420, 0, 0 }, - {2923,2924, 0, 4, 2200, 346, 0, 0 }, - {2925,2926, 0, 4, 2360, 426, 0, 0 }, - {2927,2928, 0, 4, 2340, 233, 0, 0 }, + {2913,2914, 0, 4, 8126, 433, 0, 0 }, + {2915,2916, 0, 4, 7040, 653, 0, 0 }, + {2917,2918, 0, 4, 706, 46, 0, 0 }, + {2919,2920, 0, 4, 9146, 420, 0, 0 }, + {2921,2922, 0, 4, 4626, 426, 0, 0 }, + {2923,2924, 0, 4, 2320, 233, 0, 0 }, + {2925,2926, 0, 4, 2353, 426, 0, 0 }, + {2927,2928, 0, 4, 286, 420, 0, 0 }, {2929,2929, 0, 0, 40000, 140, 0, 0 }, - {2930,2931, 0, 4, 40000, 100, 0, 0 }, - {2932,2933, 0, 4, 40000, 73, 0, 0 }, - {2934,2935, 0, 4, 40000, 80, 0, 0 }, - {2936,2937, 0, 4, 40000, 80, 0, 0 }, - {2938,2939, 0, 4, 40000, 246, 0, 0 }, + {2930,2931, 0, 4, 40000, 0, 0, 0 }, + {2932,2933, 0, 4, 40000, 0, 0, 0 }, + {2934,2935, 0, 4, 40000, 0, 0, 0 }, + {2936,2937, 0, 4, 40000, 0, 0, 0 }, + {2938,2939, 0, 4, 40000, 0, 0, 0 }, {2940,2940, 0, 0, 553, 446, 0, 0 }, {2941,2941, 0, 0, 40000, 193, 0, 0 }, - {2942,2943, 0, 4, 1200, 406, 0, 0 }, + {2942,2943, 0, 4, 1173, 406, 0, 0 }, {2944,2944, 0, 0, 7026, 1553, 0, 0 }, {2945,2945, 0, 0, 3426, 360, 0, 0 }, - {2946,2947, 0, 4, 7200, 646, 0, 0 }, + {2946,2947, 0, 4, 7300, 633, 0, 0 }, {2948,2948, 0, 0, 40000, 386, 0, 0 }, {2949,2949, 0, 0, 1953, 726, 0, 0 }, - {2950,2951, 0, 4, 14606, 106, 0, 0 }, - {2952,2953, 0, 4, 40000, 1566, 0, 0 }, + {2950,2951, 0, 4, 15060, 820, 0, 0 }, + {2952,2953, 0, 4, 40000, 2460, 0, 0 }, {2954,2954, 60, 2, 6, 0, 0, 0 }, - {2955,2956, 0, 4, 40000, 240, 0, 0 }, - {2957,2958, 0, 4, 40000, 80, 0, 0 }, - {2959,2960, 0, 4, 40000, 113, 0, 0 }, - {2961,2962, 0, 4, 40000, 240, 0, 0 }, + {2955,2956, 0, 4, 40000, 406, 0, 0 }, + {2957,2958, 0, 4, 40000, 0, 0, 0 }, + {2959,2960, 0, 4, 40000, 160, 0, 0 }, + {2961,2962, 0, 4, 40000, 220, 0, 0 }, {2963,2963, 0, 0, 8506, 680, 0, 0 }, {2964,2964, 0, 0, 40000, 1593, 0, 0 }, {2436,2436, 49, 0, 1873, 633, 0, 0 }, @@ -7836,63 +7836,63 @@ const struct adlinsdata adlins[4920] = {3024,3024, 74, 0, 280, 73, 0, 0 }, {3025,3025, 74, 0, 453, 100, 0, 0 }, {3026,3026, 60, 0, 666, 33, 0, 0 }, - {1593,1594, 35, 4, 1220, 413, 0, 0 }, - {1564,1565, 35, 4, 700, 260, 0, 0 }, - { 248,3027, 0, 4, 40000, 126, 0, 0 }, - {1445,3028, 0, 4, 9920, 326, 0, 0 }, - {1447,3029, 0, 4, 10133, 26, 0, 0 }, - {1452,3030, 0, 4, 9213, 240, 0, 0 }, - {1544,3031, 0, 4, 293, 86, 0, 0 }, - {1546,3032, 0, 4, 40000, 153, 0, 0 }, - { 398, 399, 35, 4, 1906, 226, 0, 0 }, - {1550,3033, 35, 4, 66, 26, 0, 0 }, - {1556,1557, 35, 4, 1126, 426, 0, 0 }, - {1558,1559, 35, 4, 1126, 413, 0, 0 }, - {1570,1571, 35, 4, 493, 100, 0, 0 }, - {1608,1609, 35, 4, 2286, 413, 0, 0 }, - {1595,1596, 35, 4, 220, 260, 0, 0 }, - { 159,1597, 35, 4, 220, 273, 0, 0 }, - {1610,1611, 35, 4, 220, 260, 0, 0 }, + {1593,1594, 35, 4, 2373, 786, 0, 0 }, + {1564,1565, 35, 4, 713, 273, 0, 0 }, + { 248,3027, 0, 4, 40000, 80, 0, 0 }, + {1445,3028, 0, 4, 9893, 466, 0, 0 }, + {1447,3029, 0, 4, 10620, 0, 0, 0 }, + {1452,3030, 0, 4, 4660, 240, 0, 0 }, + {1544,3031, 0, 4, 993, 320, 0, 0 }, + {1546,3032, 0, 4, 40000, 80, 0, 0 }, + { 398, 399, 35, 4, 626, 240, 0, 0 }, + {1550,3033, 35, 4, 213, 26, 0, 0 }, + {1556,1557, 35, 4, 1206, 433, 0, 0 }, + {1558,1559, 35, 4, 1166, 393, 0, 0 }, + {1570,1571, 35, 4, 1200, 146, 0, 0 }, + {1608,1609, 35, 4, 2173, 353, 0, 0 }, + {1595,1596, 35, 4, 220, 273, 0, 0 }, + { 159,1597, 35, 4, 220, 266, 0, 0 }, + {1610,1611, 35, 4, 220, 273, 0, 0 }, { 397,1588, 35, 4, 253, 86, 0, 0 }, - {1606,1607, 35, 4, 140, 60, 0, 0 }, - { 145,1576, 35, 4, 160, 120, 0, 0 }, - {1612,1613, 35, 4, 413, 440, 0, 0 }, - {1577,1578, 35, 4, 373, 393, 0, 0 }, - {1614,1615, 35, 4, 706, 760, 0, 0 }, - {1550,1551, 35, 4, 620, 240, 0, 0 }, - { 364, 365, 35, 4, 146, 26, 0, 0 }, - { 129,1549, 35, 4, 200, 100, 0, 0 }, - { 132,1552, 35, 4, 213, 106, 0, 0 }, + {1606,1607, 35, 4, 133, 66, 0, 0 }, + { 145,1576, 35, 4, 180, 146, 0, 0 }, + {1612,1613, 35, 4, 526, 400, 0, 0 }, + {1577,1578, 35, 4, 506, 453, 0, 0 }, + {1614,1615, 35, 4, 773, 926, 0, 0 }, + {1550,1551, 35, 4, 213, 26, 0, 0 }, + { 364, 365, 35, 4, 400, 20, 0, 0 }, + { 129,1549, 35, 4, 346, 146, 0, 0 }, + { 132,1552, 35, 4, 220, 113, 0, 0 }, {1553,1554, 35, 4, 206, 73, 0, 0 }, - { 129,1548, 35, 4, 200, 100, 0, 0 }, - { 134,1555, 35, 4, 2233, 680, 0, 0 }, - {1560,1561, 35, 4, 353, 146, 0, 0 }, - {1562,1563, 35, 4, 2013, 426, 0, 0 }, - {1572,1573, 35, 4, 346, 153, 0, 0 }, - {1574,1575, 35, 4, 360, 246, 0, 0 }, - {1581,1582, 35, 4, 620, 246, 0, 0 }, - { 149,1583, 35, 4, 326, 33, 0, 0 }, - {1584,1585, 35, 4, 200, 100, 0, 0 }, - {1591,1592, 35, 4, 1206, 413, 0, 0 }, - {1579,1580, 35, 4, 273, 233, 0, 0 }, - {1586,1587, 35, 4, 200, 100, 0, 0 }, + { 129,1548, 35, 4, 346, 146, 0, 0 }, + { 134,1555, 35, 4, 2613, 893, 0, 0 }, + {1560,1561, 35, 4, 620, 420, 0, 0 }, + {1562,1563, 35, 4, 40000, 0, 0, 0 }, + {1572,1573, 35, 4, 200, 100, 0, 0 }, + {1574,1575, 35, 4, 406, 226, 0, 0 }, + {1581,1582, 35, 4, 633, 213, 0, 0 }, + { 149,1583, 35, 4, 326, 26, 0, 0 }, + {1584,1585, 35, 4, 626, 240, 0, 0 }, + {1591,1592, 35, 4, 1226, 406, 0, 0 }, + {1579,1580, 35, 4, 320, 260, 0, 0 }, + {1586,1587, 35, 4, 626, 246, 0, 0 }, {1589,1590, 35, 4, 120, 86, 0, 0 }, - {1600,1601, 35, 4, 1246, 373, 0, 0 }, - {1602,1603, 35, 4, 700, 273, 0, 0 }, - {1604,1605, 35, 4, 2660, 926, 0, 0 }, - {1598,1599, 35, 4, 1300, 400, 0, 0 }, - { 374, 375, 35, 4, 1186, 426, 0, 0 }, - {1566,1567, 35, 4, 2333, 813, 0, 0 }, - {2306,2307, 35, 4, 2360, 906, 0, 0 }, - {3034, 339, 35, 6, 6, 0, 0, 0 }, - {2305,1548, 35, 4, 200, 100, 0, 0 }, + {1600,1601, 35, 4, 1320, 400, 0, 0 }, + {1602,1603, 35, 4, 706, 266, 0, 0 }, + {1604,1605, 35, 4, 5293, 1786, 0, 0 }, + {1598,1599, 35, 4, 433, 113, 0, 0 }, + { 374, 375, 35, 4, 40000, 0, 0, 0 }, + {1566,1567, 35, 4, 40000, 0, 0, 0 }, + {2306,2307, 35, 4, 8213, 2086, 0, 0 }, + {3034, 339, 35, 4, 5860, 426, 0, 0 }, + {2305,1548, 35, 4, 346, 146, 0, 0 }, {1595,1595, 35, 0, 220, 273, 0, 0 }, - {2303,2304, 35, 4, 146, 26, 0, 0 }, - {1560,2308, 35, 4, 353, 233, 0, 0 }, - {2309,2310, 35, 4, 2013, 433, 0, 0 }, + {2303,2304, 35, 4, 400, 20, 0, 0 }, + {1560,2308, 35, 4, 620, 420, 0, 0 }, + {2309,2310, 35, 4, 40000, 0, 0, 0 }, {1568,1568, 35, 0, 1280, 453, 0, 0 }, - {2311,2312, 35, 4, 346, 146, 0, 0 }, - {2313,2314, 35, 4, 633, 240, 0, 0 }, + {2311,2312, 35, 4, 386, 246, 0, 0 }, + {2313,2314, 35, 4, 666, 400, 0, 0 }, {2315,2315, 35, 0, 106, 46, 0, 0 }, {2316,2316, 35, 0, 506, 453, 0, 0 }, {1612,1612, 35, 0, 526, 400, 0, 0 }, @@ -7903,14 +7903,14 @@ const struct adlinsdata adlins[4920] = {2321,2321, 35, 0, 120, 26, 0, 0 }, {2322,2322, 35, 0, 1220, 406, 0, 0 }, {2323,2323, 35, 0, 2360, 786, 0, 0 }, - {2324, 392, 35, 4, 180, 46, 0, 0 }, - {2324, 393, 35, 4, 460, 66, 0, 0 }, - {2325,2326, 35, 4, 533, 133, 0, 0 }, - {2327,2328, 35, 4, 1273, 406, 0, 0 }, - {2329,2330, 35, 4, 613, 773, 0, 0 }, - {2331,2332, 35, 4, 2340, 780, 0, 0 }, - {3035,3036, 35, 4, 1193, 433, 0, 0 }, - {3037,3038, 35, 4, 1840, 340, 0, 0 }, + {2324, 392, 35, 4, 353, 146, 0, 0 }, + {2324, 393, 35, 4, 353, 146, 0, 0 }, + {2325,2326, 35, 4, 513, 133, 0, 0 }, + {2327,2328, 35, 4, 1366, 406, 0, 0 }, + {2329,2330, 35, 4, 40000, 0, 0, 0 }, + {2331,2332, 35, 4, 613, 393, 0, 0 }, + {3035,3036, 35, 4, 4640, 426, 0, 0 }, + {3037,3038, 35, 4, 1773, 306, 0, 0 }, {1564,1564, 35, 0, 713, 273, 0, 0 }, {3039,3039, 0, 0, 40000, 0, 0, 0 }, {3040,3040, 0, 0, 6100, 146, 0, 0 }, @@ -8237,24 +8237,24 @@ const struct adlinsdata adlins[4920] = {3355,3355, 0, 0, 953, 13, 0, 0 }, {3356,3356, 0, 0, 293, 20, 0, 0 }, { 142, 142, 20, 0, 1893, 620, 0, 0 }, - {3357,1451, 0, 4, 2340, 780, 0, 0 }, - {3358,3359, 0, 4, 9206, 240, 0, 0 }, + {3357,1451, 0, 4, 2353, 806, 0, 0 }, + {3358,3359, 0, 4, 4660, 240, 0, 0 }, {3360,1455, 0, 4, 40000, 0, 0, 0 }, {3361,1463, 0, 4, 40000, 266, 0, 0 }, - { 225,3362, 0, 4, 7993, 100, 0, 0 }, - {3363,1545, 0, 4, 293, 86, 0, 0 }, - {3364,1547, 0, 4, 40000, 180, 0, 0 }, - {3365,3366, 39, 4, 66, 26, 0, 0 }, - {3367, 368, 58, 4, 173, 93, 0, 0 }, + { 225,3362, 0, 4, 15920, 106, 0, 0 }, + {3363,1545, 0, 4, 1000, 320, 0, 0 }, + {3364,1547, 0, 4, 40000, 186, 0, 0 }, + {3365,3366, 39, 4, 613, 226, 0, 0 }, + {3367, 368, 58, 4, 386, 160, 0, 0 }, {3368,1551, 48, 4, 520, 200, 0, 0 }, - {3368,3033, 49, 4, 53, 26, 0, 0 }, - {3368,3033, 51, 4, 53, 26, 0, 0 }, - {3368,3033, 54, 4, 60, 26, 0, 0 }, - {3368,3033, 57, 4, 60, 26, 0, 0 }, - {3368,3033, 60, 4, 60, 26, 0, 0 }, - {3369,3370, 70, 4, 773, 306, 0, 0 }, + {3368,3033, 49, 4, 520, 200, 0, 0 }, + {3368,3033, 51, 4, 513, 206, 0, 0 }, + {3368,3033, 54, 4, 506, 200, 0, 0 }, + {3368,3033, 57, 4, 506, 200, 0, 0 }, + {3368,3033, 60, 4, 500, 193, 0, 0 }, + {3369,3370, 70, 4, 3066, 1033, 0, 0 }, {1564,1565, 80, 4, 220, 106, 0, 0 }, - {3371,1571, 44, 4, 413, 93, 0, 0 }, + {3371,1571, 44, 4, 1873, 653, 0, 0 }, {3372,3372, 0, 0, 8366, 666, 0, 0 }, {3373,3373, 0, 0, 8366, 666, 0, 0 }, {3374,3374, 0, 0, 3773, 73, 0, 0 }, @@ -8986,73 +8986,73 @@ const struct adlinsdata adlins[4920] = { 169, 169, 68, 0, 340, 320, 0, 0 }, { 131, 131, 48, 0, 520, 200, 0, 0 }, {3061,3061, 53, 0, 40000, 0, 0, 0 }, - {3993,3994, 0, 4, 2133, 333, 0, 0 }, - {3995,3996, 0, 4, 8966, 393, 0, 0 }, - { 174,3997, 0, 4, 6946, 320, 0, 0 }, - {3998,3999, 0, 4, 9320, 133, 0, 0 }, - { 9,4000, 0, 4, 1606, 426, 0, 0 }, - {4001,4002, 0, 4, 18373, 240, 0, 0 }, + {3993,3994, 0, 4, 2386, 420, 0, 0 }, + {3995,3996, 0, 4, 4520, 400, 0, 0 }, + { 174,3997, 0, 4, 3706, 100, 0, 0 }, + {3998,3999, 0, 4, 40000, 160, 0, 0 }, + { 9,4000, 0, 4, 7286, 4713, 0, 0 }, + {4001,4002, 0, 4, 17946, 226, 0, 0 }, {4003,4004, 0, 1, 7440, 1100, 0, 0.0625 }, - { 15,4005, 0, 4, 5640, 1986, 0, 0 }, + { 15,4005, 0, 4, 1166, 400, 0, 0 }, {4006,4007, 0, 4, 40000, 100, 0, 0 }, {4008,4009, 0, 4, 40000, 73, 0, 0 }, - {4010,4011, 0, 4, 40000, 73, 0, 0 }, - {4012,4013, 0, 4, 40000, 73, 0, 0 }, - {4014,4015, 0, 4, 18186, 153, 0, 0 }, - {4016,4017, 0, 4, 18453, 153, 0, 0 }, - { 31,4018, 0, 4, 40000, 0, 0, 0 }, - {4019,4020, 0, 4, 17886, 100, 0, 0 }, + {4010,4011, 0, 4, 40000, 413, 0, 0 }, + {4012,4013, 0, 4, 40000, 146, 0, 0 }, + {4014,4015, 0, 4, 9386, 73, 0, 0 }, + {4016,4017, 0, 4, 10493, 160, 0, 0 }, + { 31,4018, 0, 4, 18226, 100, 0, 0 }, + {4019,4020, 0, 4, 40000, 0, 0, 0 }, {4021,4022, 0, 4, 40000, 66, 0, 0 }, {4023,4022, 0, 4, 40000, 66, 0, 0 }, - {4024,4025, 0, 4, 40000, 46, 0, 0 }, - {4026,4027, 0, 4, 18553, 106, 0, 0 }, - {4028,4027, 0, 4, 18460, 106, 0, 0 }, - {4029,4030, 0, 4, 9366, 106, 0, 0 }, - {4031,4032, 0, 4, 9073, 226, 0, 0 }, - {4033,4034, 0, 4, 40000, 140, 0, 0 }, - {4035,4036, 0, 4, 40000, 800, 0, 0 }, - { 54,4037, 0, 4, 2513, 706, 0, 0 }, - {4038,4039, 0, 4, 40000, 86, 0, 0 }, + {4024,4025, 0, 4, 40000, 33, 0, 0 }, + {4026,4027, 0, 4, 993, 146, 0, 0 }, + {4028,4027, 0, 4, 1053, 146, 0, 0 }, + {4029,4030, 0, 4, 40000, 0, 0, 0 }, + {4031,4032, 0, 4, 2233, 240, 0, 0 }, + {4033,4034, 0, 4, 40000, 1313, 0, 0 }, + {4035,4036, 0, 4, 40000, 433, 0, 0 }, + { 54,4037, 0, 4, 1060, 380, 0, 0 }, + {4038,4039, 0, 4, 40000, 113, 0, 0 }, {4040,4040, 0, 0, 40000, 126, 0, 0 }, - {4041,4042, 0, 4, 40000, 233, 0, 0 }, - {4043, 253, 0, 4, 40000, 66, 0, 0 }, + {4041,4042, 0, 4, 40000, 73, 0, 0 }, + {4043, 253, 0, 4, 40000, 233, 0, 0 }, {4044,4045, 0, 4, 40000, 0, 0, 0 }, {4046,4047, 0, 4, 40000, 126, 0, 0 }, - {4048,4049, 0, 4, 40000, 80, 0, 0 }, - {4050,4051, 0, 4, 40000, 73, 0, 0 }, + {4048,4049, 0, 4, 40000, 240, 0, 0 }, + {4050,4051, 0, 4, 40000, 133, 0, 0 }, {4052,4053, 0, 1, 40000, 86, 0, 0.046875 }, - {4054,4055, 0, 4, 40000, 86, 0, 0 }, - {1503,4056, 0, 4, 40000, 93, 0, 0 }, - { 88,4057, 0, 4, 40000, 1220, 0, 0 }, - {3743,4058, 0, 4, 7646, 1260, 0, 0 }, - { 92,4059, 0, 4, 40000, 186, 0, 0 }, - { 93,4060, 0, 4, 40000, 813, 0, 0 }, - { 94,4061, 0, 4, 7660, 1260, 0, 0 }, - { 96,4062, 0, 4, 40000, 2460, 0, 0 }, - {4063,4064, 0, 4, 40000, 420, 0, 0 }, - { 103,4065, 0, 4, 3673, 1240, 0, 0 }, + {4054,4055, 0, 4, 40000, 73, 0, 0 }, + {1503,4056, 0, 4, 40000, 0, 0, 0 }, + { 88,4057, 0, 4, 40000, 1373, 0, 0 }, + {3743,4058, 0, 4, 40000, 0, 0, 0 }, + { 92,4059, 0, 4, 40000, 86, 0, 0 }, + { 93,4060, 0, 4, 40000, 286, 0, 0 }, + { 94,4061, 0, 4, 40000, 140, 0, 0 }, + { 96,4062, 0, 4, 40000, 1220, 0, 0 }, + {4063,4064, 0, 4, 6933, 380, 0, 0 }, + { 103,4065, 0, 4, 9086, 226, 0, 0 }, {4066,4067, 0, 1, 6286, 380, 0, 0 }, {4068,4069, 0, 1, 2220, 426, 0, 0.03125 }, - { 107,4070, 0, 4, 2086, 760, 0, 0 }, + { 107,4070, 0, 4, 1180, 406, 0, 0 }, {4071,4072, 0, 1, 40000, 100, 0, 0.0625 }, - { 110,4073, 0, 4, 40000, 100, 0, 0 }, - { 111,4074, 0, 4, 2300, 820, 0, 0 }, - {4075,4076, 0, 4, 1013, 326, 0, 0 }, + { 110,4073, 0, 4, 40000, 73, 0, 0 }, + { 111,4074, 0, 4, 4606, 413, 0, 0 }, + {4075,4076, 0, 4, 633, 233, 0, 0 }, {4077,4078, 0, 1, 1220, 393, 0, 0.03125 }, - { 115,4079, 0, 4, 1813, 646, 0, 0 }, + { 115,4079, 0, 4, 4553, 1480, 0, 0 }, {4080,4081, 0, 1, 566, 146, 0, 0 }, - { 118,4082, 0, 4, 1553, 53, 0, 0 }, + { 118,4082, 0, 4, 3020, 73, 0, 0 }, {4083,4083, 0, 0, 613, 60, 0, 0 }, - { 120,4084, 0, 4, 2126, 1166, 0, 0 }, + { 120,4084, 0, 4, 2466, 620, 0, 0 }, {4085,4086, 0, 1, 11880, 2993, 0, 0 }, - { 123,4087, 0, 4, 7080, 2473, 0, 0 }, - { 124,4088, 0, 4, 40000, 1126, 0, 0 }, - { 125,4089, 0, 4, 40000, 1546, 0, 0 }, + { 123,4087, 0, 4, 1000, 320, 0, 0 }, + { 124,4088, 0, 4, 380, 60, 0, 0 }, + { 125,4089, 0, 4, 40000, 200, 0, 0 }, {4090,4090, 34, 0, 133, 40, 0, 0 }, {4091,4091, 28, 0, 193, 46, 0, 0 }, {4092,4093, 39, 1, 553, 126, 0, 0 }, {4092,4093, 33, 1, 553, 126, 0, 0 }, - {4094,4095, 63, 4, 166, 93, 0, 0 }, + {4094,4095, 63, 4, 126, 66, 0, 0 }, {4096,4096, 15, 0, 113, 66, 0, 0 }, {4097,4097, 36, 0, 106, 53, 0, 0 }, {4097,4098, 36, 1, 480, 173, 0, 0.40625 }, @@ -9063,7 +9063,7 @@ const struct adlinsdata adlins[4920] = {4106,4106, 48, 0, 180, 86, 0, 0 }, {4107,4108, 48, 1, 953, 346, 0, -1.90625 }, {4109,4109, 61, 1, 3200, 540, 0, 0.09375 }, - {3369,1557, 70, 4, 766, 306, 0, 0 }, + {3369,1557, 70, 4, 3066, 1033, 0, 0 }, {4110,4111, 79, 1, 1306, 513, 0, 0.078125 }, {4112,4112, 62, 0, 5200, 466, 0, 0 }, {4113,4114, 67, 1, 2153, 1080, 0, 0.078125 }, @@ -9078,7 +9078,7 @@ const struct adlinsdata adlins[4920] = {4123,4124, 68, 1, 153, 40, 0, 0 }, {4125,4126, 18, 1, 200, 80, 0, 0 }, {4127,4128, 18, 1, 253, 73, 0, 0 }, - {4129,4130, 64, 4, 1346, 33, 0, 0 }, + {4129,4130, 64, 4, 2666, 73, 0, 0 }, {4131,4132, 64, 1, 373, 73, 0, 0.03125 }, {4133,4133, 67, 0, 106, 26, 0, 0 }, { 844, 844,244, 2, 6, 0, 0, 0 }, @@ -9776,7 +9776,7 @@ const unsigned short banks[76][256] = 232, 233, 234, 235, 236, 237, 238, 239, 71, 72, 240, 241, 242, 243, 244, 245, 246, 247, 248, 82, 249, 250, 251, 86, 252, 253, 254, 255, 91, 92, 256, 257, 258, 259, 260, 98, 99, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, - 111, 272, 273, 274, 115, 275, 276, 277, 278, 120, 279, 280, 281, 282, 295, 284, + 111, 272, 273, 274, 115, 275, 276, 277, 278, 120, 279, 280, 281, 282, 283, 284, 127, 132, 285, 286, 127, 287, 288, 289, 290, 291, 292, 127, 127, 293, 294, 295, 289, 296, 297, 296, 297, 298, 299, 300, 301, 302, 303, 304, 305, 306, 307, 308, 309, 310, 311, 312, 313, 314, 315, 316, 317, 318, 319, 318, 320, 318, 321, 318, @@ -10021,13 +10021,13 @@ const unsigned short banks[76][256] = 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, }, { -1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237, -1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1376,1377,1253, -1378,1255,1256,1379,1380,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269, -1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1381,1281,1282,1283,1284,1285, +1222,1223,1376,1376,1226,1376,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237, +1238,1239,1376,1241,1242,1376,1244,1376,1246,1247,1248,1249,1250,1376,1377,1253, +1378,1255,1256,1379,1380,1259,1260,1261,1262,1263,1264,1265,1381,1267,1268,1269, +1381,1381,1272,1381,1381,1275,1276,1381,1278,1279,1381,1281,1382,1382,1382,1382, 1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301, -1302,1303,1304,1305,1306,1307,1308,1309,1309,1310,1311,1312,1313,1314,1315,1316, -1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332, +1382,1382,1304,1382,1306,1382,1382,1309,1309,1382,1311,1382,1313,1314,1382,1316, +1317,1382,1319,1382,1382,1322,1323,1324,1325,1326,1382,1328,1329,1330,1331,1332, 1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, @@ -10039,13 +10039,13 @@ const unsigned short banks[76][256] = 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, }, { -1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237, -1238,1239,1240,1241,1242,1243,1244,1245,1246,1247,1248,1249,1250,1385,1252,1253, -1386,1255,1256,1379,1380,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,1269, -1270,1271,1272,1273,1274,1275,1276,1277,1278,1279,1381,1281,1282,1283,1284,1285, +1222,1223,1385,1385,1226,1385,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237, +1238,1239,1385,1241,1242,1385,1244,1385,1246,1247,1248,1249,1250,1385,1252,1253, +1386,1255,1256,1379,1387,1259,1260,1261,1262,1263,1264,1265,1387,1267,1268,1269, +1387,1387,1272,1387,1387,1275,1276,1387,1278,1279,1381,1281,1387,1387,1387,1387, 1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301, -1302,1303,1304,1305,1306,1307,1308,1309,1309,1310,1311,1312,1313,1314,1315,1316, -1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332, +1387,1387,1304,1387,1306,1387,1387,1309,1309,1387,1311,1387,1313,1314,1387,1316, +1317,1387,1319,1387,1387,1322,1323,1324,1325,1326,1387,1328,1329,1330,1331,1332, 1333,1334,1335,1336,1337,1338,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, @@ -10111,14 +10111,14 @@ const unsigned short banks[76][256] = 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, }, { -1551,1552,1553,1554, 181, 182, 183,1555, 185,1556,1557,1558,1559, 188, 189,1560, -1561,1562,1563,1564,1565, 195, 196, 197, 198, 199, 200, 201, 202,1566,1567, 205, - 206, 207, 208,1568,1569,1570,1571, 211,1572,1573, 214, 215, 216, 217, 218, 219, - 220, 221,1574,1575,1576,1577,1578, 225,1579,1580, 226,1581,1582, 229, 230, 231, - 232, 233, 234, 235,1583, 237, 238, 239,1584,1585, 240,1586, 242, 243, 244,1587, - 246, 247,1588,1589, 249, 250, 251,1590, 252, 253, 254, 255,1591,1592,1593,1594, -1595, 259,1596,1597,1598,1599,1600,1601, 264, 265, 266, 267, 268, 269, 270, 271, -1602, 272, 273,1603,1604,1605, 276,1606,1607, 295, 295,1610,1611,1612, 295, 284, +1551,1552,1553,1554,1555,1555,1555,1555,1556,1556,1557,1558,1559,1560,1560,1560, +1561,1562,1563,1564,1565,1566,1566,1566,1566,1566,1566,1566,1566,1566,1567,1568, +1568,1568,1568,1568,1569,1570,1571,1572,1572,1573,1574,1574,1574,1574,1574,1574, +1574,1574,1574,1575,1576,1577,1578,1579,1579,1580,1581,1581,1582,1583,1583,1583, +1583,1583,1583,1583,1583,1584,1584,1584,1584,1585,1586,1586,1587,1587,1587,1587, +1588,1588,1588,1589,1590,1590,1590,1590,1591,1591,1591,1591,1591,1592,1593,1594, +1595,1596,1596,1597,1598,1599,1600,1601,1602,1602,1602,1602,1602,1602,1602,1602, +1602,1603,1603,1603,1604,1605,1606,1606,1607,1608,1609,1610,1611,1612,1613,1613, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 127, 127,1613,1614,1615,1616,1617,1618,1619,1620,1621,1622,1623, @@ -10309,20 +10309,20 @@ const unsigned short banks[76][256] = 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, }, { -1551,1552,1553,1554,2271, 182, 183,1555,2272,1556,1557,2273,1559, 188,2274,1560, -1561,1562,1563,1564,1565, 195, 196, 197, 198, 199, 200, 201, 202,1566,1567, 205, - 206, 207, 208,1568,1569,1570,1571, 211,1572,1573, 214, 215, 216, 268,2275,2276, -2277,2277,2278,1575,1576,1577,1578, 225,1579,1580, 226,1581,2279,2280, 230, 254, - 232, 233, 234, 235,2281, 237, 238, 239,1584,1585,2282,1586, 242, 243, 244,1587, - 246, 247,1588,1589, 249, 250, 251,1590,2283, 253, 254, 255,1591,1592,1593,1594, -1595, 259,1596,1597,1598,1599,1600,1601, 264, 265, 266, 267, 268, 269, 270, 271, -1602, 272, 273,1603,1604,1605, 276,1606,1607, 295, 295,1610,1611,1612, 295, 284, +2271,2271,2271,2271,2271,2272,2272,2272,2272,2273,2273,2273,2274,2274,2274,2275, +2275,2275,2275,2275,2275,2275,2275,2275,2275,2275,2275,2275,2275,2275,2275,2275, +2275,2275,2275,2275,2275,2275,2275,2275,2275,2275,2275,2275,2275,2275,2275,2276, +2277,2278,2278,2279,2279,2279,2279,2279,2279,2279,2279,2279,2279,2280,2281,2281, +2281,2281,2281,2281,2281,2282,2282,2282,2282,2282,2282,2283,2283,2283,2283,2283, +2283,2283,2283,2283,2283,2283,2283,2283,2283,2284,2284,2284,2284,2284,2284,2284, +2284,2284,2284,2284,2284,2284,2284,2284,2284,2284,2284,2284,2284,2284,2284,2284, +2284,2284,2284,2284,2284,2284,2284,2284,2284,2284,2284,2284,2284,2284,2284,2284, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,2284, - 295, 295, 295,2284,2285,2286,1614,1615,2287,2288,1618,1619,1620,1621,1622,1623, -1624,1625,1626,2289,2290,1629,1630,1631,2291,1633,2292,2293,2294,2295,1638,1639, -1640,1641,1642,1643,1644,1645,1646,1647,1648,2296,2297,1651,1652,1653,1654,1655, -1656,1657,2298,2299,2300,1661,1662,1663, 295, 295, 295, 295, 295, 295, 295, 295, + 295, 295, 295,2284,2285,2286,2287,2287,2287,2288,2289,2289,2289,2289,2289,2289, +2289,2289,2289,2289,2290,2291,2291,2291,2291,2292,2292,2293,2294,2295,2296,2296, +2296,2296,2296,2296,2296,2296,2296,2296,2296,2296,2297,2298,2298,2298,2298,2298, +2298,2298,2298,2299,2300,2301,2301,2301, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, }, @@ -10399,17 +10399,17 @@ const unsigned short banks[76][256] = 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, }, { -1551,1552,1553,1554, 181, 182, 183,1555, 185,1556,1557,1558,1559, 188, 189,1560, -1561,1562,1563,1564,1565, 195, 196, 197, 198, 199, 200, 201, 202,1566,1567, 205, - 206, 207, 208,1568,1569,1570,1571, 211,1572,1573, 214, 215, 216, 217, 218, 219, - 220, 221,1574,1575,1576,1577,1578, 225,1579,1580, 226,1581,1582, 229, 230, 231, - 232, 233, 234, 235,1583, 237, 238, 239,1584,1585, 240,1586, 242, 243, 244,1587, - 246, 247,1588,1589, 249, 250, 251,1590, 252, 253, 254, 255,1591,1592,1593,1594, -1595, 259,1596,1597,1598,1599,1600,1601, 264, 265, 266, 267, 268, 269, 270, 271, -1602, 272, 273,1603,1604,1605, 276,1606,1607, 295, 295,1610,1611,1612, 295, 284, +2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430, +2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430, +2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430, +2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430, +2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430, +2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430, +2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430, +2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430,2430, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, - 295, 295, 295,2430,2430,2431,2432,2433,2434,2435,2436,2437,2436,2438,2436,2439, + 295, 295, 295,2430,2431,2431,2432,2433,2434,2435,2436,2437,2438,2438,2439,2439, 2440,2441,2442,2443,2444,2445,2446,2447,2448,2449,2450,2451,2452,2453,2454,2455, 2456,2457,2458,2459,2460,2461,2462,2463,2464,2465,2466,2467,2468,2469,2470,2471, 2472,2473,2474,2475,2476,2468,2477,2478, 295, 295, 295, 295, 295, 295, 295, 295, @@ -10435,20 +10435,20 @@ const unsigned short banks[76][256] = 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, }, { -1551,1552,1553,1554, 181, 182, 183,1555, 185,1556,1557,1558,1559, 188, 189,1560, -1561,1562,1563,1564,1565, 195, 196, 197, 198, 199, 200, 201, 202,1566,1567, 205, - 206, 207, 208,1568,1569,1570,1571, 211,1572,1573, 214, 215, 216, 217, 218, 219, - 220, 221,1574,1575,1576,1577,1578, 225,1579,1580, 226,1581,1582, 229, 230, 231, - 232, 233, 234, 235,1583, 237, 238, 239,1584,1585, 240,1586, 242, 243, 244,1587, - 246, 247,1588,1589, 249, 250, 251,1590, 252, 253, 254, 255,1591,1592,1593,1594, -1595, 259,1596,1597,1598,1599,1600,1601, 264, 265, 266, 267, 268, 269, 270, 271, -1602, 272, 273,1603,1604,1605, 276,1606,1607, 295, 295,1610,1611,1612, 295, 284, +2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501, +2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501, +2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501, +2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501, +2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501, +2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501, +2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501, +2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, - 295, 295, 295, 127, 127,2286,1614,1615,1616,2288,1618,1619,1620,1621,1622,1623, -1624,1625,1626,2289,2290,1629,1630,1631,2291,1633,2292,2293,2294,2295,1638,1639, -1640,1641,1642,1643,1644,1645,1646,1647,1648,2296,2297,1651,1652,1653,1654,1655, -1656,1657,2298,2299,2300,1661,1662,1663, 295, 295, 295, 295, 295, 295, 295, 295, + 295, 295, 295, 127, 127,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501, +2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501, +2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501,2501, +2501,2501,2501,2501,2501,2501,2501,2501, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, }, @@ -10543,14 +10543,14 @@ const unsigned short banks[76][256] = 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, }, { -1551,1552,2740,2741, 181, 182, 183,2742,2743,2744, 186,1558,2745,2746,2747, 190, - 191, 192,2748,1564,2749,2750, 196, 197, 198, 199, 200,2751, 202,2752,2753,2754, -2755,2756,2757,2758,2759,2760, 210,2761,1572,2762,2763, 215,2764,2765, 218,2766, -2767,2768,1574, 50,2769,2770,1578,2771,2772,2773,2774,2775,2776,2777, 59,2778, -2779,2780,2781, 235, 236,2782,2783,2784,2785,2786, 240,2787, 242,2788, 244,1587, -2789,2790,2791,1589, 249,2792,2793,2794, 252,2795,2796, 255,2797,2798,2799,1594, -2800,2801,1596,2802,1598,2803,2804,1601, 264, 265,2805,2806, 268, 269, 270, 271, -1602, 272, 273,2807,2808,2809, 276,2810,2811,2812,2813,2814,2815,2816,2817,2818, +2740,2740,2740,2741,2742,2742,2742,2742,2743,2744, 186,2745,2745,2746,2747, 190, +2748,2748,2748,2749,2749,2750,2751,2751,2751,2751,2751,2751,2752,2752,2753,2754, +2755,2756,2757,2758,2759,2760, 210,2761,2762,2762,2763,2764,2764,2765,2766,2766, +2767,2768,2769, 50,2769,2770,2771,2771,2772,2773,2774,2775,2776,2777, 59,2778, +2779,2780,2781,2782,2782,2782,2783,2784,2785,2786,2787,2787,2788,2788,2789,2789, +2789,2790,2791,2792,2792,2792,2793,2794,2795,2795,2796,2797,2797,2798,2799,2800, +2800,2801,2802,2802,2803,2803,2804,2805,2805,2805,2805,2806,2807,2807,2807,2807, +2807,2807,2807,2807,2808,2809,2810,2810,2811,2812,2813,2814,2815,2816,2817,2818, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,2819,2820,2821,2822,2823,2824,2825,2826,2827,2828,2829,2830,2831, @@ -10561,14 +10561,14 @@ const unsigned short banks[76][256] = 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, }, { - 203,1566,2857,2858, 181, 182, 183,2859,2860,2861,1557,1558,1559, 188, 189,1560, -1561,1562,2862,1564,1565, 195, 196, 197,2861, 199, 200,2863,2864, 203,2865,2866, -2860,2867,2868,1568,1569,2869,2870, 207,1572,1573, 214, 215, 216, 217, 218,2871, - 220, 221,2872,1575,1576,1577,1578, 225,1579,1580, 226,1581,1582, 229, 230, 231, - 232, 233, 234, 235,1583, 237, 238, 239,1584,1585, 240,2873, 242, 243, 244,2874, - 246, 247,1588,1589, 249,2875,2876,2877,2878, 253, 254, 255,1591,1592,1593,2879, -1595, 259,1596,2880,1598,1599,1600,1601, 264, 265, 266,2881, 268, 108, 270,2859, -2882,2883, 273,1603,1604,1605, 276,2884,2885,2886, 295,1610,2887,1612,2888, 284, +2857,2857,2857,2858,2859,2859,2859,2859,2860,2861,2862,2862,2862,2862,2862,2862, +2862,2862,2862,2863,2863,2863,2863,2863,2863,2863,2863,2863,2864,2865,2865,2866, +2867,2867,2868,2869,2869,2869,2870,2871,2871,2871,2871,2871,2871,2871,2871,2871, +2872,2872,2872,2873,2873,2873,2873,2873,2873,2873,2873,2873,2873,2873,2873,2873, +2873,2873,2873,2873,2873,2873,2873,2873,2873,2873,2873,2873,2874,2874,2874,2874, +2875,2875,2875,2875,2875,2875,2876,2877,2878,2879,2879,2879,2879,2879,2879,2879, +2880,2880,2880,2880,2881,2881,2881,2881,2881,2881,2881,2881,2882, 108,2882,2882, +2882,2883,2884,2884,2884,2884,2884,2884,2885,2886,2887,2887,2887,2888,2888,2889, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,2889,2889, 128, 129, 130,2890, 132,2891, 134, 135, 136, 137, 138, @@ -10599,11 +10599,11 @@ const unsigned short banks[76][256] = { 2893,2894,2895,2896,2897,2898,2899,2900,2901,2902,2903,2904,2905,2906,2907,2908, 2909,2910,2911,2912,2913,2914,2915,2916,2917,2918,2919,2920,2921,2922,2923,2924, -2925,2926,2927,2928, 209,2929,2930,2931,2932,2933,2934,2935,2936,2937,2938,2939, -2940,2941,2942,2940,2943,2944,2945,2946,2947,2948,2949,2950,2951,2952,2953, 437, -2954,2955,2956,2957,2958,2959,2960,2961,2962,2306,2963,2964,2965,2550,2966,2967, -2968,2969,2554,2970,2489,2971,2972,2973, 657, 575,2974,2975,2976, 779,2977,2978, -2979,2980,2981,2982,2983,2984,2985,2986,2987,2988,2553,2989,2990,2991,2992,2993, +2925,2926,2927,2928,2929,2929,2930,2931,2932,2933,2934,2935,2936,2937,2938,2939, +2940,2941,2942,2943,2943,2944,2945,2946,2947,2948,2949,2950,2951,2952,2953, 437, +2954,2955,2956,2957,2958,2959,2960,2961,2962,2306,2963,2964,2965,2966,2966,2967, +2968,2969,2970,2970,2971,2971,2972,2973, 657, 575,2974,2975,2976, 779,2977,2978, +2979,2980,2981,2982,2983,2984,2985,2986,2987,2988,2989,2989,2990,2991,2992,2993, 2994,2995, 680, 796,2996, 797,2662,2997,2998,2999,2514,3000,3001,1913,3002,3003, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, @@ -10615,17 +10615,17 @@ const unsigned short banks[76][256] = 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, }, { -2501,2502,2503,2504,2505,2506,2507, 730,2508,2509,2510,2511,2512,2513,2514,2515, +3005,2502,2503,2504,2505,2506,2507, 730,2508,2509,2510,2511,2512,2513,2514,2515, 2516,2517,2518,2519,2520,2521,2522,2523, 639,2524,2525,1512,2526,2527,2527,2527, -2528,2529,2530,2531,2532,2954,2533,2534, 212, 213,2536, 295,2527,2537,2482,2483, -3005,2485,2527,2527,2527,2527,2527,2527,3006,2541,3007,2487,3008, 576, 575,1522, -2544,2527,2527,2527, 224,2545,2546,2547,2548,2308,2549, 241, 295,2550, 295, 295, -2304,3009, 295, 295,2551, 295, 295,3010, 295, 295,3010, 295, 295, 295, 295, 295, - 295, 295, 295,2898, 295, 295, 295, 295, 295, 295,2552,2553, 295, 295, 295,2554, +2528,2529,2530,2531,2532,3005,2533,2534, 212, 213,3005, 295,2527,2537,2482,2483, +3005,2485,2527,2527,2527,2527,2527,2527,3006,3007,3007,2487,3008, 576, 575,1522, +2544,2527,2527,2527, 224,2545,2546,3009,2548,2308,3009, 241, 295,3009, 295, 295, +2304,3009, 295, 295,3010, 295, 295,3010, 295, 295,3010, 295, 295, 295, 295, 295, + 295, 295, 295,3011, 295, 295, 295, 295, 295, 295,3011,3011, 295, 295, 295,3011, 295, 295, 295, 677,2483, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,2493, - 295,2555, 295,2556,2495,2557,2558,2559,2496,2497,2560,2498,2561,2499,2562,2500, + 295,2555, 295,3011,2495,2557,2558,2559,2496,2497,3011,2498,2561,2499,2562,2500, 2563,3011,2565,2527, 295, 295,2566, 295, 295, 295, 295, 295,3012,3013,3014,3015, 3016,3015,3016, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, @@ -10687,13 +10687,13 @@ const unsigned short banks[76][256] = 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, }, { -2501,2502,2503,2504,2505,2506,2507, 730,2508,2509,2510,2511,2512,2513,2514,2515, +3092,2502,2503,2504,2505,2506,2507, 730,2508,2509,2510,2511,2512,2513,2514,2515, 2516,2517,2518,2519,2520,2521,2522,2523, 639,2524,2525,1512,2526,2527,2527,2527, -2528,2529,2530,2531,2532,2532,2533,2534, 212, 213,2536, 295,2527,2537,2482,2483, -3005,2485,2527,2527,2527,2527,2527,2527,3006,2541,3007,2487,3008, 576, 575,1522, -2544,2527,2527,2527, 224,2545,2546,2547,2548,2308,2549,2527, 295,2550, 295, 295, - 295, 295, 295, 295,2551, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, - 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,2552,2553, 295, 295, 295,2554, +2528,2529,2530,2531,2532,2532,2533,2534, 212, 213,3092, 295,2527,2537,2482,2483, +3092,2485,2527,2527,2527,2527,2527,2527,3092,3092,3092,2487,3092, 576, 575,1522, +2544,2527,2527,2527, 224,2545,2546,3092,2548,2308,3092,2527, 295,3092, 295, 295, + 295, 295, 295, 295,3092, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, + 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,3092,3092, 295, 295, 295,3092, 295, 295, 295, 677,2483, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,2493, @@ -10705,38 +10705,38 @@ const unsigned short banks[76][256] = 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, }, { -1551,1552,1553,3101, 181, 182, 183,3102, 185,1556,1557,3103,1559, 188, 189,1560, -1561,1562, 193,1564,1565, 195, 196, 197, 198, 199, 200, 201, 202,1566,1567, 205, - 206, 207, 208,1568,1569,1570,1571, 211,1572,1573, 214, 215, 216, 217, 218, 219, - 220, 221,1574,1575,1576,1577,1578, 225,1579,1580,3100,1581,1582, 229, 230, 231, - 232, 233, 234, 235,1583, 237, 238, 239,1584,1585, 240,1586, 242, 243, 244,1587, - 246, 247,1588,1589, 249, 250, 251,1590, 252, 253, 254, 255,1591,1592,1593,1594, -1595, 259,1596,1597,1598,1599,1600,1601, 264, 265, 266, 267, 268, 269, 270, 271, -1602, 272, 273,1603,1604,1605, 276,1606,1607, 295, 295,1610,3104,3105, 295, 284, - 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, - 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, - 295, 295, 295, 127,3107,3122,3126, 316,3123,3121,3124,3107,3125,3107,3127,3107, -3107, 329,3107,3108,3143,3109,3128,3129,3099,3144,1634,3110,3130,3131,3117,3119, -3136,3132,3133,3134,3137,3115,3138,3135,3098, 343, 344,3112,3113,3113,3142,3139, +3098,3106,3100,3101,3102,3102,3100,3102,3106,3106,3101,3103,3101,3104,3100,3104, +3104,3104,3100,3104,3104,3104,3104,3104,3104,3104,3104,3106,3101,3106,3106,3104, +3101,3104,3104,3106,3106,3104,3104,3104,3101,3100,3104,3100,3100,3106,3100,3101, +3100,3101,3104,3104,3100,3106,3104,3101,3106,3106,3100,3100,3106,3100,3100,3106, +3104,3106,3104,3104,3104,3100,3101,3101,3104,3106,3104,3104,3104,3104,3104,3104, +3104,3104,3104,3104,3104,3104,3104,3104,3106,3104,3104,3104,3101,3106,3106,3104, +3107,3121,3104,3104,3121,3104,3104,3104,3104,3104,3104,3104,3101,3104,3104,3104, +3104,3104,3104,3104,3101,3104,3104,3104,3104,3106,3104,3104,3104,3105,3106,3106, + 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, + 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, + 295, 295, 295, 127,3107,3122,3126,3143,3123,3121,3124,3122,3125,3122,3127,3122, +3122,3143,3122,3108,3143,3109,3128,3129,3099,3144,3136,3110,3130,3131,3117,3119, +3136,3132,3133,3134,3137,3115,3138,3135,3098,3142,3142,3112,3113,3114,3142,3139, 3140,3141,3116,3106,3111,3114,3118,3120, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, }, { -1551,1552,1553,3101, 181, 182, 183,3102, 185,1556,1557,3103,1559, 188, 189,1560, -1561,1562, 193,1564,1565, 195, 196, 197, 198, 199, 200, 201, 202,1566,1567, 205, - 206, 207, 208,1568,1569,1570,1571, 211,1572,1573, 214, 215, 216, 217, 218, 219, - 220, 221,1574,1575,1576,1577,1578, 225,1579,1580,3100,1581,1582, 229, 230, 231, - 232, 233, 234, 235,1583, 237, 238, 239,1584,1585, 240,1586, 242, 243, 244,1587, - 246, 247,1588,1589, 249, 250, 251,1590, 252, 253, 254, 255,1591,1592,1593,1594, -1595, 259,1596,1597,1598,1599,1600,1601, 264, 265, 266, 267, 268, 269, 270, 271, -1602, 272, 273,1603,1604,1605, 276,1606,1607, 295, 295,1610,3104,3105, 295, 284, - 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, - 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, - 295, 295, 295,2430,2430,3149,3147,3148,3147,3145,3145,3145,3145,3145,3145,3145, -3145,3145,3145,3145,3145,3145,3150,3151,3173, 329,3152, 329,3153,3154,3155,3156, +3145,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174, +3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174, +3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174, +3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174, +3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174, +3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174, +3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174, +3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174,3174, + 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, + 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, + 295, 295, 295,3147,3147,3149,3147,3148,3148,3145,3146,3146,3146,3146,3146,3146, +3146,3146,3146,3146,3146,3146,3150,3151,3173,3146,3152,3146,3153,3154,3155,3156, 3157,3158,3159,3160,3161, 349,3162,3163,3164,3165,3166,3148,3148,3148,3167,3168, -3169,3170, 349,3171,3172,3148,3155,3156, 295, 295, 295, 295, 295, 295, 295, 295, +3169,3170, 349,3171,3172,3148,3155,3156,3146, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, }, @@ -10813,20 +10813,20 @@ const unsigned short banks[76][256] = 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, }, { -1551,1552,1553,1554, 181, 182, 183,1555, 185,1556,3499,3500,3501, 188, 189,1560, -1561,1562,1563,3502,1565, 195, 196, 197, 198, 199, 200, 201, 202,1566,1567, 205, - 206, 207, 208,1568,1569,1570,1571,3503,1572,1573, 214, 215, 216, 217, 218, 219, - 220, 221,1574,1575,1576,1577,1578, 225,1579,1580, 226,1581,1582, 229, 230, 231, - 232, 233, 234, 235,1583, 237, 238, 239,1584,1585, 240,1586, 242, 243, 244,1587, - 246, 247,1588,1589, 249, 250, 251,1590, 252, 253, 254, 255,1591,1592,1593,1594, -1595, 259,1596,1597,1598,1599,1600,1601, 264, 265, 266, 267, 268, 269, 270, 271, -1602, 272, 273,1603,1604,1605, 276,1606,1607, 295, 295,1610,3504,3505, 295, 284, - 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, - 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, - 295, 295, 295, 127,3506,1613,1614,3507,1616,3508,1618,3509,1620,3510,1622,3511, -3512,1625,3513,3514,1628,1629,1630,1631,3515,1633,1634,3516,1636,1637,1638,1639, -1640,1641,1642,1643,1644,1645,1646,1647,1648,1649,1650,1651,1652,1653,1654,1655, -1656,1657,1658,1659,1660,1661,1662,1663, 295, 295, 295, 295, 295, 295, 295, 295, +3499,3499,3499,3499,3499,3499,3499,3499,3499,3499,3499,3500,3501,3502,3502,3502, +3502,3502,3502,3502,3503,3503,3503,3503,3503,3503,3503,3503,3503,3503,3503,3503, +3503,3503,3503,3503,3503,3503,3503,3503,3504,3504,3504,3504,3504,3504,3504,3504, +3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504, +3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504, +3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504, +3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504, +3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3504,3505,3506,3506, + 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, + 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, + 295, 295, 295, 127,3506,3507,3507,3507,3508,3508,3509,3509,3510,3510,3511,3511, +3512,3513,3513,3514,3515,3515,3515,3515,3515,3516,3516,3516,3517,3517,3517,3517, +3517,3517,3517,3517,3517,3517,3517,3517,3517,3517,3517,3517,3517,3517,3517,3517, +3517,3517,3517,3517,3517,3517,3517,3517, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, }, @@ -10903,13 +10903,13 @@ const unsigned short banks[76][256] = 3998,3998,3998,3998,3998,3998,3998,3998,3998,3998,3998,3998,3998,3998,3998,3998, }, { -1222,1223,1224,1225,1226,1227,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237, -1238,1239,1240,1241,1242,1243,1244,1245,3999,4000,4001,1249,1250,1376,1377,1253, -1378,1255,1256,4002,1380,1259,1260,1261,1262,1263,1264,1265,1266,1267,1268,4003, -1270,4004,4005,4006,4007,1275,1276,1277,1278,1279,1381,1281,1282,1283,1284,1285, +1222,1223,3999,3999,1226,3999,1228,1229,1230,1231,1232,1233,1234,1235,1236,1237, +1238,1239,3999,1241,1242,3999,1244,3999,3999,4000,4001,1249,1250,1376,1377,1253, +1378,1255,1256,4002,4003,1259,1260,1261,1262,1263,1264,1265,4003,1267,1268,4003, +4004,4004,4005,4006,4007,1275,1276,4008,1278,1279,1381,1281,4008,4008,4008,4008, 1286,1287,1288,1289,1290,1291,1292,1293,1294,1295,1296,1297,1298,1299,1300,1301, -1302,1303,1304,1305,4008,1307,1308,1309,1309,1310,1311,1312,1313,1314,1315,1316, -1317,1318,1319,1320,1321,1322,1323,1324,1325,1326,1327,1328,1329,1330,1331,1332, +4008,4008,1304,4008,4008,4009,4009,1309,1309,4009,1311,4009,1313,1314,4009,1316, +1317,4009,1319,4009,4009,1322,1323,1324,1325,1326,4009,1328,1329,1330,1331,1332, 1333,1334,1335,1336,1337,4009,1339,1340,1341,1342,1343,1344,1345,1346,1347,1348, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, @@ -10975,20 +10975,20 @@ const unsigned short banks[76][256] = 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, }, { -4248,4249,1553,1554, 181,4250,4251,1555, 185,4252,3499,4253,1559, 188,4254,4255, -4256,1562,4257,4258,1565, 195,4259, 197,4260,4261, 200, 201, 28,1566,1567,4262, -4263,4264,4265,4266,4267,4268,4269,4270,1572,1573, 214, 215, 216, 217, 218, 219, - 220,4271,4272,1575,1576,3854,1578,4273,1579,1580,4274,4275,4276,4277,4278,4279, - 232, 233, 234, 235,4280, 237, 238,4281,1584,1585, 240,1586,4282, 243, 244,1587, - 246,4283,4284,1589, 249, 250, 251,1590, 252,4285, 254,3891,4286,4287,4288,4289, -1595,4290,1596,1597,4291,1599,1600,1601,4292,4293,4294, 267,4295,4296, 270,4297, -4298,4299,4300,1603,4301,4302, 276,4303,4304,4305,4306,1610,4307,4308,4309, 126, - 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,1662,1663, 295, +4248,4249,4250,4250,4250,4250,4251,4252,4252,4252,4253,4253,4254,4254,4254,4255, +4256,4257,4257,4258,4259,4259,4259,4260,4260,4261,4262,4262, 28,4262,4262,4262, +4263,4264,4265,4266,4267,4268,4269,4270,4271,4271,4271,4271,4271,4271,4271,4271, +4271,4271,4272,4273,4273,3854,4273,4273,4274,4274,4274,4275,4276,4277,4278,4279, +4280,4280,4280,4280,4280,4281,4281,4281,4282,4282,4282,4282,4282,4283,4283,4283, +4283,4283,4284,4285,4285,4285,4285,4285,4285,4285,4286,3891,4286,4287,4288,4289, +4290,4290,4291,4291,4291,4292,4292,4292,4292,4293,4294,4295,4295,4296,4297,4297, +4298,4299,4300,4301,4301,4302,4303,4303,4304,4305,4306,4307,4307,4308,4309, 126, + 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,4310,4310, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,4310,4311,4312,4313,4314, -4315,4316,4317,4318,1470,1613,4319,1615,4320,1475,4321,1477,4322,1479,4323,1481, -1482,4324,1484,4325,4326,4327,1630,4328,2291,4329,1634,3516,1636,1637,1638,1639, -1640,4330,4331,1643,1644, 320,4332,4333, 342,4334,4335,4336,4337,1374,4338,4339, -1656,4340,4341,1659,1660,4342,1662,1663, 295, 295, 295, 295, 295, 295, 295, 295, +4315,4316,4317,4318,1470,4319,4319,4320,4320,1475,4321,1477,4322,1479,4323,1481, +1482,4324,1484,4325,4326,4327,4328,4328,4329,4329,4330,4330,4330,4330,4330,4330, +4330,4330,4331,4332,4332, 320,4332,4333, 342,4334,4335,4336,4337,1374,4338,4339, +4340,4340,4341,4342,4342,4342, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, }, @@ -11051,16 +11051,16 @@ const unsigned short banks[76][256] = 4462,4463,4464,4465,4466,4467,4468,4469,4470,4471,4472,4473,4474,4475,4476,4477, 4478,4479,4480,4481,4482,4483,4484,4485,4486,4487,4488,4489,4490,4491,4492,4493, 4494,4495,4496,4497,4498,4499,4500,4501,4502,4503,4504,4275,4505,4506,4507,4508, -4509,4510,4511,4512,4513,4514,4515,4516,4517,4518,4519,4520,4282,4521,4522,4523, +4509,4510,4511,4512,4513,4514,4515,4516,4517,4518,4519,4520,4521,4521,4522,4523, 4524,4525,4526,4527,4528,4529,4530,4531,4532,4533,4534,4535,4536,4537,4538,4539, -4540,4541,4542,4543,4544,4545,4546,4547,4548,4293,4294,4549,4550,4296,4551,4552, -4553,4554,4300,4555,4556,4302,4557,4558,4304,4559,4306,4560,4561,4562,4563,4564, - 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, - 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,4310,4311,4312,4313,4565, -4315,4316,4317,4566,4567,4568,4569,4570,4320,4571,4572,4573,4322,4574,4323,4575, -4576,4577,4578,4579,4326,4580,4581,4328,4582,4583,4584,4585,4586,4587,4588,4589, -4590,4330,4331,4591,4592, 320,4593,4594,4595,4334,4335,4336,4337,1374,4338,4339, -4596,4597,4341,4598,4599,4342,4600,4601, 295, 295, 295, 295, 295, 295, 295, 295, +4540,4541,4542,4543,4544,4545,4546,4547,4548,4549,4549,4549,4550,4551,4551,4552, +4553,4554,4555,4555,4556,4557,4557,4558,4304,4559,4560,4560,4561,4562,4563,4564, + 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, + 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295,4310,4311,4565,4565,4565, +4315,4316,4566,4566,4567,4568,4569,4570,4571,4571,4572,4573,4322,4574,4575,4575, +4576,4577,4578,4579,4580,4580,4581,4582,4582,4583,4584,4585,4586,4587,4588,4589, +4590,4591,4591,4591,4592, 320,4593,4594,4595,4596,4596,4336,4596,1374,4596,4596, +4596,4597,4598,4598,4599,4342,4600,4601, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, 295, }, diff --git a/utils/gen_adldata/file_formats/load_ea.h b/utils/gen_adldata/file_formats/load_ea.h index da7d0cc..7d15883 100644 --- a/utils/gen_adldata/file_formats/load_ea.h +++ b/utils/gen_adldata/file_formats/load_ea.h @@ -90,7 +90,7 @@ bool BankFormats::LoadEA(BanksDump &db, const char *fn, unsigned bank, tmp.data[6] = 0; // reg 0xE0: modulator, never seems to be set tmp.data[7] = 0; // reg 0xE0: carrier, never seems to be set - ins tmp2{}; + ins tmp2; tmp2.notenum = 0; tmp2.pseudo4op = false; tmp2.real4op = false; diff --git a/utils/gen_adldata/measurer.cpp b/utils/gen_adldata/measurer.cpp index fbae571..2deebc9 100644 --- a/utils/gen_adldata/measurer.cpp +++ b/utils/gen_adldata/measurer.cpp @@ -810,14 +810,29 @@ void MeasureThreaded::LoadCache(const char *fileName) if(std::fread(&inval, 1, sizeof(uint64_t), in) != sizeof(uint64_t)) break; inst.insno2 = inval; + if(std::fread(&inst.instCache1.data, 1, 11, in) != 11) + break; + if(std::fread(&inst.instCache1.finetune, 1, 1, in) != 1) + break; + if(std::fread(&inst.instCache1.diff, 1, sizeof(bool), in) != sizeof(bool)) + break; + if(std::fread(&inst.instCache2.data, 1, 11, in) != 11) + break; + if(std::fread(&inst.instCache2.finetune, 1, 1, in) != 1) + break; + if(std::fread(&inst.instCache2.diff, 1, sizeof(bool), in) != sizeof(bool)) + break; + if(std::fread(&inst.notenum, 1, 1, in) != 1) break; if(std::fread(&inst.real4op, 1, 1, in) != 1) break; if(std::fread(&inst.pseudo4op, 1, 1, in) != 1) break; - if(std::fread(&inst.voice2_fine_tune, sizeof(double), 1, in) != 1) + int64_t voice2detune = 0; + if(std::fread(&voice2detune, sizeof(int64_t), 1, in) != 1) break; + inst.voice2_fine_tune = static_cast(voice2detune) / 1000000.0; //Instrument data if(fread(found_f, 1, 2 * sizeof(bool), in) != sizeof(bool) * 2) @@ -896,18 +911,6 @@ void MeasureThreaded::LoadCache(const char *fileName) } //Duration data - if(std::fread(&info.peak_amplitude_time, 1, sizeof(uint64_t), in) != sizeof(uint64_t)) - break; - if(std::fread(&info.peak_amplitude_value, 1, sizeof(double), in) != sizeof(double)) - break; - if(std::fread(&info.quarter_amplitude_time, 1, sizeof(double), in) != sizeof(double)) - break; - if(std::fread(&info.begin_amplitude, 1, sizeof(double), in) != sizeof(double)) - break; - if(std::fread(&info.interval, 1, sizeof(double), in) != sizeof(double)) - break; - if(std::fread(&info.keyoff_out_time, 1, sizeof(double), in) != sizeof(double)) - break; if(std::fread(&info.ms_sound_kon, 1, sizeof(int64_t), in) != sizeof(int64_t)) break; if(std::fread(&info.ms_sound_koff, 1, sizeof(int64_t), in) != sizeof(int64_t)) @@ -941,10 +944,17 @@ void MeasureThreaded::SaveCache(const char *fileName) fwrite(&outval, 1, sizeof(uint64_t), out); outval = in.insno2; fwrite(&outval, 1, sizeof(uint64_t), out); + fwrite(&in.instCache1.data, 1, 11, out); + fwrite(&in.instCache1.finetune, 1, 1, out); + fwrite(&in.instCache1.diff, 1, sizeof(bool), out); + fwrite(&in.instCache2.data, 1, 11, out); + fwrite(&in.instCache2.finetune, 1, 1, out); + fwrite(&in.instCache2.diff, 1, sizeof(bool), out); fwrite(&in.notenum, 1, 1, out); fwrite(&in.real4op, 1, 1, out); fwrite(&in.pseudo4op, 1, 1, out); - fwrite(&in.voice2_fine_tune, sizeof(double), 1, out); + int64_t voice2detune = static_cast(in.voice2_fine_tune * 1000000.0); + fwrite(&voice2detune, sizeof(int64_t), 1, out); for(InstrumentDataTab::const_iterator j = insdatatab.begin(); j != insdatatab.end(); ++j) { @@ -970,12 +980,6 @@ void MeasureThreaded::SaveCache(const char *fileName) fwrite(&id[i].diff, 1, sizeof(bool), out); } - fwrite(&it->second.peak_amplitude_time, 1, sizeof(uint64_t), out); - fwrite(&it->second.peak_amplitude_value, 1, sizeof(double), out); - fwrite(&it->second.quarter_amplitude_time, 1, sizeof(double), out); - fwrite(&it->second.begin_amplitude, 1, sizeof(double), out); - fwrite(&it->second.interval, 1, sizeof(double), out); - fwrite(&it->second.keyoff_out_time, 1, sizeof(double), out); fwrite(&it->second.ms_sound_kon, 1, sizeof(int64_t), out); fwrite(&it->second.ms_sound_koff, 1, sizeof(int64_t), out); fwrite(&it->second.nosound, 1, sizeof(bool), out); @@ -1026,7 +1030,7 @@ void MeasureThreaded::LoadCacheX(const char *fileName) return; } - itemsCount = static_cast(toSint32LE(itemsCountA)); + itemsCount = static_cast(toUint32LE(itemsCountA)); while(!std::feof(in) && itemsCount > 0) { @@ -1240,8 +1244,12 @@ void MeasureThreaded::destData::callback(void *myself) static_cast(s->bd_ins->percussionKeyNumber), static_cast(s->bd_ins->instFlags), static_cast(s->bd_ins->secondVoiceDetune)}; + s->myself->m_durationInfo_mx.lock(); DurationInfoCacheX::iterator cachedEntry = s->myself->m_durationInfoX.find(ok); - if(cachedEntry != s->myself->m_durationInfoX.end()) + bool atEnd = cachedEntry == s->myself->m_durationInfoX.end(); + s->myself->m_durationInfo_mx.unlock(); + + if(!atEnd) { const DurationInfo &di = cachedEntry->second; s->bd_ins->delay_on_ms = di.ms_sound_kon; @@ -1258,17 +1266,21 @@ void MeasureThreaded::destData::callback(void *myself) } else { - DurationInfoCache::iterator cachedEntry = s->myself->m_durationInfo.find(s->i->first); + const ins &ok = s->i->first; + s->myself->m_durationInfo_mx.lock(); + DurationInfoCache::iterator cachedEntry = s->myself->m_durationInfo.find(ok); + bool atEnd = cachedEntry == s->myself->m_durationInfo.end(); + s->myself->m_durationInfo_mx.unlock(); - if(cachedEntry != s->myself->m_durationInfo.end()) + if(!atEnd) { s->myself->m_cache_matches++; goto endWork; } - info = MeasureDurations(s->i->first, &dosbox); + info = MeasureDurations(ok, &dosbox); s->myself->m_durationInfo_mx.lock(); - s->myself->m_durationInfo.insert({s->i->first, info}); + s->myself->m_durationInfo.insert({ok, info}); s->myself->m_durationInfo_mx.unlock(); } diff --git a/utils/gen_adldata/progs_cache.cpp b/utils/gen_adldata/progs_cache.cpp index 9de0759..2225f74 100644 --- a/utils/gen_adldata/progs_cache.cpp +++ b/utils/gen_adldata/progs_cache.cpp @@ -66,10 +66,14 @@ size_t InsertIns( } in.insno1 = insno; + in.instCache1 = id; } if(oneVoice || (id == id2)) + { in.insno2 = in.insno1; + in.instCache2 = in.instCache1; + } else { InstrumentDataTab::iterator i = insdatatab.lower_bound(id2); @@ -92,6 +96,7 @@ size_t InsertIns( insno2 = i->second.first; } in.insno2 = insno2; + in.instCache2 = id2; } { @@ -123,13 +128,18 @@ size_t InsertNoSoundIns() { // { 0x0F70700,0x0F70710, 0xFF,0xFF, 0x0,+0 }, insdata tmp1 = MakeNoSoundIns(); - struct ins tmp2 = { 0, 0, 0, false, false, 0u, 0.0, 0}; + struct ins tmp2; return InsertIns(tmp1, tmp1, tmp2, "nosound", ""); } insdata MakeNoSoundIns() { - return { {0x00, 0x10, 0x07, 0x07, 0xF7, 0xF7, 0x00, 0x00, 0xFF, 0xFF, 0x00}, 0, false}; + insdata nosnd; + uint8_t d[] = {0x00, 0x10, 0x07, 0x07, 0xF7, 0xF7, 0x00, 0x00, 0xFF, 0xFF, 0x00}; + std::memcpy(nosnd.data, d, 11); + nosnd.finetune = 0; + nosnd.diff = false; + return nosnd; } diff --git a/utils/gen_adldata/progs_cache.h b/utils/gen_adldata/progs_cache.h index 239187b..0f25a5d 100644 --- a/utils/gen_adldata/progs_cache.h +++ b/utils/gen_adldata/progs_cache.h @@ -22,6 +22,18 @@ struct insdata uint8_t data[11]; int8_t finetune; bool diff; + explicit insdata() + { + std::memset(data, 0, 11); + finetune = 0; + diff = false; + } + insdata(const insdata &b) + { + std::memcpy(data, b.data, 11); + finetune = b.finetune; + diff = b.diff; + } bool operator==(const insdata &b) const { return (std::memcmp(data, b.data, 11) == 0) && (finetune == b.finetune) && (diff == b.diff); @@ -46,9 +58,9 @@ struct insdata inline bool equal_approx(double const a, double const b) { - double const epsilon(std::numeric_limits::epsilon() * 100); - double const scale(1.0); - return std::fabs(a - b) < epsilon * (scale + (std::max)(std::fabs(a), std::fabs(b))); + int_fast64_t ai = static_cast(a * 1000000.0); + int_fast64_t bi = static_cast(b * 1000000.0); + return ai == bi; } struct ins @@ -59,18 +71,44 @@ struct ins Flag_RM_Cymbal = 0x20, Flag_RM_HiHat = 0x28, Mask_RhythmMode = 0x38 }; size_t insno1, insno2; + insdata instCache1, instCache2; unsigned char notenum; bool pseudo4op; bool real4op; uint32_t rhythmModeDrum; double voice2_fine_tune; int8_t midi_velocity_offset; + explicit ins() : + insno1(0), + insno2(0), + notenum(0), + pseudo4op(false), + real4op(false), + rhythmModeDrum(false), + voice2_fine_tune(0.0), + midi_velocity_offset(0) + {} + + ins(const ins &o) : + insno1(o.insno1), + insno2(o.insno2), + instCache1(o.instCache1), + instCache2(o.instCache2), + notenum(o.notenum), + pseudo4op(o.pseudo4op), + real4op(o.real4op), + rhythmModeDrum(o.rhythmModeDrum), + voice2_fine_tune(o.voice2_fine_tune), + midi_velocity_offset(o.midi_velocity_offset) + {} bool operator==(const ins &b) const { return notenum == b.notenum && insno1 == b.insno1 && insno2 == b.insno2 + && instCache1 == b.instCache2 + && instCache2 == b.instCache2 && pseudo4op == b.pseudo4op && real4op == b.real4op && rhythmModeDrum == b.rhythmModeDrum @@ -81,6 +119,8 @@ struct ins { if(insno1 != b.insno1) return insno1 < b.insno1; if(insno2 != b.insno2) return insno2 < b.insno2; + if(instCache1 != b.instCache1) return instCache1 < b.instCache1; + if(instCache2 != b.instCache2) return instCache2 < b.instCache2; if(notenum != b.notenum) return notenum < b.notenum; if(pseudo4op != b.pseudo4op) return pseudo4op < b.pseudo4op; if(real4op != b.real4op) return real4op < b.real4op; -- cgit v1.2.3