diff options
author | Kostya Shishkov <kostya.shishkov@gmail.com> | 2011-08-16 09:10:57 +0200 |
---|---|---|
committer | Anton Khirnov <anton@khirnov.net> | 2011-08-17 15:00:42 +0200 |
commit | a43b1e74e2abaac6e63eb001474855bd44335988 (patch) | |
tree | c3d659074d4ae9fe68fca1110b84cccb19dc2ee0 | |
parent | 48ce8b8da714558c8738610d5512b6c3c95c901a (diff) | |
download | ffmpeg-a43b1e74e2abaac6e63eb001474855bd44335988.tar.gz |
rmdec: parse FPS in RealMedia properly
Signed-off-by: Anton Khirnov <anton@khirnov.net>
-rw-r--r-- | libavformat/rmdec.c | 16 | ||||
-rw-r--r-- | tests/ref/fate/real-rv40 | 355 | ||||
-rw-r--r-- | tests/ref/fate/rv30 | 152 |
3 files changed, 352 insertions, 171 deletions
diff --git a/libavformat/rmdec.c b/libavformat/rmdec.c index cf5c46a095..7cf5720fe0 100644 --- a/libavformat/rmdec.c +++ b/libavformat/rmdec.c @@ -293,21 +293,21 @@ ff_rm_read_mdpr_codecdata (AVFormatContext *s, AVIOContext *pb, // av_log(s, AV_LOG_DEBUG, "%X %X\n", st->codec->codec_tag, MKTAG('R', 'V', '2', '0')); if (st->codec->codec_id == CODEC_ID_NONE) goto fail1; - st->codec->width = avio_rb16(pb); + st->codec->width = avio_rb16(pb); st->codec->height = avio_rb16(pb); - st->codec->time_base.num= 1; - fps= avio_rb16(pb); + avio_skip(pb, 2); // looks like bits per sample + avio_skip(pb, 4); // always zero? st->codec->codec_type = AVMEDIA_TYPE_VIDEO; st->need_parsing = AVSTREAM_PARSE_TIMESTAMPS; - avio_rb32(pb); - avio_skip(pb, 2); - avio_rb16(pb); + fps = avio_rb32(pb); if ((ret = rm_read_extradata(pb, st->codec, codec_data_size - (avio_tell(pb) - codec_pos))) < 0) return ret; -// av_log(s, AV_LOG_DEBUG, "fps= %d fps2= %d\n", fps, fps2); - st->codec->time_base.den = fps * st->codec->time_base.num; + av_reduce(&st->codec->time_base.num, &st->codec->time_base.den, + 0x10000, fps, (1 << 30) - 1); + st->avg_frame_rate.num = st->codec->time_base.den; + st->avg_frame_rate.den = st->codec->time_base.num; } skip: diff --git a/tests/ref/fate/real-rv40 b/tests/ref/fate/real-rv40 index 22cc731c89..127cba2b4f 100644 --- a/tests/ref/fate/real-rv40 +++ b/tests/ref/fate/real-rv40 @@ -1,120 +1,237 @@ 0, 0, 276480, 0x5f7a0d4f -0, 7500, 276480, 0x5f7a0d4f -0, 15000, 276480, 0x5f7a0d4f -0, 22500, 276480, 0x5f7a0d4f -0, 30000, 276480, 0x5f7a0d4f -0, 37500, 276480, 0x5f7a0d4f -0, 45000, 276480, 0x5f7a0d4f -0, 52500, 276480, 0x5f7a0d4f -0, 60000, 276480, 0x5f7a0d4f -0, 67500, 276480, 0x5f7a0d4f -0, 75000, 276480, 0x5f7a0d4f -0, 82500, 276480, 0x5f7a0d4f -0, 90000, 276480, 0x5f7a0d4f -0, 97500, 276480, 0x5f7a0d4f -0, 105000, 276480, 0x5f7a0d4f -0, 112500, 276480, 0x5f7a0d4f -0, 120000, 276480, 0x5f7a0d4f -0, 127500, 276480, 0x5f7a0d4f -0, 135000, 276480, 0x32ee3526 -0, 142500, 276480, 0x7ca9658e -0, 150000, 276480, 0x4ec1e418 -0, 157500, 276480, 0xa9f1506f -0, 165000, 276480, 0x377c7b46 -0, 172500, 276480, 0xe1de7f0a -0, 180000, 276480, 0xcb379547 -0, 187500, 276480, 0x8e12331c -0, 195000, 276480, 0xe479ffed -0, 202500, 276480, 0xac7672dd -0, 210000, 276480, 0x776412ef -0, 217500, 276480, 0x1cd1ab29 -0, 225000, 276480, 0x5ab69b27 -0, 232500, 276480, 0x9eca3f11 -0, 240000, 276480, 0xc9c57884 -0, 247500, 276480, 0xdc07f3c9 -0, 255000, 276480, 0x27ff7a5d -0, 262500, 276480, 0x18d4b27d -0, 270000, 276480, 0x97612c4b -0, 277500, 276480, 0x4ec4d57f -0, 285000, 276480, 0xbd98f57c -0, 292500, 276480, 0xa5d670ec -0, 300000, 276480, 0x99170e64 -0, 307500, 276480, 0x7a4f2561 -0, 315000, 276480, 0x6a45425f -0, 322500, 276480, 0xd75482c6 -0, 330000, 276480, 0x6de1e34b -0, 337500, 276480, 0xf964e18e -0, 345000, 276480, 0xd1e98808 -0, 352500, 276480, 0x0cf65540 -0, 360000, 276480, 0x22c50a3d -0, 367500, 276480, 0xf4b1c461 -0, 375000, 276480, 0x51e9b3eb -0, 382500, 276480, 0x6dd14ca6 -0, 390000, 276480, 0xfb01efc6 -0, 397500, 276480, 0x5ac8e06f -0, 405000, 276480, 0xe04ac45e -0, 412500, 276480, 0xf688a3ed -0, 420000, 276480, 0xf0b3b71b -0, 427500, 276480, 0x01840548 -0, 435000, 276480, 0x41dda2d9 -0, 442500, 276480, 0x9b209f41 -0, 450000, 276480, 0x28b54815 -0, 457500, 276480, 0x34484aff -0, 465000, 276480, 0x8facba58 -0, 472500, 276480, 0x02162c7c -0, 480000, 276480, 0x1ad43fd7 -0, 487500, 276480, 0x2b8a89c5 -0, 495000, 276480, 0x35626022 -0, 502500, 276480, 0xce5af1ec -0, 510000, 276480, 0x7fd73a99 -0, 517500, 276480, 0xcb60725a -0, 525000, 276480, 0xd6f82cae -0, 532500, 276480, 0xfa88a483 -0, 540000, 276480, 0x04a8e3ee -0, 547500, 276480, 0x0b41f0d7 -0, 555000, 276480, 0x754ceaf5 -0, 562500, 276480, 0xde084059 -0, 570000, 276480, 0xfcebc261 -0, 577500, 276480, 0x046394ae -0, 585000, 276480, 0x94a03c75 -0, 592500, 276480, 0x6a841f41 -0, 600000, 276480, 0x923b9937 -0, 607500, 276480, 0xee82d657 -0, 615000, 276480, 0x6b9fbc80 -0, 622500, 276480, 0x6d4b49d7 -0, 630000, 276480, 0x225a56c0 -0, 637500, 276480, 0xff4e1a8c -0, 645000, 276480, 0xbaffcdcc -0, 652500, 276480, 0x3d861ae6 -0, 660000, 276480, 0xdb753d35 -0, 667500, 276480, 0xb24c8016 -0, 675000, 276480, 0x2aae902a -0, 682500, 276480, 0x5c6e97a9 -0, 690000, 276480, 0xaa12b6fd -0, 697500, 276480, 0xbf09053c -0, 705000, 276480, 0xdd9fb89f -0, 712500, 276480, 0x0b752d28 -0, 720000, 276480, 0x7ce5f23c -0, 727500, 276480, 0x55dadd30 -0, 735000, 276480, 0xe45a5599 -0, 742500, 276480, 0x2f447fd3 -0, 750000, 276480, 0x9d7430a1 -0, 757500, 276480, 0x51cb657c -0, 765000, 276480, 0x4a4f76cd -0, 772500, 276480, 0x87160f99 -0, 780000, 276480, 0x694d76e3 -0, 787500, 276480, 0x50742e1b -0, 795000, 276480, 0x819898f9 -0, 802500, 276480, 0x35c46927 -0, 810000, 276480, 0xb6f99ee3 -0, 817500, 276480, 0xde97d9fd -0, 825000, 276480, 0xbb22e024 -0, 832500, 276480, 0xbe1fbb19 -0, 840000, 276480, 0x826fc3bd -0, 847500, 276480, 0x5497097b -0, 855000, 276480, 0x976c9e93 -0, 862500, 276480, 0xdc2d7c6c -0, 870000, 276480, 0xf002c5ca -0, 877500, 276480, 0xf62d8581 -0, 885000, 276480, 0x1700efbb -0, 892500, 276480, 0x8f316c66 +0, 3754, 276480, 0x5f7a0d4f +0, 7507, 276480, 0x5f7a0d4f +0, 11261, 276480, 0x5f7a0d4f +0, 15015, 276480, 0x5f7a0d4f +0, 18769, 276480, 0x5f7a0d4f +0, 22522, 276480, 0x5f7a0d4f +0, 26276, 276480, 0x5f7a0d4f +0, 30030, 276480, 0x5f7a0d4f +0, 33784, 276480, 0x5f7a0d4f +0, 37537, 276480, 0x5f7a0d4f +0, 41291, 276480, 0x5f7a0d4f +0, 45045, 276480, 0x5f7a0d4f +0, 48799, 276480, 0x5f7a0d4f +0, 52552, 276480, 0x5f7a0d4f +0, 56306, 276480, 0x5f7a0d4f +0, 60060, 276480, 0x5f7a0d4f +0, 63814, 276480, 0x5f7a0d4f +0, 67567, 276480, 0x5f7a0d4f +0, 71321, 276480, 0x5f7a0d4f +0, 75075, 276480, 0x5f7a0d4f +0, 78829, 276480, 0x5f7a0d4f +0, 82582, 276480, 0x5f7a0d4f +0, 86336, 276480, 0x5f7a0d4f +0, 90090, 276480, 0x5f7a0d4f +0, 93844, 276480, 0x5f7a0d4f +0, 97597, 276480, 0x5f7a0d4f +0, 101351, 276480, 0x5f7a0d4f +0, 105105, 276480, 0x5f7a0d4f +0, 108859, 276480, 0x5f7a0d4f +0, 112612, 276480, 0x5f7a0d4f +0, 116366, 276480, 0x5f7a0d4f +0, 120120, 276480, 0x5f7a0d4f +0, 123874, 276480, 0x75641594 +0, 127627, 276480, 0x32ee3526 +0, 131381, 276480, 0xcb53479a +0, 135135, 276480, 0x7ca9658e +0, 138889, 276480, 0x5ce39368 +0, 142642, 276480, 0x4ec1e418 +0, 146396, 276480, 0xb3790499 +0, 150150, 276480, 0xa9f1506f +0, 153904, 276480, 0x85cbc3b5 +0, 157657, 276480, 0x377c7b46 +0, 161411, 276480, 0x1a61d8db +0, 165165, 276480, 0xe1de7f0a +0, 168919, 276480, 0x756a4a2e +0, 172672, 276480, 0xcb379547 +0, 176426, 276480, 0xbae14484 +0, 180180, 276480, 0x8e12331c +0, 183934, 276480, 0x99c085be +0, 187687, 276480, 0xe479ffed +0, 191441, 276480, 0x99c82949 +0, 195195, 276480, 0xac7672dd +0, 198949, 276480, 0x1e4fae19 +0, 202702, 276480, 0x776412ef +0, 206456, 276480, 0x7d9b579f +0, 210210, 276480, 0x1cd1ab29 +0, 213964, 276480, 0x58ce0f38 +0, 217717, 276480, 0x5ab69b27 +0, 221471, 276480, 0x0afad610 +0, 225225, 276480, 0x9eca3f11 +0, 228979, 276480, 0xc3db9706 +0, 232732, 276480, 0xc9c57884 +0, 236486, 276480, 0xd9fbb2cf +0, 240240, 276480, 0xdc07f3c9 +0, 243994, 276480, 0x000b5269 +0, 247747, 276480, 0x27ff7a5d +0, 251501, 276480, 0xd92e2017 +0, 255255, 276480, 0x18d4b27d +0, 259009, 276480, 0x70647530 +0, 262762, 276480, 0x97612c4b +0, 266516, 276480, 0xc9d4ac78 +0, 270270, 276480, 0x4ec4d57f +0, 274024, 276480, 0xdf4e04d7 +0, 277777, 276480, 0xbd98f57c +0, 281531, 276480, 0x7247ea3e +0, 285285, 276480, 0xa5d670ec +0, 289039, 276480, 0x5163b29b +0, 292792, 276480, 0x99170e64 +0, 296546, 276480, 0x37f4c0b0 +0, 300300, 276480, 0x7a4f2561 +0, 304053, 276480, 0x8a4e991f +0, 307807, 276480, 0x6a45425f +0, 311561, 276480, 0x1f0e2bb6 +0, 315315, 276480, 0xd75482c6 +0, 319068, 276480, 0x7bf6b1ef +0, 322822, 276480, 0x6de1e34b +0, 326576, 276480, 0x4526c89b +0, 330330, 276480, 0xf964e18e +0, 334083, 276480, 0xdcaaa99a +0, 337837, 276480, 0xd1e98808 +0, 341591, 276480, 0x556b2365 +0, 345345, 276480, 0x0cf65540 +0, 349098, 276480, 0x6e2d524e +0, 352852, 276480, 0x22c50a3d +0, 356606, 276480, 0x293f19af +0, 360360, 276480, 0xf4b1c461 +0, 364113, 276480, 0x62b76407 +0, 367867, 276480, 0x51e9b3eb +0, 371621, 276480, 0x7b910bc7 +0, 375375, 276480, 0x6dd14ca6 +0, 379128, 276480, 0x441f7afd +0, 382882, 276480, 0xfb01efc6 +0, 386636, 276480, 0x4f73ccea +0, 390390, 276480, 0x5ac8e06f +0, 394143, 276480, 0x294bb441 +0, 397897, 276480, 0xe04ac45e +0, 401651, 276480, 0xa7a38d41 +0, 405405, 276480, 0xf688a3ed +0, 409158, 276480, 0x58f275ea +0, 412912, 276480, 0xf0b3b71b +0, 416666, 276480, 0x3ce773bf +0, 420420, 276480, 0x01840548 +0, 424173, 276480, 0x674e34e4 +0, 427927, 276480, 0x41dda2d9 +0, 431681, 276480, 0xc5b60838 +0, 435435, 276480, 0x9b209f41 +0, 439188, 276480, 0xf46ba7fb +0, 442942, 276480, 0x28b54815 +0, 446696, 276480, 0xb605a933 +0, 450450, 276480, 0x34484aff +0, 454203, 276480, 0xaf2b5d89 +0, 457957, 276480, 0x8facba58 +0, 461711, 276480, 0xbbe3e99f +0, 465465, 276480, 0x02162c7c +0, 469218, 276480, 0x28a63236 +0, 472972, 276480, 0x1ad43fd7 +0, 476726, 276480, 0xe37883e5 +0, 480480, 276480, 0x2b8a89c5 +0, 484233, 276480, 0x71507bd2 +0, 487987, 276480, 0x35626022 +0, 491741, 276480, 0x461fc3e7 +0, 495495, 276480, 0xce5af1ec +0, 499248, 276480, 0x7c1139b3 +0, 503002, 276480, 0x7fd73a99 +0, 506756, 276480, 0x4ae4c3a6 +0, 510510, 276480, 0xcb60725a +0, 514263, 276480, 0xb52e1aa2 +0, 518017, 276480, 0xd6f82cae +0, 521771, 276480, 0x6310e665 +0, 525525, 276480, 0xfa88a483 +0, 529278, 276480, 0xf88f75d4 +0, 533032, 276480, 0x04a8e3ee +0, 536786, 276480, 0x54766a12 +0, 540540, 276480, 0x0b41f0d7 +0, 544293, 276480, 0xa29f5b01 +0, 548047, 276480, 0x754ceaf5 +0, 551801, 276480, 0x150c0423 +0, 555555, 276480, 0xde084059 +0, 559308, 276480, 0x5a38b4af +0, 563062, 276480, 0xfcebc261 +0, 566816, 276480, 0x0eb9770d +0, 570570, 276480, 0x046394ae +0, 574323, 276480, 0x3d3ca985 +0, 578077, 276480, 0x94a03c75 +0, 581831, 276480, 0x800eea2d +0, 585585, 276480, 0x6a841f41 +0, 589338, 276480, 0x2f98911c +0, 593092, 276480, 0x923b9937 +0, 596846, 276480, 0xe82f8e0f +0, 600600, 276480, 0xee82d657 +0, 604353, 276480, 0xefab7ffd +0, 608107, 276480, 0x6b9fbc80 +0, 611861, 276480, 0x4a1ada47 +0, 615614, 276480, 0x6d4b49d7 +0, 619368, 276480, 0xe4bdbd1e +0, 623122, 276480, 0x225a56c0 +0, 626876, 276480, 0xd4adadad +0, 630629, 276480, 0xff4e1a8c +0, 634383, 276480, 0xf58b1b7c +0, 638137, 276480, 0xbaffcdcc +0, 641891, 276480, 0x374f88f0 +0, 645644, 276480, 0x3d861ae6 +0, 649398, 276480, 0xeb6eb88f +0, 653152, 276480, 0xdb753d35 +0, 656906, 276480, 0x9aa543af +0, 660659, 276480, 0xb24c8016 +0, 664413, 276480, 0xea80a82e +0, 668167, 276480, 0x2aae902a +0, 671921, 276480, 0x5bba3cfb +0, 675674, 276480, 0x5c6e97a9 +0, 679428, 276480, 0x9b9ee961 +0, 683182, 276480, 0xaa12b6fd +0, 686936, 276480, 0xe9d2439f +0, 690689, 276480, 0xbf09053c +0, 694443, 276480, 0x50c31e73 +0, 698197, 276480, 0xdd9fb89f +0, 701951, 276480, 0x3e4e5aec +0, 705704, 276480, 0x0b752d28 +0, 709458, 276480, 0xaf82399a +0, 713212, 276480, 0x7ce5f23c +0, 716966, 276480, 0xad135d0f +0, 720719, 276480, 0x55dadd30 +0, 724473, 276480, 0x5aaa7519 +0, 728227, 276480, 0xe45a5599 +0, 731981, 276480, 0xc8e89913 +0, 735734, 276480, 0x2f447fd3 +0, 739488, 276480, 0x704411fb +0, 743242, 276480, 0x9d7430a1 +0, 746996, 276480, 0x24dd5fd3 +0, 750749, 276480, 0x51cb657c +0, 754503, 276480, 0x2c230702 +0, 758257, 276480, 0x4a4f76cd +0, 762011, 276480, 0xdcd71e88 +0, 765764, 276480, 0x87160f99 +0, 769518, 276480, 0x27f54854 +0, 773272, 276480, 0x694d76e3 +0, 777026, 276480, 0xcbe93c19 +0, 780779, 276480, 0x50742e1b +0, 784533, 276480, 0x525463e2 +0, 788287, 276480, 0x819898f9 +0, 792041, 276480, 0x08fac755 +0, 795794, 276480, 0x35c46927 +0, 799548, 276480, 0xeeed00fc +0, 803302, 276480, 0xb6f99ee3 +0, 807056, 276480, 0xd87f4c73 +0, 810809, 276480, 0xde97d9fd +0, 814563, 276480, 0xefc83107 +0, 818317, 276480, 0xbb22e024 +0, 822071, 276480, 0x53a7cfcb +0, 825824, 276480, 0xbe1fbb19 +0, 829578, 276480, 0x300f922a +0, 833332, 276480, 0x826fc3bd +0, 837086, 276480, 0x679aa57a +0, 840839, 276480, 0x5497097b +0, 844593, 276480, 0x679a53f8 +0, 848347, 276480, 0x976c9e93 +0, 852101, 276480, 0xe80f87f2 +0, 855854, 276480, 0xdc2d7c6c +0, 859608, 276480, 0xb194656e +0, 863362, 276480, 0xf002c5ca +0, 867116, 276480, 0x43fc1c64 +0, 870869, 276480, 0xf62d8581 +0, 874623, 276480, 0xb243dda5 +0, 878377, 276480, 0x1700efbb +0, 882131, 276480, 0x9ebe6ba2 +0, 885884, 276480, 0x8f316c66 diff --git a/tests/ref/fate/rv30 b/tests/ref/fate/rv30 index 8777367c8e..a3c5dcfbbf 100644 --- a/tests/ref/fate/rv30 +++ b/tests/ref/fate/rv30 @@ -1,45 +1,109 @@ 0, 0, 126720, 0xcefaec47 -0, 7500, 126720, 0xa416ece5 -0, 15000, 126720, 0xa416ece5 -0, 22500, 126720, 0x259af497 -0, 30000, 126720, 0x763ab817 -0, 37500, 126720, 0xda71b917 -0, 45000, 126720, 0xbb1abbb7 -0, 52500, 126720, 0x16eebbd7 -0, 60000, 126720, 0x722e99f7 -0, 67500, 126720, 0x07beba77 -0, 75000, 126720, 0x9ca7aac7 -0, 82500, 126720, 0xd115a757 -0, 90000, 126720, 0xac6c071b -0, 97500, 126720, 0x5eee050f -0, 105000, 126720, 0x68cfda2b -0, 112500, 126720, 0x582fb176 -0, 120000, 126720, 0xcf8cb0e2 -0, 127500, 126720, 0xc6e10f9f -0, 135000, 126720, 0x85597543 -0, 142500, 126720, 0x554fe3e4 -0, 150000, 126720, 0x9bf6a605 -0, 157500, 126720, 0x93f7b040 -0, 165000, 126720, 0xe39bba0d -0, 172500, 126720, 0xa567f25b -0, 180000, 126720, 0x4f639ebe -0, 187500, 126720, 0x6cf87d39 -0, 195000, 126720, 0xfdca11d3 -0, 202500, 126720, 0x5fd753d8 -0, 210000, 126720, 0xeaf3dd0b -0, 217500, 126720, 0xce5e6794 -0, 225000, 126720, 0x14cf7974 -0, 232500, 126720, 0xa3f515ab -0, 240000, 126720, 0xbc303fae -0, 247500, 126720, 0x0a22cc69 -0, 255000, 126720, 0xf92b2a25 -0, 262500, 126720, 0x3378251f -0, 270000, 126720, 0x8da30275 -0, 277500, 126720, 0xf2942f53 -0, 285000, 126720, 0x0a24f256 -0, 292500, 126720, 0x10e939ce -0, 300000, 126720, 0xfe2e057d -0, 307500, 126720, 0x5284da7b -0, 315000, 126720, 0xc9e92bf1 -0, 322500, 126720, 0x4d888b2e -0, 330000, 126720, 0x08382b8e +0, 3003, 126720, 0xa416ece5 +0, 6006, 126720, 0xa416ece5 +0, 9009, 126720, 0xa416ece5 +0, 12012, 126720, 0x60d6ed27 +0, 15015, 126720, 0x259af497 +0, 18018, 126720, 0x5e6ff4d7 +0, 21021, 126720, 0xcc10f4b7 +0, 24024, 126720, 0x763ab817 +0, 27027, 126720, 0xeb6fb8d7 +0, 30030, 126720, 0xda71b917 +0, 33033, 126720, 0x0967b8f7 +0, 36036, 126720, 0x4b62b947 +0, 39039, 126720, 0xbb1abbb7 +0, 42042, 126720, 0x273fbc37 +0, 45045, 126720, 0x16eebbd7 +0, 48048, 126720, 0x105eb927 +0, 51051, 126720, 0x7fa3ae27 +0, 54054, 126720, 0x722e99f7 +0, 57057, 126720, 0x5ac9a827 +0, 60060, 126720, 0x07beba77 +0, 63063, 126720, 0x29d6a887 +0, 66066, 126720, 0xa5caab87 +0, 69069, 126720, 0x9ca7aac7 +0, 72072, 126720, 0xb7debcd7 +0, 75075, 126720, 0xd115a757 +0, 78078, 126720, 0x6ddaef32 +0, 81081, 126720, 0xde1bb900 +0, 84084, 126720, 0xac6c071b +0, 87087, 126720, 0x04e7897c +0, 90090, 126720, 0x5eee050f +0, 93093, 126720, 0xe675be59 +0, 96096, 126720, 0xdc3e0837 +0, 99099, 126720, 0x68cfda2b +0, 102102, 126720, 0xe572dfc9 +0, 105105, 126720, 0x582fb176 +0, 108108, 126720, 0xa9477df0 +0, 111111, 126720, 0xbc3cc34f +0, 114114, 126720, 0xcf8cb0e2 +0, 117117, 126720, 0xcff1db35 +0, 120120, 126720, 0xc6e10f9f +0, 123123, 126720, 0x75ae61b6 +0, 126126, 126720, 0x12af3119 +0, 129129, 126720, 0x85597543 +0, 132132, 126720, 0x68c27aca +0, 135135, 126720, 0x554fe3e4 +0, 138138, 126720, 0x72ecea95 +0, 141141, 126720, 0xf4d003d1 +0, 144144, 126720, 0x9bf6a605 +0, 147147, 126720, 0x5d00b5fe +0, 150150, 126720, 0x93f7b040 +0, 153153, 126720, 0x0d6ad154 +0, 156156, 126720, 0x4be8b4ea +0, 159159, 126720, 0xe39bba0d +0, 162162, 126720, 0x9c21bad8 +0, 165165, 126720, 0xa567f25b +0, 168168, 126720, 0x7a82663a +0, 171171, 126720, 0x72f2a47d +0, 174174, 126720, 0x4f639ebe +0, 177177, 126720, 0xab0fce83 +0, 180180, 126720, 0x6cf87d39 +0, 183183, 126720, 0x534a10cc +0, 186186, 126720, 0x6bbcf44c +0, 189189, 126720, 0xfdca11d3 +0, 192192, 126720, 0x7e58f5a6 +0, 195195, 126720, 0x5fd753d8 +0, 198198, 126720, 0x0c735615 +0, 201201, 126720, 0x2a034ebf +0, 204204, 126720, 0xeaf3dd0b +0, 207207, 126720, 0x0eaf0c1b +0, 210210, 126720, 0xce5e6794 +0, 213213, 126720, 0xf27c31c3 +0, 216216, 126720, 0xb64af168 +0, 219219, 126720, 0x14cf7974 +0, 222222, 126720, 0x1c2a513d +0, 225225, 126720, 0xa3f515ab +0, 228228, 126720, 0xcfd62765 +0, 231231, 126720, 0xbc513f2a +0, 234234, 126720, 0xbc303fae +0, 237237, 126720, 0x2f8f69b9 +0, 240240, 126720, 0x0a22cc69 +0, 243243, 126720, 0xd9f67585 +0, 246246, 126720, 0x20403001 +0, 249249, 126720, 0xf92b2a25 +0, 252252, 126720, 0x3c170aad +0, 255255, 126720, 0x3378251f +0, 258258, 126720, 0xb3ed5911 +0, 261261, 126720, 0x35d24ef8 +0, 264264, 126720, 0x8da30275 +0, 267267, 126720, 0xc15a3577 +0, 270270, 126720, 0xf2942f53 +0, 273273, 126720, 0x44d8304a +0, 276276, 126720, 0xd688a932 +0, 279279, 126720, 0x0a24f256 +0, 282282, 126720, 0xfab9c45d +0, 285285, 126720, 0x10e939ce +0, 288288, 126720, 0x97fcaa3a +0, 291291, 126720, 0x45464610 +0, 294294, 126720, 0xfe2e057d +0, 297297, 126720, 0x0b6718ae +0, 300300, 126720, 0x5284da7b +0, 303303, 126720, 0x23efdc35 +0, 306306, 126720, 0xc387b2b3 +0, 309309, 126720, 0xc9e92bf1 +0, 312312, 126720, 0xfbf20a01 +0, 315315, 126720, 0x4d888b2e +0, 318318, 126720, 0xdd0d74df +0, 321321, 126720, 0x49d07aa4 +0, 324324, 126720, 0x08382b8e |